evas.vapi: bind HINT_EXPAND and HINT_FILL
[libeflvala.git] / vapi / elm.vapi
blobc00f4bca9e0ef385a63860296e63fc2a7581ad3d
1 /**
2 * Copyright (C) 2009-2010 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")]
20 namespace Elm
22 public void init( [CCode(array_length_pos = 0.9)] string[] args );
23 public void shutdown();
24 public void run();
25 public void exit();
26 public void need_efreet(); // ???
27 public void need_e_dbus(); // ???
29 //=======================================================================
30 namespace Scale
32     public double get();
33     public void set( double scale );
34     public void all_set( double scale );
37 //=======================================================================
38 namespace Finger
40     public Evas.Coord size_get();
41     public void size_set( Evas.Coord size );
42     public void size_all_set( Evas.Coord size );
45 //=======================================================================
46 namespace Policy
48     [CCode (cname = "ELM_POLICY_QUIT")]
49     public const uint QUIT;
51     [CCode (cprefix = "ELM_POLICY_QUIT_")]
52     public enum Quit
53     {
54         NONE,
55         LAST_WINDOW_CLOSED,
56     }
58     public bool set( uint policy, int value );
59     public int get( uint policy );
63 //=======================================================================
64 namespace Theme
66     public void overlay_add( string item );
67     public void overlay_del( string item );
68     public void extension_add( string item );
69     public void extension_del( string item );
70     public void flush();
71     public void all_set( string theme );
75 //=======================================================================
76 namespace Coords
78     public void finger_size_adjust( int times_w, out Evas.Coord w, int times_h, out Evas.Coord h );
82 //=======================================================================
83 namespace Quicklaunch
85     public static delegate void Postfork_Func ( void* data );
86     public void init( [CCode(array_length_pos = 0.9)] string[] args );
87     public void sub_init( [CCode (array_length_pos = 0.9)] string[] args );
88     public void sub_shutdown();
89     public void shutdown();
90     public void seed();
91     public bool prepare( [CCode (array_length_pos = 0.9)] string[] args );
92     public bool fork( [CCode (array_length_pos = 0.9)] string[] args, string cwd, Postfork_Func postfork_func, void *postfork_data );
93     public void cleanup();
94     public int fallback( [CCode (array_length_pos = 0.9)] string[] args );
95     public string exe_path_get( string exe );
100 //=======================================================================
101 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
102 public abstract class Object : Evas.Object
104     public void scale_set( double scale );
105     public double scale_get();
106     public void style_set( string style );
107     public string style_get();
108     public void disabled_set( bool disabled );
109     public bool disabled_get();
111     public void focus();
112     public void unfocus();
113     public void focus_allow_set( bool enable );
114     public bool focus_allow_get();
116     public void scroll_hold_push();
117     public void scroll_hold_pop();
118     public void scroll_freeze_push();
119     public void scroll_freeze_pop();
123 //=======================================================================
124 [CCode (cprefix = "ELM_WIN_")]
125 public enum WinType
127     BASIC,
128     DIALOG_BASIC,
129     DESKTOP,
130     DOCK,
131     TOOLBAR,
132     MENU,
133     UTILITY,
134     SPLASH
138 //=======================================================================
139 [CCode (cprefix = "ELM_WIN_KEYBOARD_")]
140 public enum WinKeyboardMode
142     UNKNOWN,
143     OFF,
144     ON,
145     ALPHA,
146     NUMERIC,
147     PIN,
148     PHONE_NUMBER,
149     HEX,
150     TERMINAL,
151     PASSWORD,
152     IP,
153     HOST,
154     FILE,
155     URL,
156     KEYPAD,
157     J2ME
161 //=======================================================================
162 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
163 public class Win : Elm.Object
165     [CCode (cname = "elm_win_add")]
166     public Win( Elm.Object? parent = null, string name = "Untitled", WinType t = WinType.BASIC );
168     public void resize_object_add( Elm.Object subobj );
169     public void resize_object_del( Elm.Object subobj );
170     public void title_set( string title );
171     public void autodel_set( bool autodel );
172     public void activate();
173     public void lower();
174     public void raise();
175     public void borderless_set( bool borderless );
176     public bool borderless_get();
177     public void shaped_set( bool shaped );
178     public bool shaped_get();
179     public void alpha_set( bool alpha );
180     public bool alpha_get();
181     public void override_set( bool override_ );
182     public bool override_get();
183     public void fullscreen_set( bool fullscreen );
184     public bool fullscreen_get();
185     public void maximized_set( bool maximized );
186     public bool maximized_get();
187     public void iconified_set( bool iconified );
188     public bool iconified_get();
189     public void layer_set( int layer );
190     public int layer_get();
191     public void rotation_set( int rotation );
192     public int rotation_get();
193     public void sticky_set( bool sticky );
194     public bool sticky_get();
195     public void conformant_set( bool conformant );
196     public bool conformant_get();
198     public void keyboard_mode_set( WinKeyboardMode mode );
199     public void keyboard_win_set( bool is_keyboard );
201     public void screen_position_get( out int x, out int y );
203     public Elm.Win inwin_add();
204     public void inwin_activate();
205     public void inwin_content_set( Elm.Object content );
209 //=======================================================================
210 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
211 public class Bg : Elm.Object
213     [CCode (cname = "elm_bg_add")]
214     public Bg( Elm.Object? parent );
216     public void file_set( string file, string? group=null );
220 //=======================================================================
221 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
222 public class Icon : Elm.Object
224     [CCode (cname = "elm_icon_add")]
225     public Icon( Elm.Object? parent );
227     public void file_set( string file, string? group=null );
228     public void standard_set( string name );
229     public void smooth_set( bool smooth );
230     public void no_scale_set( bool no_scale );
231     public void scale_set( bool scale_up, bool scale_down );
232     public void fill_outside_set( bool fill_outside );
233     public void prescale_set( int size );
237 //=======================================================================
238 [CCode (cprefix = "ELM_IMAGE_")]
239 public enum ImageOrient
241     ORIENT_NONE,
242     ROTATE_90_CW,
243     ROTATE_180_CW,
244     ROTATE_90_CCW,
245     FLIP_HORIZONTAL,
246     FLIP_VERTICAL,
247     FLIP_TRANSPOSE,
248     FLIP_TRANSVERSE
251 //=======================================================================
252 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
253 public class Image : Elm.Object
255     [CCode (cname = "elm_image_add")]
256     public Image( Elm.Object? parent );
258     public void file_set( string file, string? group=null );
259     public void smooth_set( bool smooth );
260     public void object_size_get( out int w, out int h );
261     public void no_scale_set( bool no_scale );
262     public void scale_set( bool scale_up, bool scale_down );
263     public void fill_outside_set( bool fill_outside );
264     public void prescale_set( int size );
265     public void orient_set( ImageOrient orient );
268 //=======================================================================
269 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
270 public class Box : Elm.Object
272     [CCode (cname = "elm_box_add")]
273     public Box( Elm.Object? parent );
275     public void horizontal_set( bool horizontal );
276     public void homogenous_set( bool homogenous );
277     public void pack_start( Elm.Object subobj );
278     public void pack_end( Elm.Object subobj );
279     public void pack_before( Elm.Object subobj, Elm.Object before );
280     public void pack_after( Elm.Object subobj, Elm.Object after );
281     public void clear();
282     public void unpack( Elm.Object subobj );
283     public void unpack_all();
287 //=======================================================================
288 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
289 public class Button : Elm.Object
291     [CCode (cname = "elm_button_add")]
292     public Button( Elm.Object? parent );
294     public void label_set( string label );
295     public unowned string label_get();
296     public void icon_set( Elm.Object icon );
297     public Elm.Object icon_get();
298     public void autorepeat_set( bool autorepeat );
299     public void autorepeat_initial_timeout_set( double t );
300     public void autorepeat_gap_timeout_set( double t );
305 //=======================================================================
306 [CCode (cprefix = "ELM_SCROLLER_POLICY_")]
307 public enum ScrollerPolicy
309     AUTO,
310     ON,
311     OFF
315 //=======================================================================
316 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
317 public class Scroller : Elm.Object
319     [CCode (cname = "elm_scroller_add")]
320     public Scroller( Elm.Object? parent );
322     public void content_set( Elm.Object child );
323     public void content_min_limit( bool w, bool h );
324     public void region_show( Evas.Coord x, Evas.Coord y, Evas.Coord w, Evas.Coord h );
325     public void policy_set(ScrollerPolicy h_policy, ScrollerPolicy v_policy);
326     public void region_get( out Evas.Coord x, out Evas.Coord y, out Evas.Coord w, out Evas.Coord h );
327     public void child_size_get( out Evas.Coord w, out Evas.Coord h );
328     public void bounce_set( bool h_bounce, bool v_bounce );
329     public void page_relative_set( double h_pagerel, double v_pagerel );
330     public void page_size_set( Evas.Coord h_pagesize, Evas.Coord v_pagesize );
331     public void region_bring_in( Evas.Coord x, Evas.Coord y, Evas.Coord w, Evas.Coord h );
335 //=======================================================================
336 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
337 public class Label : Elm.Object
339     [CCode (cname = "elm_label_add")]
340     public Label( Elm.Object? parent );
342     public void label_set( string label );
343     public unowned string label_get();
344     public void line_wrap_set( bool wrap );
348 //=======================================================================
349 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
350 public class Toggle : Elm.Object
352     [CCode (cname = "elm_toggle_add")]
353     public Toggle( Elm.Object? parent );
355     public void label_set( string label );
356     public unowned string label_get();
357     public void icon_set( Elm.Object icon );
358     public Elm.Object icon_get();
359     public void states_labels_set( string onlabel, string offlabel );
360     public void state_set( bool state );
361     public bool state_get();
362     public void state_pointer_set( bool* statep );
366 //=======================================================================
367 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
368 public class Frame : Elm.Object
370     [CCode (cname = "elm_frame_add")]
371     public Frame( Elm.Object? parent );
373     public void label_set( string label );
374     public unowned string label_get();
375     public void content_set( Elm.Object content );
379 //=======================================================================
380 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
381 public class Table : Elm.Object
383     [CCode (cname = "elm_table_add")]
384     public Table( Elm.Object? parent );
386     public void homogenous_set( bool homogenous );
387     public void pack( Elm.Object subobj, int x, int y, int w, int h );
388     public void padding_set( Evas.Coord horizontal, Evas.Coord vertical );
392 //=======================================================================
393 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
394 public class Clock : Elm.Object
396     [CCode (cname = "elm_clock_add")]
397     public Clock( Elm.Object? parent );
399     public void time_set( int hrs, int min, int sec );
400     public void time_get( out int hrs, out int min, out int sec );
401     public void edit_set( bool edit );
402     public void show_am_pm_set( bool am_pm );
403     public void show_seconds_set( bool seconds );
407 //=======================================================================
408 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
409 public class Layout : Elm.Object
411     [CCode (cname = "elm_layout_add")]
412     public Layout( Elm.Object? parent );
414     public void file_set( string file, string group );
415     public void theme_set( string clas, string group, string style );
416     public void content_set( string swallow, Elm.Object content );
417     public weak Elm.Object edje_get();
418     public void sizing_eval();
422 //=======================================================================
423 [CCode (cprefix = "ELM_NOTIFY_ORIENT_")]
424 public enum NotifyOrient
426     TOP,
427     CENTER,
428     BOTTOM,
429     LEFT,
430     RIGHT,
431     TOP_LEFT,
432     TOP_RIGHT,
433     BOTTOM_LEFT,
434     BOTTOM_RIGHT
438 //=======================================================================
439 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
440 public class Notify : Elm.Object
442     [CCode (cname = "elm_notify_add")]
443     public Notify( Elm.Object? parent );
445     public void content_set( Evas.Object content );
446     public void parent_set( Evas.Object parent );
447     public void orient_set( NotifyOrient orient );
448     public void timeout_set( int timeout );
449     public void timer_init();
450     public void repeat_events_set( bool repeat );
453 //=======================================================================
454 [CCode (cprefix = "ELM_HOVER_AXIS_")]
455 public enum HoverAxis
457     NONE,
458     HORIZONTAL,
459     VERTICAL,
460     BOTH,
464 //=======================================================================
465 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
466 public class Hover : Elm.Object
468     [CCode (cname = "elm_hover_add")]
469     public Hover( Elm.Object? parent );
471     public void target_set( Elm.Object target );
472     public void parent_set( Elm.Object parent );
473     public void content_set( string swallow, Elm.Object content );
474     public string best_content_location_get( HoverAxis pref_axis );
478 //=======================================================================
479 [CCode (cname = "Elm_Entry_Anchor_Info")]
480 public struct EntryAnchorInfo
482     string name;
483     int button;
484     Evas.Coord x;
485     Evas.Coord y;
486     Evas.Coord w;
487     Evas.Coord h;
491 //=======================================================================
492 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
493 public class Entry : Elm.Object
495     [CCode (cname = "elm_entry_add")]
496     public Entry( Elm.Object? parent );
498     public void single_line_set( bool single_line );
499     public void password_set( bool password );
500     public void entry_set( string entry );
501     public unowned string entry_get();
502     public string selection_get();
503     public void entry_insert( string entry );
504     public void line_wrap_set( bool wrap );
505     public void editable_set( bool editable );
506     public void select_none();
507     public void select_all();
509     public bool cursor_next();
510     public bool cursor_prev();
511     public bool cursor_up();
512     public bool cursor_down();
513     public void cursor_begin_set();
514     public void cursor_end_set();
515     public void cursor_line_begin_set();
516     public void cursor_line_end_set();
517     public void cursor_selection_begin();
518     public void cursor_selection_end();
519     public bool cursor_is_format_get();
520     public bool cursor_is_visible_format_get();
521     public string cursor_content_get();
522     public void selection_cut();
523     public void selection_copy();
524     public void selection_paste();
525     public void context_menu_clear();
526     //public void context_menu_item_add( string label, string icon_file, IconType icon_type, EventCallback callback );
527     public void context_menu_disabled_set( bool disabled );
528     public bool context_menu_disabled_get();
529     public static string markup_to_utf8( string s );
530     public static string utf8_to_markup( string s );
534 //=======================================================================
535 [CCode (cprefix = "ELM_TEXT_FORMAT_")]
536 public enum TextFormat
538     PLAIN_UTF8,
539     MARKUP_UTF8,
543 //=======================================================================
544 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
545 public class Notepad : Elm.Object
547     [CCode (cname = "elm_notepad_add")]
548     public Notepad( Elm.Object? parent );
550     public void file_set( string file, TextFormat format );
551     public void bounce_set( bool h_bounce, bool v_bounce );
555 //=======================================================================
556 [CCode (cname = "Elm_Entry_Anchorview_Info")]
557 public struct EntryAnchorviewInfo
559     string name;
560     int button;
561     Elm.Object hover;
562     /*
563     struct
564     {
565      Evas_Coord x, y, w, h;
566     } anchor, hover_parent;
567     */
568     bool hover_left;
569     bool hover_right;
570     bool hover_top;
571     bool hover_bottom;
575 //=======================================================================
576 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
577 public class Anchorview : Elm.Object
579     [CCode (cname = "elm_anchorview_add")]
580     public Anchorview( Elm.Object? parent );
582     public void text_set( string text );
583     public void hover_parent_set( Elm.Object parent );
584     public void hover_style_set( string style );
585     public void hover_end();
586     public void bounce_set( bool h_bounce, bool v_bounce );
590 //=======================================================================
591 [CCode (cname = "Elm_Entry_Anchorblock_Info")]
592 public struct EntryAnchorblockInfo
594     string name;
595     int button;
596     Elm.Object hover;
597     /*
598     struct
599     {
600      Evas_Coord x, y, w, h;
601     } anchor, hover_parent;
602     */
603     bool hover_left;
604     bool hover_right;
605     bool hover_top;
606     bool hover_bottom;
610 //=======================================================================
611 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
612 public class Anchorblock : Elm.Object
614     [CCode (cname = "elm_anchorblock_add")]
615     public Anchorblock( Elm.Object? parent );
617     public void text_set( string text );
618     public void hover_parent_set( Elm.Object parent );
619     public void hover_style_set( string style );
620     public void hover_end();
624 //=======================================================================
625 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
626 public class Bubble : Elm.Object
628     [CCode (cname = "elm_bubble_add")]
629     public Bubble( Elm.Object? parent );
631     public void label_set( string label );
632     public void info_set( string info );
633     public void content_set( Elm.Object content );
634     public void icon_set( Elm.Object icon );
635     public Elm.Object icon_get();
636     public void corner_set( string corner );
640 //=======================================================================
641 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
642 public class Photo : Elm.Object
644     [CCode (cname = "elm_photo_add")]
645     public Photo( Elm.Object? parent );
647     public void file_set( string file );
648     public void size_set( int size );
652 //=======================================================================
653 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
654 public class Hoversel : Elm.Object
656     [CCode (cname = "elm_hoversel_add")]
657     public Hoversel( Elm.Object? parent );
659     public void horizontal_set( bool horizontal );
660     public void hover_parent_set( Elm.Object parent );
661     public void label_set( string label );
662     public unowned string label_get();
663     public void icon_set( Elm.Object icon );
664     public Elm.Object icon_get();
665     public void hover_begin();
666     public void hover_end();
667     public void clear();
668     public Eina.List items_get();
669     public unowned HoverselItem item_add( string label, string? icon_file, IconType icon_type, Evas.Callback? func = null );
670     public void item_del( HoverselItem item );
671     /*
672     EAPI void         elm_hoversel_item_del_cb_set(Elm_Hoversel_Item *it, void (*func)(void *data, Evas_Object *obj, void *event_info));
673     EAPI void        *elm_hoversel_item_data_get(Elm_Hoversel_Item *it);
674     EAPI const char  *elm_hoversel_item_label_get(Elm_Hoversel_Item *it);
675     EAPI void         elm_hoversel_item_icon_set(Elm_Hoversel_Item *it, const char *icon_file, const char *icon_group, Elm_Icon_Type icon_type);
676     EAPI void         elm_hoversel_item_icon_get(Elm_Hoversel_Item *it, const char **icon_file, const char **icon_group, Elm_Icon_Type *icon_type);
677     */
681 //=======================================================================
682 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
683 public class Toolbar : Elm.Object
685     [CCode (cname = "elm_toolbar_add")]
686     public Toolbar( Elm.Object? parent );
688     public void icon_size_set( int icon_size );
689     public int icon_size_get();
690     public ToolbarItem item_add( Elm.Object icon, string label, Evas.Callback func );
691     // Note: elm_boolbar_item_ functions living in ToolbarItem scope
692     public void scrollable_set( bool scrollable );
693     public void homogenous_set( bool homogenous );
694     public void menu_parent_set( Elm.Object parent );
695     [CCode (cname = "elm_toolbar_item_unselect_all")]
696     public void unselect_all();
697     public void align_set( bool align );
701 //=======================================================================
702 [Compact]
703 [CCode (cname = "Elm_Toolbar_Item", free_function = "elm_toolbar_item_del")]
704 public class ToolbarItem
706     public Elm.Object icon_get();
707     public unowned string label_get();
708     public void label_set( string label );
709     //public void del_cb_set( ... );
710     public void select();
711     public bool disabled_get();
712     public void disabled_set( bool disabled );
713     public bool separator_get();
714     public void separator_set( bool separator );
715     public void menu_set( bool menu );
716     public Elm.Object menu_get();
720 //=======================================================================
721 [Compact]
722 [CCode (cname = "Elm_Menu_Item", free_function = "elm_menu_item_del")]
723 public class MenuItem
725     [CCode (cname = "elm_menu_object_get")]
726     public Elm.Object object_get();
727     public void label_set( string label );
728     //public void del_cb_set( ... );
729     public unowned string label_get();
730     public void icon_set( Elm.Object icon );
731     public void disabled_set( bool disabled );
732     public void* item_data_get();
733     public void data_set( void* data );
734     public Eina.List item_subitems_get();
737 //=======================================================================
738 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
739 public class Menu : Elm.Object
741     [CCode (cname = "elm_menu_add")]
742     public Menu( Elm.Object? parent );
744     public void parent_set( Elm.Object parent );
745     public void move( Evas.Coord x, Evas.Coord y );
746     public MenuItem item_add( Elm.Object icon, string label, Evas.Callback? func = null );
750 //=======================================================================
751 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
752 public class List : Elm.Object
754     [CCode (cname = "elm_list_add")]
755     public List( Elm.Object? parent );
757     [CCode (cname = "elm_list_item_append")]
758     public ListItem append( string label, Elm.Object? icon, Elm.Object? end, Evas.Callback? func);
759     [CCode (cname = "elm_list_item_prepend")]
760     public ListItem prepend( string label, Elm.Object? icon, Elm.Object? end, Evas.Callback? func );
761     public ListItem insert_before( ListItem before, string label, Elm.Object? icon, Elm.Object? end, Evas.Callback? func );
762     public ListItem insert_after( ListItem after, string label, Elm.Object? icon, Elm.Object? end, Evas.Callback? func );
763     public void go();
764     public void multi_select_set( bool multi );
765     public bool multi_select_get();
766     public void horizontal_mode_set( ListMode mode );
767     public ListMode horizontal_mode_get();
768     public void always_select_mode_set( bool always_select );
769     public weak Eina.List<ListItem> items_get();
770     public weak ListItem selected_item_get();
771     public weak Eina.List<ListItem> selected_items_get();
775 //=======================================================================
776 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
777 public class Carousel : Elm.Object
779     [CCode (cname = "elm_carousel_add")]
780     public Carousel( Elm.Object? parent );
784 //=======================================================================
785 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
786 public class Slider : Elm.Object
788     public static delegate string IndicatorFormatFunc( double val );
790     [CCode (cname = "elm_slider_add")]
791     public Slider( Elm.Object? parent );
793     public void label_set( string label );
794     public unowned string label_get();
795     public void icon_set( Elm.Object icon );
796     public Elm.Object icon_get();
797     public void span_size_set( Evas.Coord size );
798     public void unit_format_set( string format );
799     public void indicator_format_set( string indicator );
800     public void indicator_format_function_set( IndicatorFormatFunc func );
801     public void horizontal_set( bool horizontal );
802     public void min_max_set( double min, double max );
803     public void value_set( double val );
804     public double value_get();
805     public void inverted_set( bool inverted );
809 //=======================================================================
810 [CCode (cprefix = "ELM_GENLIST_ITEM_")]
811 public enum GenlistItemFlags
813     NONE,
814     SUBITEMS,
817 [CCode (cname = "GenlistItemLabelGetFunc")]
818 public static delegate string GenlistItemLabelGetFunc( Elm.Object obj, string part );
819 [CCode (cname = "GenlistItemIconGetFunc")]
820 public static delegate Elm.Object? GenlistItemIconGetFunc( Elm.Object obj, string part );
821 [CCode (cname = "GenlistItemStateGetFunc")]
822 public static delegate bool GenlistItemStateGetFunc( Elm.Object obj, string part );
823 [CCode (cname = "GenlistItemDelFunc")]
824 public static delegate void GenlistItemDelFunc( Elm.Object obj );
826 //=======================================================================
827 [CCode (cname = "Elm_Genlist_Item_Class_Func", destroy_function = "")]
828 public struct GenlistItemClassFunc
830     public GenlistItemLabelGetFunc label_get;
831     public GenlistItemIconGetFunc icon_get;
832     public GenlistItemStateGetFunc state_get;
833     public GenlistItemDelFunc del;
836 //=======================================================================
837 [CCode (cname = "Elm_Genlist_Item_Class", destroy_function = "")]
838 public struct GenlistItemClass
840     public string item_style;
841     public GenlistItemClassFunc func;
844 //=======================================================================
845 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
846 public class Genlist : Elm.Object
848     [CCode (cname = "elm_genlist_add")]
849     public Genlist( Elm.Object? parent );
850     public unowned GenlistItem item_append( GenlistItemClass itc, void *data, GenlistItem? parent, GenlistItemFlags flags, Evas.Callback callback );
851     public unowned GenlistItem item_prepend( GenlistItemClass itc, void *data, GenlistItem? parent, GenlistItemFlags flags, Evas.Callback callback );
852     public unowned GenlistItem item_insert_before( GenlistItemClass itc, void *data, GenlistItem before, GenlistItemFlags flags, Evas.Callback callback );
853     public unowned GenlistItem item_insert_after( GenlistItemClass itc, void *data, GenlistItem after, GenlistItemFlags flags, Evas.Callback callback );
855     public void clear();
856     public void multi_select_set( bool multi );
857     public void horizontal_mode_set( ListMode mode );
858     public void always_select_mode_set( bool always_select );
859     public void no_select_mode_set( bool no_select );
861     public unowned GenlistItem at_xy_item_get( Evas.Coord x, Evas.Coord y, out int posret );
862     public unowned GenlistItem selected_item_get();
863     public Eina.List<unowned GenlistItem> selected_items_get();
864     public unowned GenlistItem first_item_get();
865     public unowned GenlistItem last_item_get();
869 //=======================================================================
870 [Compact]
871 [CCode (cname = "Elm_Genlist_Item", free_function = "") /* Caution! Genlist items are owned by the list. */ ]
872 public class GenlistItem
874    public GenlistItem next_get();
875    public GenlistItem prev_get();
876    public Genlist genlist_get();
877    public void subitems_clear();
879    public void selected_set( bool selected );
880    public bool selected_get();
881    public void expanded_set( bool expanded );
882    public bool expanded_get();
883    public void disabled_set( bool disabled );
884    public bool disabled_get();
886    public void show();
887    public void bring_in();
888    public void top_show();
889    public void top_bring_in();
890    public void middle_show();
891    public void middle_bring_in();
892    public void del();
894    // FIXME: Caution: Do we really have access to the data field or is it used by Vala?
895    public void* data_get();
896    public void data_set( void* data );
897    public void update();
899    public Elm.Genlist object_get();
903 //=======================================================================
904 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
905 public class Check : Elm.Object
907     [CCode (cname = "elm_check_add")]
908     public Check( Elm.Object? parent );
910     public void label_set( string label );
911     public unowned string label_get();
912     public void icon_set( Elm.Object icon );
913     public Elm.Object icon_get();
914     public void state_set( bool state );
915     public bool state_get();
916     public void state_pointer_set( bool* statep );
920 //=======================================================================
921 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
922 public class Radio : Elm.Object
924     [CCode (cname = "elm_radio_add")]
925     public Radio( Elm.Object? parent );
927     public void label_set( string label );
928     public unowned string label_get();
929     public void icon_set( Elm.Object icon );
930     public Elm.Object icon_get();
931     public void group_add( Elm.Object group );
932     public void state_value_set( int value );
933     public void value_set( int value );
934     public int value_get();
935     public void value_pointer_set( out int valuep );
939 //=======================================================================
940 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
941 public class Pager : Elm.Object
943     [CCode (cname = "elm_pager_add")]
944     public Pager( Elm.Object? parent );
946     public void content_push( Elm.Object content );
947     public void content_pop();
948     public void content_promote( Elm.Object content );
949     public Elm.Object content_bottom_get();
950     public Elm.Object content_top_get();
952     public void style_set( string style );
956 //=======================================================================
957 [Compact]
958 [CCode (cname = "Elm_Slideshow_Item", free_function = "elm_slideshow_item_del")]
959 public class SlideshowItem
961     public Slideshow object_get();
964 public delegate Evas.Object? SlideshowItemGetFunc( Elm.Object obj );
965 public delegate void SlideshowItemDelFunc( Elm.Object obj );
968 //=======================================================================
969 [CCode (cname = "Elm_Slideshow_Item_Class_Func", copy_function = "", destroy_function = "")]
970 public struct SlideshowItemClassFunc
972     [CCode (delegate_target = false)]
973     public SlideshowItemGetFunc get;
974     [CCode (delegate_target = false)]
975     public SlideshowItemDelFunc del;
979 //=======================================================================
980 [CCode (cname = "Elm_Slideshow_Item_Class", destroy_function = "")]
981 public struct SlideshowItemClass
983     public SlideshowItemClassFunc func;
987 //=======================================================================
988 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
989 public class Slideshow : Elm.Object
991     [CCode (cname = "elm_slideshow_add")]
992     public Slideshow( Elm.Object? parent );
994     public SlideshowItem item_add( SlideshowItemClass itc, void* data );
995     public static void show( SlideshowItem item );
996     public void next();
997     public void previous();
998     public Eina.List<string> transitions_get();
999     public void transition_set( string transition );
1000     public void timeout_set( int timeout );
1001     public int timeout_get();
1002     public void loop_set( int loop );
1003     public void clear();
1004     public Eina.List<SlideshowItem> items_get();
1005     public SlideshowItem item_current_get();
1009 //=======================================================================
1010 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
1011 public class FileSelector : Elm.Object
1013     [CCode (cname = "elm_fileselector_add")]
1014     public FileSelector( Elm.Object? parent );
1016     public void is_save_set( bool is_save );
1017     public bool is_save_get();
1018     public void folder_only_set( bool only );
1019     public bool folder_only_get();
1020     public void buttons_ok_cancel_set( bool buttons );
1021     public bool buttons_ok_cancel_get();
1022     public void expandable_set( bool expand );
1023     public void path_set( string path );
1024     public string path_get();
1025     public string selected_get();
1029 //=======================================================================
1030 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
1031 public class ProgressBar : Elm.Object
1033     [CCode (cname = "elm_progressbar_add")]
1034     public ProgressBar( Elm.Object? parent );
1036     public void pulse_set( bool pulse );
1037     public bool pulse_get();
1038     public void value_set( double val );
1039     public double value_get();
1040     public void label_set( string label );
1041     public void icon_set( Elm.Object icon );
1042     public void span_size_set( Evas.Coord size );
1043     public void unit_format_set( string format );
1044     public void horizontal_set( bool horizontal );
1045     public void inverted_set( bool inverted );
1049 //=======================================================================
1050 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
1051 public class Separator : Elm.Object
1053     [CCode (cname = "elm_separator_add")]
1054     public Separator( Elm.Object? parent );
1055     public void horizontal_set( bool horizontal );
1056     public bool horizontal_get();
1060 //=======================================================================
1061 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
1062 public class Spinner : Elm.Object
1064     [CCode (cname = "elm_spinner_add")]
1065     public Spinner( Elm.Object? parent );
1066     public void label_format_set( string format );
1067     public unowned string label_format_get();
1068     public void min_max_set( double min, double max );
1069     public void step_set( double step );
1070     public void value_set( double val );
1071     public double value_get();
1072     public void wrap_set( bool wrap );
1076 //=======================================================================
1077 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
1078 public class Index : Elm.Object
1080     [CCode (cname = "elm_index_add")]
1081     public Index( Elm.Object? parent );
1082     public void active_set( bool active );
1083     public void item_level_set( int level );
1084     public int item_level_get();
1085     public void* item_selected_get( int level );
1086     public void item_append( string letter, void* item );
1087     public void item_prepend( string letter, void* item );
1088     public void item_append_relative( string letter, void *item, void *relative );
1089     public void item_prepend_relative( string letter,void *item, void *relative );
1090     public void item_del( void *item );
1091     public void item_clear();
1092     public void item_go( int level );
1096 //=======================================================================
1097 [CCode (cprefix = "ELM_SCROLLER_AXIS_")]
1098 public enum ScrollerAxis
1100     HORIZONTAL,
1101     VERTICAL,
1104 //=======================================================================
1105 [CCode (cprefix = "ELM_ICON_")]
1106 public enum IconType
1108     NONE,
1109     FILE,
1110     STANDARD,
1114 //=======================================================================
1115 [CCode (cprefix = "ELM_LIST_")]
1116 public enum ListMode
1118     COMPRESS,
1119     SCROLL,
1120     LIMIT,
1124 //=======================================================================
1125 [Compact]
1126 [CCode (cname = "Elm_Hoversel_Item", free_function = "")]
1127 public class HoverselItem
1132 //=======================================================================
1133 [Compact]
1134 [CCode (cname = "Elm_List_Item", free_function = "elm_list_item_del")]
1135 public class ListItem
1137     public void selected_set( bool selected );
1138     public void show();
1139     public void* data_get();
1140     public unowned string label_get();
1141     public void label_set( string label );
1142     public Elm.Object icon_get();
1143     public void icon_set( Elm.Object icon );
1144     public Elm.Object end_get();
1145     public void end_set( Elm.Object end );
1149 //=======================================================================
1150 [CCode (cprefix = "ELM_PHOTOCAM_ZOOM_MODE_")]
1151 public enum PhotocamZoomMode
1153     MANUAL,
1154     AUTO_FIT,
1155     AUTO_FILL,
1159 //=======================================================================
1160 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
1161 public class Photocam : Elm.Object
1163     [CCode (cname = "elm_photocam_add")]
1164     public Photocam( Elm.Object? parent );
1166     public int file_set( string file );
1167     public string file_get();
1168     public void zoom_set( double zoom );
1169     public double zoom_get();
1170     public void zoom_mode_set( PhotocamZoomMode mode );
1171     public PhotocamZoomMode zoom_mode_get();
1172     public void image_size_get( out int w, out int h );
1173     public void region_get( out int x, out int y, out int w, out int h );
1174     public void image_region_show( int x, int y, int w, int h );
1175     public void image_region_bring_in( int x, int y, int w, int h );
1176     public void paused_set( bool paused );
1177     public bool paused_get();
1181 //=======================================================================
1182 [CCode (cprefix = "ELM_MAP_ZOOM_MODE_")]
1183 public enum MapZoomMode
1185     MANUAL,
1186     AUTO_FIT,
1187     AUTO_FILL,
1191 //=======================================================================
1192 [CCode (cprefix = "ELM_MAP_SOURCE_MODE_")]
1193 public enum MapSource
1195     MAPNIK,
1196     OSMARENDER,
1197     CYCLEMAP,
1198     MAPLINT,
1199     CUSTOM_1,
1200     CUSTOM_2,
1201     CUSTOM_3,
1202     CUSTOM_4,
1203     CUSTOM_5,
1204     CUSTOM_6,
1205     CUSTOM_7
1208 //=======================================================================
1209 [Compact]
1210 [CCode (cname = "Elm_Map_Marker", free_function = "")]
1211 public class MapMarker
1216 //=======================================================================
1217 [Compact]
1218 [CCode (cname = "Elm_Map_Marker_Class", free_function = "")]
1219 public class MapMarkerClass
1224 //=======================================================================
1225 [Compact]
1226 [CCode (cname = "Elm_Map_Group_Class", free_function = "")]
1227 public class MapGroupClass
1231 //=======================================================================
1232 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
1233 public class Map : Elm.Object
1235     [CCode (cname = "elm_map_add")]
1236     public Map( Elm.Object? parent );
1238     public void zoom_set( int zoom );
1239     public double zoom_get();
1240     public void zoom_mode_set( MapZoomMode mode );
1241     public MapZoomMode zoom_mode_get();
1242     public void geo_region_get( out double lon, out double lat );
1243     public void geo_region_bring_in( double lon, double lat );
1244     public void geo_region_show( double lon, double lat );
1245     public void paused_set( bool paused );
1246     public bool paused_get();
1247     public void paused_markers_set( bool paused );
1248     public bool paused_markers_get();
1249     [CCode (cname = "utils_convert_coord_into_geo")]
1250     public static void convert_coord_into_geo( int x, int y, int size, out double lon, out double lat );
1251     [CCode (cname = "utils_convert_geo_into_coord")]
1252     public static void convert_geo_into_coord( double lon, double lat, int size, out int x, out int y );
1256 //=======================================================================
1257 [CCode (cprefix = "ELM_PANEL_ORIENT_")]
1258 public enum PanelOrient
1260     TOP,
1261     BOTTOM,
1262     LEFT,
1263     RIGHT
1267 //=======================================================================
1268 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
1269 public class Panel : Elm.Object
1271     [CCode (cname = "elm_panel_add")]
1272     public Panel( Elm.Object? parent );
1274     public void orient_set( PanelOrient orient );
1275     public void content_set( Elm.Object content );
1279 //=======================================================================
1280 [CCode (cprefix = "ELM_FLIP_MODE_")]
1281 public enum FlipMode
1283     ROTATE_Y_CENTER_AXIS,
1284     ROTATE_X_CENTER_AXIS,
1285     ROTATE_XZ_CENTER_AXIS,
1286     ROTATE_YZ_CENTER_AXIS
1290 //=======================================================================
1291 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
1292 public class Flip : Elm.Object
1294     [CCode (cname = "elm_flip_add")]
1295     public Flip( Elm.Object? parent );
1297     public void content_front_set( Elm.Object front );
1298     public void content_back_set( Elm.Object back );
1299     public bool front_get();
1300     public void perspective_set( Evas.Coord foc, Evas.Coord x, Evas.Coord y );
1301     public void go( FlipMode mode );
1305 //=======================================================================
1306 [CCode (cname = "Evas_Object", free_function = "evas_object_del")]
1307 public class ScrolledEntry : Elm.Object
1309     [CCode (cname = "elm_scrolled_entry_add")]
1310     public ScrolledEntry( Elm.Object? parent );
1312     public void single_line_set( bool single_line );
1313     public void password_set( bool password );
1314     public void entry_set(  string entry );
1315     public unowned string entry_get();
1316     public unowned string selection_get();
1317     public void entry_insert( string entry );
1318     public void line_wrap_set( bool wrap );
1319     public void line_char_wrap_set(  bool wrap );
1320     public void editable_set( bool editable);
1321     public void select_none();
1322     public void select_all();
1323     public bool cursor_next();
1324     public bool cursor_prev();
1325     public bool cursor_up();
1326     public bool cursor_down();
1327     public void cursor_begin_set();
1328     public void cursor_end_set();
1329     public void cursor_line_begin_set();
1330     public void cursor_line_end_set();
1331     public void cursor_selection_begin();
1332     public void cursor_selection_end();
1333     public bool cursor_is_format_get();
1334     public bool cursor_is_visible_format_get();
1335     public unowned string cursor_content_get();
1336     public void selection_cut();
1337     public void selection_copy();
1338     public void selection_paste();
1339     public void context_menu_clear();
1340     public void context_menu_item_add( string label, string icon_file, IconType icon_type, Evas.Callback callback );
1343 } /* namespace Elm */