summaryrefslogtreecommitdiff
path: root/src/lib/elm_button.eo
blob: 1b40c2d1e41172ba4e599b84ad6a4e5756601b95 (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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
class Elm_Button (Elm_Layout, Evas.Clickable_Interface,
                  Elm_Interface_Atspi_Widget_Action)
{
   eo_prefix: elm_obj_button;
   properties {
      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 {
            double t; /*@ Timeout in seconds */
         }
      }
      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 {
            double t; /*@ Interval in seconds */
         }
      }
      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 {
            bool on; /*@ A bool to turn on/off the event */
         }
      }
      admits_autorepeat {
         get {
            /*@ No description supplied by the EAPI. */
            legacy null;
         }
         values {
            bool ret;
         }
      }
   }
   methods {
      part_text_set {
       /**
        * Set a text of an object
        *
        * @param obj The Elementary object
        * @param part The text part name to set (NULL for the default part)
        * @param text The new text of the part
        *
        * @note Elementary objects may have many text parts (e.g. Action Slider)
        *
        * @ingroup General
        */
        params {
          @in const(char)* part;
          @in const(char)* text;
        }
      }
      part_text_get {
        /**
         * Get a text of an object
         *
         * @param obj The Elementary object
         * @param part The text part name to get (NULL for the default part)
         * @return text of the part or NULL for any error
         *
         * @note Elementary objects may have many text parts (e.g. Action Slider)
         *
         * @ingroup General
         */
        params {
          @in const(char)* part;
        }
        return const(char)*;
      }
      text_set {
       /**
        * Set a text of an object
        *
        * @param obj The Elementary object
        * @param part The text part name to set (NULL for the default part)
        * @param text The new text of the part
        *
        * @note Elementary objects may have many text parts (e.g. Action Slider)
        *
        * @ingroup General
        */
        params {
          @in const(char)* text;
        }
      }
      text_get {
        /**
         * Get a text of an object
         *
         * @param obj The Elementary object
         * @param part The text part name to get (NULL for the default part)
         * @return text of the part or NULL for any error
         *
         * @note Elementary objects may have many text parts (e.g. Action Slider)
         *
         * @ingroup General
         */
        return const(char)*;
      }
   }
   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;
   }
}