summaryrefslogtreecommitdiff
path: root/legacy/elementary/src/lib/elm_button.eo
blob: cd094091838a487b19d4c1c6a30c5115cade3fe0 (plain) (blame)
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
class Elm.Button (Elm.Layout, Evas.Clickable_Interface,
                  Elm_Interface_Atspi_Widget_Action)
{
   eo_prefix: elm_obj_button;
   methods {
      @property autorepeat_initial_timeout {
         set {
            /*@
            Set the initial timeout before the autorepeat event is generated

            Sets the timeout, in seconds, since the button is pressed until the
            first @c repeated signal is emitted. If @p t is 0.0 or less, there
            won't be any delay and the event will be fired the moment the button is
            pressed.

            @see elm_button_autorepeat_set()
            @see elm_button_autorepeat_gap_timeout_set()

            @ingroup Button */
         }
         get {
            /*@
            Get the initial timeout before the autorepeat event is generated

            @return Timeout in seconds

            @see elm_button_autorepeat_initial_timeout_set()

            @ingroup Button */
         }
         values {
            t: double; /*@ Timeout in seconds */
         }
      }
      @property autorepeat_gap_timeout {
         set {
            /*@
            Set the interval between each generated autorepeat event

            After the first @c repeated event is fired, all subsequent ones will
            follow after a delay of @p t seconds for each.

            @see elm_button_autorepeat_initial_timeout_set()

            @ingroup Button */
         }
         get {
            /*@
            Get the interval between each generated autorepeat event

            @return Interval in seconds

            @ingroup Button */
         }
         values {
            t: double; /*@ Interval in seconds */
         }
      }
      @property autorepeat {
         set {
            /*@
            Turn on/off the autorepeat event generated when the button is kept pressed

            When off, no autorepeat is performed and buttons emit a normal @c clicked
            signal when they are clicked.

            When on, keeping a button pressed will continuously emit a @c repeated
            signal until the button is released. The time it takes until it starts
            emitting the signal is given by
            elm_button_autorepeat_initial_timeout_set(), and the time between each
            new emission by elm_button_autorepeat_gap_timeout_set().

            @ingroup Button */
         }
         get {
            /*@
            Get whether the autorepeat feature is enabled

            @return @c EINA_TRUE if autorepeat is on, @c EINA_FALSE otherwise

            @see elm_button_autorepeat_set()

            @ingroup Button */
         }
         values {
            on: bool; /*@ A bool to turn on/off the event */
         }
      }
      @property admits_autorepeat {
         get {
            /*@ Get whether the button supports autorepeat. */
            legacy: null;
         }
         values {
            ret: bool;
         }
      }
   }
   implements {
      class.constructor;
      Eo.Base.constructor;
      Evas.Object_Smart.add;
      Elm.Widget.activate;
      Elm.Widget.focus_next_manager_is;
      Elm.Widget.focus_direction_manager_is;
      Elm.Widget.theme_apply;
      Elm.Widget.sub_object_del;
      Elm.Widget.event;
      Elm.Container.content_set;
      Elm.Layout.text_aliases.get;
      Elm.Layout.content_aliases.get;
      Elm.Layout.sizing_eval;
      Elm_Interface_Atspi_Widget_Action.elm_actions.get;
   }
}