2 * Copyright (C) 2009 Michael 'Mickey' Lauer <mlauer@vanille-media.de>
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or ( at your option ) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19 [CCode (cprefix = "Elm_", lower_case_cprefix = "elm_", cheader_filename = "Elementary.h")]
22 public void init( [CCode(array_length_pos = 0.9)] string[] args );
23 public void shutdown();
28 //=======================================================================
29 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
30 public abstract class Object : Evas.Object
32 public void scale_set( double scale );
33 public double scale_get();
38 //=======================================================================
39 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
40 public class Coords : Elm.Object
42 public static void finger_size_adjust( int times_w, out Evas.Coord w, int times_h, out Evas.Coord h );
46 //=======================================================================
47 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
48 public class Theme : Elm.Object
50 public static void overlay_add( string item );
51 public static void extension_add( string item );
55 //=======================================================================
56 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
57 public class Win : Elm.Object
59 [CCode (cname = "elm_win_add")]
60 public Win( Elm.Object? parent, string name, WinType t );
62 public void resize_object_add( Elm.Object subobj );
63 public void resize_object_del( Elm.Object subobj );
64 public void title_set( string title );
65 public void autodel_set( bool autodel );
66 public void activate();
67 public void borderless_set( bool borderless );
68 public void shaped_set( bool shaped );
69 public void alpha_set( bool alpha );
70 public void override_set( bool override_ );
71 public void fullscreen_set( bool fullscreen );
72 public void maximized_set( bool maximized );
73 public void iconified_set( bool iconified );
74 public void layer_set( int layer );
75 public void rotation_set( int rotation );
76 public void keyboard_mode_set( WinKeyboardMode mode );
77 public void keyboard_win_set( bool is_keyboard );
78 public void inwin_style_set( string style );
79 public void inwin_activate();
80 public void inwin_content_set( Elm.Object content );
84 //=======================================================================
85 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
86 public class Bg : Elm.Object
88 [CCode (cname = "elm_bg_add")]
89 public Bg( Elm.Object? parent );
91 public void file_set( string file, string? group=null );
95 //=======================================================================
96 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
97 public class Icon : Elm.Object
99 [CCode (cname = "elm_icon_add")]
100 public Icon( Elm.Object? parent );
102 public void file_set( string file, string? group=null );
103 public void standard_set( string name );
104 public void smooth_set( bool smooth );
105 public void no_scale_set( bool no_scale );
106 public void scale_set( bool scale_up, bool scale_down );
107 public void fill_outside_set( bool fill_outside );
111 //=======================================================================
112 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
113 public class Box : Elm.Object
115 [CCode (cname = "elm_box_add")]
116 public Box( Elm.Object? parent );
118 public void horizontal_set( bool horizontal );
119 public void homogenous_set( bool homogenous );
120 public void pack_start( Elm.Object subobj );
121 public void pack_end( Elm.Object subobj );
122 public void pack_before( Elm.Object subobj, Elm.Object before );
123 public void pack_after( Elm.Object subobj, Elm.Object after );
127 //=======================================================================
128 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
129 public class Button : Elm.Object
131 [CCode (cname = "elm_button_add")]
132 public Button( Elm.Object? parent );
134 public void label_set( string label );
135 public void icon_set( Elm.Object icon );
136 public void style_set( string style );
140 //=======================================================================
141 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
142 public class Scroller : Elm.Object
144 [CCode (cname = "elm_scroller_add")]
145 public Scroller( Elm.Object? parent );
147 public void content_set( Elm.Object child );
148 public void content_min_limit( bool w, bool h );
149 public void region_show( Evas.Coord x, Evas.Coord y, Evas.Coord w, Evas.Coord h );
153 //=======================================================================
154 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
155 public class Label : Elm.Object
157 [CCode (cname = "elm_label_add")]
158 public Label( Elm.Object? parent );
160 public void label_set( string label );
164 //=======================================================================
165 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
166 public class Toggle : Elm.Object
168 [CCode (cname = "elm_toggle_add")]
169 public Toggle( Elm.Object? parent );
171 public void label_set( string label );
172 public void icon_set( Elm.Object icon );
173 public void states_labels_set( string onlabel, string offlabel );
174 public void state_set( bool state );
175 public bool state_get();
176 public void state_pointer_set( bool* statep );
180 //=======================================================================
181 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
182 public class Frame : Elm.Object
184 [CCode (cname = "elm_frame_add")]
185 public Frame( Elm.Object? parent );
187 public void label_set( string label );
188 public void content_set( Elm.Object content );
189 public void style_set( string style );
193 //=======================================================================
194 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
195 public class Table : Elm.Object
197 [CCode (cname = "elm_table_add")]
198 public Table( Elm.Object? parent );
200 public void homogenous_set( bool homogenous );
201 public void pack( Elm.Object subobj, int x, int y, int w, int h );
205 //=======================================================================
206 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
207 public class Clock : Elm.Object
209 [CCode (cname = "elm_clock_add")]
210 public Clock( Elm.Object? parent );
212 public void time_set( int hrs, int min, int sec );
213 public void time_get( out int hrs, out int min, out int sec );
214 public void edit_set( bool edit );
215 public void show_am_pm_set( bool am_pm );
216 public void show_seconds_set( bool seconds );
220 //=======================================================================
221 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
222 public class Layout : Elm.Object
224 [CCode (cname = "elm_layout_add")]
225 public Layout( Elm.Object? parent );
227 public void file_set( string file, string group );
228 public void content_set( string swallow, Elm.Object content );
229 public Elm.Object edje_get();
233 //=======================================================================
234 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
235 public class Hover : Elm.Object
237 [CCode (cname = "elm_hover_add")]
238 public Hover( Elm.Object? parent );
240 public void target_set( Elm.Object target );
241 public void parent_set( Elm.Object parent );
242 public void content_set( string swallow, Elm.Object content );
243 public void style_set( string style );
244 public string best_content_location_get( HoverAxis pref_axis );
248 //=======================================================================
249 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
250 public class Entry : Elm.Object
252 [CCode (cname = "elm_entry_add")]
253 public Entry( Elm.Object? parent );
255 public void single_line_set( bool single_line );
256 public void password_set( bool password );
257 public void entry_set( string entry );
258 public string entry_get();
259 public string selection_get();
260 public void entry_insert( string entry );
261 public void line_wrap_set( bool wrap );
262 public void editable_set( bool editable );
263 public void select_none();
264 public void select_all();
265 public static string markup_to_utf8( string s );
266 public static string utf8_to_markup( string s );
270 //=======================================================================
271 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
272 public class Notepad : Elm.Object
274 [CCode (cname = "elm_notepad_add")]
275 public Notepad( Elm.Object? parent );
277 public void file_set( string file, TextFormat format );
281 //=======================================================================
282 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
283 public class Anchorview : Elm.Object
285 [CCode (cname = "elm_anchorview_add")]
286 public Anchorview( Elm.Object? parent );
288 public void text_set( string text );
289 public void hover_parent_set( Elm.Object parent );
290 public void hover_style_set( string style );
291 public void hover_end();
295 //=======================================================================
296 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
297 public class Anchorblock : Elm.Object
299 [CCode (cname = "elm_anchorblock_add")]
300 public Anchorblock( Elm.Object? parent );
302 public void text_set( string text );
303 public void hover_parent_set( Elm.Object parent );
304 public void hover_style_set( string style );
305 public void hover_end();
309 //=======================================================================
310 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
311 public class Bubble : Elm.Object
313 [CCode (cname = "elm_bubble_add")]
314 public Bubble( Elm.Object? parent );
316 public void label_set( string label );
317 public void info_set( string info );
318 public void content_set( Elm.Object content );
319 public void icon_set( Elm.Object icon );
320 public void corner_set( string corner );
324 //=======================================================================
325 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
326 public class Photo : Elm.Object
328 [CCode (cname = "elm_photo_add")]
329 public Photo( Elm.Object? parent );
331 public void file_set( string file );
332 public void size_set( int size );
336 //=======================================================================
337 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
338 public class Hoversel : Elm.Object
340 [CCode (cname = "elm_hoversel_add")]
341 public Hoversel( Elm.Object? parent );
343 public void hover_parent_set( Elm.Object parent );
344 public void label_set( string label );
345 public void icon_set( Elm.Object icon );
346 public void hover_end();
347 public HoverselItem item_add( string label, string icon_file, IconType icon_type, Evas.SmartCallback func );
351 //=======================================================================
352 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
353 public class Toolbar : Elm.Object
355 [CCode (cname = "elm_toolbar_add")]
356 public Toolbar( Elm.Object? parent );
358 public void scrollable_set( bool scrollable );
359 public ToolbarItem item_add( Elm.Object icon, string label, Evas.SmartCallback func );
363 //=======================================================================
364 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
365 public class List : Elm.Object
367 [CCode (cname = "elm_list_add")]
368 public List( Elm.Object? parent );
369 public ListItem append( string label, Elm.Object icon, Elm.Object end, Evas.SmartCallback func );
370 public ListItem prepend( string label, Elm.Object icon, Elm.Object end, Evas.SmartCallback func );
371 public ListItem insert_before( ListItem before, string label, Elm.Object icon, Elm.Object end, Evas.SmartCallback func );
372 public ListItem insert_after( ListItem after, string label, Elm.Object icon, Elm.Object end, Evas.SmartCallback func );
375 public void multi_select_set( bool multi );
376 public void horizontal_mode_set( ListMode mode );
380 //=======================================================================
381 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
382 public class Carousel : Elm.Object
384 [CCode (cname = "elm_carousel_add")]
385 public Carousel( Elm.Object? parent );
389 //=======================================================================
390 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
391 public class Slider : Elm.Object
393 [CCode (cname = "elm_slider_add")]
394 public Slider( Elm.Object? parent );
396 public void label_set( string label );
397 public void icon_set( Elm.Object icon );
398 public void span_size_set( Evas.Coord size );
399 public void unit_format_set( string format );
400 public void indicator_format_set( string indicator );
401 public void horizontal_set( bool horizontal );
402 public void min_max_set( double min, double max );
403 public void value_set( double val );
404 public double value_get();
405 public void inverted_set( bool inverted );
408 //=======================================================================
409 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
410 public class Genlist : Elm.Object
412 [CCode (cname = "elm_genlist_add")]
413 public Genlist( Elm.Object? parent );
414 public GenlistItem item_append( GenlistItemClass itc, void *data, GenlistItem? parent, GenlistItemFlags flags, Evas.SmartCallback callback );
415 public GenlistItem item_prepend( GenlistItemClass itc, void *data, GenlistItem? parent, GenlistItemFlags flags, Evas.SmartCallback callback );
416 public GenlistItem item_insert_before( GenlistItemClass itc, void *data, GenlistItem before, GenlistItemFlags flags, Evas.SmartCallback callback );
417 public GenlistItem item_insert_after( GenlistItemClass itc, void *data, GenlistItem after, GenlistItemFlags flags, Evas.SmartCallback callback );
420 public GenlistItem selected_item_get();
421 public Eina.List<GenlistItem> selected_items_get();
422 public GenlistItem first_item_get();
423 public GenlistItem last_item_get();
426 //=======================================================================
428 [CCode (cname = "Elm_Genlist_Item", free_function = "")]
429 public class GenlistItem
431 public GenlistItem next_get();
432 public GenlistItem prev_get();
433 public void selected_set( bool selected );
434 public bool selected_get();
435 public void disabled_set( bool disabled );
436 public bool disabled_get();
439 public void* data_get();
440 public void update();
443 //=======================================================================
444 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
445 public class Check : Elm.Object
447 [CCode (cname = "elm_check_add")]
448 public Check( Elm.Object? parent );
450 public void label_set( string label );
451 public void icon_set( Elm.Object icon );
452 public void state_set( bool state );
453 public bool state_get();
454 public void state_pointer_set( bool* statep );
458 //=======================================================================
459 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
460 public class Radio : Elm.Object
462 [CCode (cname = "elm_radio_add")]
463 public Radio( Elm.Object? parent );
465 public void label_set( string label );
466 public void icon_set( Elm.Object icon );
467 public void group_add( Elm.Object group );
468 public void state_value_set( int value );
469 public void value_set( int value );
470 public int value_get();
471 public void value_pointer_set( out int valuep );
475 //=======================================================================
476 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
477 public class Pager : Elm.Object
479 [CCode (cname = "elm_pager_add")]
480 public Pager( Elm.Object? parent );
482 public void content_push( Elm.Object content );
483 public void content_pop();
484 public void content_promote( Elm.Object content );
485 public Elm.Object content_bottom_get();
486 public Elm.Object content_top_get();
490 //=======================================================================
491 [CCode (cprefix = "ELM_WIN_")]
499 //=======================================================================
500 [CCode (cprefix = "ELM_WIN_KEYBOARD_")]
501 public enum WinKeyboardMode
516 //=======================================================================
517 [CCode (cprefix = "ELM_HOVER_AXIS_")]
518 public enum HoverAxis
527 //=======================================================================
528 [CCode (cprefix = "ELM_TEXT_FORMAT_")]
529 public enum TextFormat
536 //=======================================================================
537 [CCode (cprefix = "ELM_ICON_")]
546 //=======================================================================
547 [CCode (cprefix = "ELM_LIST_")]
556 //=======================================================================
557 [CCode (cprefix = "ELM_GENLIST_ITEM_")]
558 public enum GenlistItemFlags
565 //=======================================================================
566 [CCode (cname = "Elm_Entry_Anchor_Info")]
567 public struct EntryAnchorInfo
578 //=======================================================================
579 [CCode (cname = "Elm_Entry_Anchorview_Info")]
580 public struct EntryAnchorviewInfo
591 //=======================================================================
592 [CCode (cname = "Elm_Entry_Anchorblock_Info")]
593 public struct EntryAnchorblockInfo
604 public delegate string GenlistItemLabelGetFunc( Elm.Object obj, string part );
605 public delegate Elm.Object? GenlistItemIconGetFunc( Elm.Object obj, string part );
606 public delegate bool GenlistItemStateGetFunc( Elm.Object obj, string part );
607 public delegate void GenlistItemDelFunc( Elm.Object obj );
609 //=======================================================================
610 [CCode (cname = "Elm_Genlist_Item_Class_Func")]
611 public struct GenlistItemClassFunc
613 public GenlistItemLabelGetFunc label_get;
614 public GenlistItemIconGetFunc icon_get;
615 public GenlistItemStateGetFunc state_get;
616 public GenlistItemDelFunc del;
619 //=======================================================================
620 [CCode (cname = "Elm_Genlist_Item_Class", destroy_function = "")]
621 public struct GenlistItemClass
623 public string item_style;
624 public GenlistItemClassFunc func;
627 //=======================================================================
629 [CCode (cname = "Elm_Hoversel_Item")]
630 public struct HoverselItem
634 //=======================================================================
636 [CCode (cname = "Elm_Toolbar_Item")]
637 public struct ToolbarItem
641 //=======================================================================
643 [CCode (cname = "Elm_List_Item")]
644 public struct ListItem