summaryrefslogtreecommitdiff
path: root/src/lib/evas/canvas/efl_canvas_object_animation.eo
blob: 3a4aa87a0a1c1c26a37b88aeb2a7a1364bc22b6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
mixin @beta Efl.Canvas.Object_Animation requires Efl.Object
{
  [[A mixin that provides animation capabilities to @Efl.Canvas.Object.

    By including this mixin canvas objects can be animated just by calling @.animation_start.
  ]]
  methods {
    @property animation {
      [[The animation that is currently played on the canvas object.

        $null in case that there is no animation running.]]
      get {

      }
      values {
        animation : Efl.Canvas.Animation; [[The animation which is currently applied on this object.]]
      }
    }
    @property animation_progress {
      [[The current progress of the animation, between $[0.0] and $[1.0].

        Even if the animation is going backwards (speed < 0.0) the progress will still go from $[0.0] to $[1.0].

        If there is no animation going on, this will return $[-1.0].
      ]]
      get {

      }
      values {
        progress : double; [[Current progress of the animation.]]
      }
    }
    @property animation_pause {
      [[Pause the animation.

        @.animation will not be unset. When $pause is $false, the animation will be resumed at the same progress it
        was when it was paused.
      ]]
      values {
        pause : bool; [[Paused state.]]
      }
    }
    animation_start {
      [[Start a new animation.

        If there is an animation going on, it is stopped and the previous @.animation object is replaced.
        Its lifetime is adjusted accordingly.
      ]]
      params {
        animation : Efl.Canvas.Animation @move; [[The animation to start. When not needed anymore,
                                                  the reference that was passed is given up.]]
        speed : double; [[The speed of the playback. $[1.0] is normal playback. Negative values mean reverse playback.
                        ]]
        starting_progress : double; [[The progress point where to start. Must be between $[0.0] and $[1.0].
                                      Useful to revert an animation which has already started.
                                    ]]
      }
    }
    animation_stop {
      [[Stop the animation.

        After this call, @.animation will return $null.
        The reference that was taken during @.animation_start will be given up.
      ]]
    }
  }
  events {
      animation,changed: Efl.Canvas.Animation; [[The animation object got changed.]]
      animation_progress,updated : double; [[The animation progress got changed.]]
  }
}