summaryrefslogtreecommitdiff
path: root/src/lib/elementary/elm_general.eot
blob: bacb9f2b631286b12cfcbcda8225da1f3d452f2d (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
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
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
/* Elementary legacy-only types.
 * NOTE: Some of those types still need to be moved to Efl.Ui
 */

/* Legacy-only function pointer types, for the legacy EO classes (genlist, etc...) */
type Evas_Smart_Cb: __undefined_type; [[Evas smart callback type]]
type Eina_Compare_Cb: __undefined_type; [[Eina compare callback type]]
type @extern Elm.Glob.Match_Flags: __undefined_type; [[Elementary glob matching flags]]

/* FIXME: elm_policy API is not bound to EO */
struct Elm.Event.Policy_Changed
{
   [[Data on the event when an Elementary policy has changed]]
   policy: uint; [[the policy identifier]]
   new_value: int; [[value the policy had before the change]]
   old_value: int; [[new value the policy got]]
}

/* FIXME: elm_policy API is not bound to EO */
enum Elm.Policy
{
   [[Policy identifiers.]]
   quit, [[under which circumstances the application should quit automatically.
           See also @Elm.Policy.quit.]]
   exit, [[defines elm_exit() behaviour. See also @Elm.Policy.exit.

           @since 1.8
         ]]
   throttle, [[defines how throttling should work. See also @Elm.Policy.throttle

               @since 1.8
             ]]
   last [[Sentinel value to indicate last enum field during iteration]]
}

/* FIXME: elm_policy API is not bound to EO */
enum Elm.Policy.Quit
{
   [[Possible values for the @Elm.Policy.quit policy]]
   none = 0, [[never quit the application automatically]]
   last_window_closed, [[quit when the application's last window is closed]]
   last_window_hidden [[quit when the application's last window is hidden

                        @since 1.14]]
}

/* FIXME: elm_policy API is not bound to EO */
enum Elm.Policy.Exit
{
   [[Possible values for the @Elm.Policy.exit policy.

     @since 1.8
   ]]
   none = 0, [[just quit the main loop on elm_exit()]]
   windows_del [[delete all the windows after quitting the main loop]]
}

/* FIXME: elm_policy API is not bound to EO */
enum Elm.Policy.Throttle
{
   [[Possible values for the @Elm.Policy.throttle policy.

     @since 1.8
   ]]
   config = 0, [[do whatever elementary config is configured to do]]
   hidden_always, [[always throttle when all windows are no longer visible]]
   never [[never throttle when windows are all hidden, regardless of config
           settings]]
}

/* FIXME: Move to Efl.Ui namespace after Efl.Ui.List gets merged! */
enum Elm.Object.Select_Mode
{
   [[Possible values for the #ELM_OBJECT_SELECT_MODE policy.

     @since 1.7
   ]]
   default = 0, [[default select mode. Once an item is selected, it would stay
                  highlighted and not going to call selected callback again
                  even it was clicked. Items can get focus.]]
   always, [[always select mode. Item selected callbacks will be called every
             time for click events, even after the item was already selected.
             Items can get focus.]]
   none, [[no select mode. Items will never be highlighted and selected but
           the size will be adjusted by the finger size configuration. Items
           can't get focus.]]
   display_only, [[no select mode with no finger size rule. Items will never
                   be highlighted and selected and ignore the finger size. So
                   the item size can be reduced below than the finger size
                   configuration. Items can't get focus.]]
   max [[canary value: any value greater or equal to ELM_OBJECT_SELECT_MODE_MAX
         is forbidden.]]
}

/* FIXME: Move to Efl.Ui namespace after Efl.Ui.List gets merged! */
enum Elm.Object.Multi_Select_Mode
{
   [[Possible values for the #ELM_OBJECT_MULTI_SELECT_MODE policy.

     @since 1.8
   ]]
   default = 0, [[default multiple select mode]]
   with_control, [[disallow mutiple selection when clicked without control key
                   pressed]]
   max [[canary value: any value greater or equal to
         ELM_OBJECT_MULTI_SELECT_MODE_MAX is forbidden.]]
}

/* Legacy only: elm_entry, elm_label, elm_popup */
enum Elm.Wrap.Type
{
   [[Line wrapping types.
     Type of word or character wrapping to use.

     See also \@ref elm_entry_line_wrap_set, \@ref
     elm_popup_content_text_wrap_type_set, \@ref elm_label_line_wrap_set.
   ]]

   legacy: elm_wrap;
   none = 0, [[No wrap - value is zero.]]
   char,     [[Char wrap - wrap between characters.]]
   word,     [[Word wrap - wrap in allowed wrapping points (as defined in the unicode standard).]]
   mixed,    [[Mixed wrap - Word wrap, and if that fails, char wrap.]]
   last      [[Sentinel value to indicate last enum field during iteration]]
}

enum Elm.Icon.Type
{
   [[Elementary icon types]]
   legacy: elm_icon;
   none, [[Icon has no type set]]
   file, [[Icon is of type file]]
   standard [[Icon is of type standard]]
}

/* FIXME: shouldn't exist, they are unusable by the bindings */
struct @extern Elm_Gen_Item; [[Elementary gen item]]
struct @extern Efl_Access_Action_Data; [[Efl access action data]]
struct @extern Elm.Validate_Content; [[Data for the elm_validator_regexp_helper()]]
struct @extern Elm.Entry_Anchor_Info; [[The info sent in the callback for the "anchor,clicked" signals emitted
                                        by entries.]]
struct @extern Elm.Entry_Anchor_Hover_Info; [[The info sent in the callback for "anchor,hover" signals emitted
                                              by the Anchor_Hover widget]]
struct @extern Elm.Entry_Change_Info; [[This corresponds to Edje_Entry_Change_Info. Includes information about
                                        a change in the entry]]

/* Enums from elm_entry.eo, also used by efl_ui_text */
enum Elm.Text_Format
{
   [[Text Format types.
   ]]
   plain_utf8, [[ Plain UTF8 type ]]
   markup_utf8 [[ Markup UTF8 type ]]
}

enum Elm.Input.Panel.Layout
{
   [[Input panel (virtual keyboard) layout types.
     Type of input panel (virtual keyboard) to use - this is a hint and may not provide exactly what is desired.
   ]]
   normal,      [[Default layout.]]
   number,      [[Number layout.]]
   email,       [[Email layout.]]
   url,         [[URL layout.]]
   phonenumber, [[Phone Number layout.]]
   ip,          [[IP layout.]]
   month,       [[Month layout.]]
   numberonly,  [[Number Only layout.]]
   invalid,     [[Never use this.]]
   hex,         [[Hexadecimal layout.]]
   terminal,    [[Command-line terminal layout including esc, alt, ctrl key, so on (no auto-correct, no auto-capitalization).]]
   password,    [[Like normal, but no auto-correct, no auto-capitalization etc.]]
   datetime,    [[Date and time layout

                  @since 1.8]]
   emoticon,    [[Emoticon layout

                  @since 1.10]]
   voice        [[Voice layout, but if the IME does not support voice layout, then normal layout will be shown.

                  @since 1.19]]
}

enum Elm.Input.Panel.Lang
{
   [[Input panel (virtual keyboard) language modes.
   ]]
   automatic,    [[Automatic]]
   alphabet      [[Alphabet]]
}

enum Elm.Autocapital.Type
{
   [[Autocapitalization Types.
     Choose method of auto-capitalization.
   ]]
   none,         [[No auto-capitalization when typing.]]
   word,         [[Autocapitalize each word typed.]]
   sentence,     [[Autocapitalize the start of each sentence.]]
   allcharacter  [[Autocapitalize all letters.]]
}

enum Elm.Input.Panel.Return_Key.Type
{
   [["Return" Key types on the input panel (virtual keyboard).
   ]]
   default, [[Default.]]
   done,    [[Done.]]
   go,      [[Go.]]
   join,    [[Join.]]
   login,   [[Login.]]
   next,    [[Next.]]
   search,  [[Search string or magnifier icon.]]
   send,    [[Send.]]
   signin   [[Sign-in

              @since 1.8]]
}

enum Elm.Input.Hints
{
   [[Enumeration that defines the types of Input Hints.

     @since 1.12
   ]]
   legacy: elm_input_hint;
   none                = 0,        [[No active hints

                                     @since 1.12]]
   auto_complete       = 1 << 0,   [[Suggest word auto completion

                                     @since 1.12]]
   sensitive_data      = 1 << 1,   [[Typed text should not be stored.

                                     @since 1.12]]
   autofill_credit_card_expiration_date   = 0x100, [[ Autofill hint for a credit card expiration date

                                                      @since 1.21]]
   autofill_credit_card_expiration_day    = 0x200, [[Autofill hint for a credit card expiration day

                                                     @since 1.21]]
   autofill_credit_card_expiration_month  = 0x300, [[ Autofill hint for a credit card expiration month

                                                      @since 1.21]]
   autofill_credit_card_expiration_year   = 0x400, [[ Autofill hint for a credit card expiration year

                                                      @since 1.21]]
   autofill_credit_card_number            = 0x500, [[ Autofill hint for a credit card number

                                                      @since 1.21]]
   autofill_email_address                 = 0x600, [[ Autofill hint for an email address

                                                      @since 1.21]]
   autofill_name                          = 0x700, [[ Autofill hint for a user's real name

                                                      @since 1.21]]
   autofill_phone                         = 0x800, [[ Autofill hint for a phone number

                                                      @since 1.21]]
   autofill_postal_address                = 0x900, [[ Autofill hint for a postal address

                                                      @since 1.21]]
   autofill_postal_code                   = 0xA00, [[ Autofill hint for a postal code

                                                      @since 1.21]]
   autofill_id                            = 0xB00  [[ Autofill hint for a user's ID

                                                      @since 1.21]]
}

enum Elm.Cnp_Mode
{
   [[
     Enum of entry's copy & paste policy.
   ]]
   markup,    [[ copy & paste text with markup tag ]]
   no_image,  [[ copy & paste text without item(image) tag ]]
   plaintext, [[ copy & paste text without markup tag ]]
}

/* Elm_Genlist-related types */
type @extern Elm.Genlist.Item.Class: __undefined_type; [[External elm genlist item class]]

enum Elm.Genlist.Item.Type
{
   [[Defines if the item is of any special type (has subitems or it's the
     index of a group), or is just a simple item.
   ]]
   legacy: elm_genlist_item;
   none = 0, [[Simple item.]]
   tree = (1 << 0), [[This may be expanded and have child items.]]
   group = (1 << 1), [[An index item of a group of items. this item can have child items.]]
   max = (1 << 2) [[Sentinel value to indicate last enum field during iteration]]
}

enum Elm.Genlist.Item.Field_Type
{
   [[Defines the type of the item part
     Used while updating item's parts
     It can be used at updating multi fields.
   ]]
   legacy: elm_genlist_item_field;
   all = 0, [[Type all]]
   text = (1 << 0), [[Type text]]
   content = (1 << 1), [[Type content]]
   state = (1 << 2) [[Type state]]
}

enum Elm.Genlist.Item.Scrollto_Type
{
   [[Defines where to position the item in the genlist.]]
   legacy: elm_genlist_item_scrollto;
   none = 0,   [[Nothing will happen, Don't use this value.]]
   in = (1 << 0),   [[To the nearest viewport.]]
   top = (1 << 1),   [[To the top of viewport.]]
   middle = (1 << 2),   [[To the middle of viewport.]]
   bottom = (1 << 3)   [[To the bottom of viewport.]]
}

/* Elm_Gengrid-related types */

type @extern Elm.Gengrid.Item.Class: __undefined_type; [[External elm gengrid item class]]

enum Elm.Gengrid.Item.Scrollto_Type
{
   [[Defines where to position the item in the genlist.]]
   legacy: elm_gengrid_item_scrollto;
   none = 0,   [[No scrollto.]]
   in = (1 << 0),   [[To the nearest viewport.]]
   top = (1 << 1),   [[To the top of viewport.]]
   middle = (1 << 2),   [[To the middle of viewport.]]
   bottom = (1 << 3)   [[To the bottom of viewport.]]
}

enum Elm.Gengrid.Item.Field_Type
{
   [[Defines the type of the item part Used while updating item's parts.
     It can be used at updating multi fields.]]
   legacy: elm_gengrid_item_field;
   all = 0, [[Type all]]
   text = (1 << 0), [[Type text]]
   content = (1 << 1), [[Type content]]
   state = (1 << 2) [[Type state]]
}

/* Elm_List types */
enum Elm.List.Mode
{
   [[Set list's resizing behavior, transverse axis scrolling and items
     cropping. See each mode's description for more details.

     Note: Default value is @Elm.List.Mode.scroll.

     Values here don't work as bitmasks -- only one can be chosen at
     a time.
   ]]
   legacy: elm_list;
   compress = 0, [[The list won't set any of its size hints to inform how a
                   possible container should resize it. Then, if it's not
                   created as a "resize object", it might end with zeroed
                   dimensions. The list will respect the container's geometry
                   and, if any of its items won't fit into its transverse axis,
                   one won't be able to scroll it in that direction.]]
   scroll, [[Default value. This is the same as #ELM_LIST_COMPRESS, with the
             exception that if any of its items won't fit into its transverse
             axis, one will be able to scroll it in that direction.]]
   limit, [[Sets a minimum size hint on the list object, so that containers may
            respect it (and resize itself to fit the child properly). More
            specifically, a minimum size hint will be set for its transverse
            axis, so that the largest item in that direction fits well. This
            is naturally bound by the list object's maximum size hints, set
            externally.]]
   expand, [[Besides setting a minimum size on the transverse axis, just like
             on @Elm.List.Mode.limit, the list will set a minimum size on the
             longitudinal axis, trying to reserve space to all its children to
             be visible at a time. . This is naturally bound by the list
             object's maximum size hints, set externally.]]
   last [[Indicates error if returned by elm_list_mode_get().]]
}