3 * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
10 * @brief Elementary's API
15 @ELM_UNIX_DEF@ ELM_UNIX
16 @ELM_WIN32_DEF@ ELM_WIN32
17 @ELM_WINCE_DEF@ ELM_WINCE
18 @ELM_EDBUS_DEF@ ELM_EDBUS
19 @ELM_EFREET_DEF@ ELM_EFREET
20 @ELM_ETHUMB_DEF@ ELM_ETHUMB
21 @ELM_ALLOCA_H_DEF@ ELM_ALLOCA_H
22 @ELM_LIBINTL_H_DEF@ ELM_LIBINTL_H
24 /* Standard headers for standard system calls etc. */
29 #include <sys/types.h>
32 #include <sys/param.h>
57 #if defined (ELM_WIN32) || defined (ELM_WINCE)
60 # define alloca _alloca
70 #include <Ecore_Evas.h>
71 #include <Ecore_File.h>
72 #include <Ecore_IMF.h>
82 # include <Efreet_Mime.h>
83 # include <Efreet_Trash.h>
87 # include <Ethumb_Client.h>
95 # ifdef ELEMENTARY_BUILD
97 # define EAPI __declspec(dllexport)
100 # endif /* ! DLL_EXPORT */
102 # define EAPI __declspec(dllimport)
103 # endif /* ! EFL_EVAS_BUILD */
107 # define EAPI __attribute__ ((visibility("default")))
114 #endif /* ! _WIN32 */
117 /* allow usage from c++ */
122 #define ELM_VERSION_MAJOR @VMAJ@
123 #define ELM_VERSION_MINOR @VMIN@
125 typedef struct _Elm_Version
133 EAPI extern Elm_Version *elm_version;
136 #define ELM_RECTS_INTERSECT(x, y, w, h, xx, yy, ww, hh) (((x) < ((xx) + (ww))) && ((y) < ((yy) + (hh))) && (((x) + (w)) > (xx)) && (((y) + (h)) > (yy)))
137 #define ELM_PI 3.14159265358979323846
139 /**************************************************************************/
140 EAPI extern int ELM_ECORE_EVENT_ETHUMB_CONNECT;
143 typedef enum _Elm_Win_Type
146 ELM_WIN_DIALOG_BASIC,
155 typedef enum _Elm_Win_Keyboard_Mode
157 ELM_WIN_KEYBOARD_UNKNOWN,
158 ELM_WIN_KEYBOARD_OFF,
160 ELM_WIN_KEYBOARD_ALPHA,
161 ELM_WIN_KEYBOARD_NUMERIC,
162 ELM_WIN_KEYBOARD_PIN,
163 ELM_WIN_KEYBOARD_PHONE_NUMBER,
164 ELM_WIN_KEYBOARD_HEX,
165 ELM_WIN_KEYBOARD_TERMINAL,
166 ELM_WIN_KEYBOARD_PASSWORD,
168 ELM_WIN_KEYBOARD_HOST,
169 ELM_WIN_KEYBOARD_FILE,
170 ELM_WIN_KEYBOARD_URL,
171 ELM_WIN_KEYBOARD_KEYPAD,
172 ELM_WIN_KEYBOARD_J2ME
173 } Elm_Win_Keyboard_Mode;
176 * Emitted when policy value changed.
178 EAPI extern int ELM_EVENT_POLICY_CHANGED;
179 typedef struct _Elm_Event_Policy_Changed
184 } Elm_Event_Policy_Changed;
187 * Policy identifiers.
189 * @see elm_policy_set()
191 typedef enum _Elm_Policy
193 ELM_POLICY_QUIT, /**< when should quit application automatically.
194 * @see Elm_Policy_Quit.
199 typedef enum _Elm_Policy_Quit
201 ELM_POLICY_QUIT_NONE = 0, /**< never quit application automatically */
202 ELM_POLICY_QUIT_LAST_WINDOW_CLOSED /**< quit when last window is closed */
205 typedef enum _Elm_Thumb_Animation_Setting
207 ELM_THUMB_ANIMATION_START = 0, /* Play animation once */
208 ELM_THUMB_ANIMATION_LOOP, /* Keep playing animation until stop is requested */
209 ELM_THUMB_ANIMATION_STOP,
210 ELM_THUMB_ANIMATION_LAST
211 } Elm_Thumb_Animation_Setting;
213 typedef struct _Elm_Theme Elm_Theme;
215 typedef enum _Elm_Clock_Digedit
218 ELM_CLOCK_HOUR_DECIMAL = 1 << 0,
219 ELM_CLOCK_HOUR_UNIT = 1 << 1,
220 ELM_CLOCK_MIN_DECIMAL = 1 << 2,
221 ELM_CLOCK_MIN_UNIT = 1 << 3,
222 ELM_CLOCK_SEC_DECIMAL = 1 << 4,
223 ELM_CLOCK_SEC_UNIT = 1 << 5,
224 ELM_CLOCK_ALL = (1 << 6) - 1
227 #ifndef ELM_LIB_QUICKLAUNCH
228 #define ELM_MAIN() int main(int argc, char **argv) {elm_init(argc, argv); return elm_main(argc, argv);}
230 #define ELM_MAIN() int main(int argc, char **argv) {return elm_quicklaunch_fallback(argc, argv);}
233 /**************************************************************************/
235 EAPI void elm_init(int argc, char **argv);
236 EAPI void elm_shutdown(void);
237 EAPI void elm_run(void);
238 EAPI void elm_exit(void);
240 EAPI void elm_quicklaunch_init(int argc, char **argv);
241 EAPI void elm_quicklaunch_sub_init(int argc, char **argv);
242 EAPI void elm_quicklaunch_sub_shutdown(void);
243 EAPI void elm_quicklaunch_shutdown(void);
244 EAPI void elm_quicklaunch_seed(void);
245 EAPI Eina_Bool elm_quicklaunch_prepare(int argc, char **argv);
246 EAPI Eina_Bool elm_quicklaunch_fork(int argc, char **argv, char *cwd, void (postfork_func) (void *data), void *postfork_data);
247 EAPI void elm_quicklaunch_cleanup(void);
248 EAPI int elm_quicklaunch_fallback(int argc, char **argv);
249 EAPI char *elm_quicklaunch_exe_path_get(const char *exe);
251 EAPI void elm_need_efreet(void);
252 EAPI void elm_need_e_dbus(void);
253 EAPI void elm_need_ethumb(void);
255 EAPI Eina_Bool elm_policy_set(unsigned int policy, int value);
256 EAPI int elm_policy_get(unsigned int policy);
258 EAPI void elm_all_flush(void);
260 EAPI void elm_object_scale_set(Evas_Object *obj, double scale);
261 EAPI double elm_object_scale_get(const Evas_Object *obj);
262 EAPI void elm_object_style_set(Evas_Object *obj, const char *style);
263 EAPI const char *elm_object_style_get(const Evas_Object *obj);
264 EAPI void elm_object_disabled_set(Evas_Object *obj, Eina_Bool disabled);
265 EAPI Eina_Bool elm_object_disabled_get(const Evas_Object *obj);
267 EAPI Eina_Bool elm_object_widget_check(const Evas_Object *obj);
268 EAPI Evas_Object *elm_object_parent_widget_get(const Evas_Object *obj);
269 EAPI const char *elm_object_widget_type_get(const Evas_Object *obj);
271 EAPI double elm_scale_get(void);
272 EAPI void elm_scale_set(double scale);
273 EAPI void elm_scale_all_set(double scale);
274 EAPI Evas_Coord elm_finger_size_get(void);
275 EAPI void elm_finger_size_set(Evas_Coord size);
276 EAPI void elm_finger_size_all_set(Evas_Coord size);
278 EAPI Eina_Bool elm_object_focus_get(Evas_Object *obj);
279 EAPI void elm_object_focus(Evas_Object *obj);
280 EAPI void elm_object_unfocus(Evas_Object *obj);
281 EAPI void elm_object_focus_allow_set(Evas_Object *obj, Eina_Bool enable);
282 EAPI Eina_Bool elm_object_focus_allow_get(const Evas_Object *obj);
284 EAPI void elm_object_scroll_hold_push(Evas_Object *obj);
285 EAPI void elm_object_scroll_hold_pop(Evas_Object *obj);
286 EAPI void elm_object_scroll_freeze_push(Evas_Object *obj);
287 EAPI void elm_object_scroll_freeze_pop(Evas_Object *obj);
288 EAPI void elm_object_scroll_lock_x_set(Evas_Object *obj, Eina_Bool lock);
289 EAPI void elm_object_scroll_lock_y_set(Evas_Object *obj, Eina_Bool lock);
290 EAPI Eina_Bool elm_object_scroll_lock_x_get(const Evas_Object *obj);
291 EAPI Eina_Bool elm_object_scroll_lock_y_get(const Evas_Object *obj);
293 EAPI void elm_coords_finger_size_adjust(int times_w, Evas_Coord *w, int times_h, Evas_Coord *h);
295 EAPI Elm_Theme *elm_theme_new(void);
296 EAPI void elm_theme_free(Elm_Theme *th);
297 EAPI void elm_theme_overlay_add(Elm_Theme *th, const char *item);
298 EAPI void elm_theme_overlay_del(Elm_Theme *th, const char *item);
299 EAPI void elm_theme_extension_add(Elm_Theme *th, const char *item);
300 EAPI void elm_theme_extension_del(Elm_Theme *th, const char *item);
301 EAPI void elm_theme_set(Elm_Theme *th, const char *theme);
302 EAPI const char *elm_theme_get(Elm_Theme *th);
303 EAPI void elm_theme_flush(Elm_Theme *th);
304 EAPI void elm_theme_full_flush(void);
306 EAPI void elm_theme_all_set(const char *theme);
308 EAPI void elm_object_theme_set(Evas_Object *obj, Elm_Theme *th);
309 EAPI Elm_Theme *elm_object_theme_get(Evas_Object *obj);
311 EAPI Evas_Object *elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type);
312 EAPI void elm_win_resize_object_add(Evas_Object *obj, Evas_Object *subobj);
313 EAPI void elm_win_resize_object_del(Evas_Object *obj, Evas_Object *subobj);
314 EAPI void elm_win_title_set(Evas_Object *obj, const char *title);
315 EAPI void elm_win_autodel_set(Evas_Object *obj, Eina_Bool autodel);
316 EAPI void elm_win_activate(Evas_Object *obj);
317 EAPI void elm_win_lower(Evas_Object *obj);
318 EAPI void elm_win_raise(Evas_Object *obj);
319 EAPI void elm_win_borderless_set(Evas_Object *obj, Eina_Bool borderless);
320 EAPI Eina_Bool elm_win_borderless_get(const Evas_Object *obj);
321 EAPI void elm_win_shaped_set(Evas_Object *obj, Eina_Bool shaped);
322 EAPI Eina_Bool elm_win_shaped_get(const Evas_Object *obj);
323 EAPI void elm_win_alpha_set(Evas_Object *obj, Eina_Bool alpha);
324 EAPI Eina_Bool elm_win_transparent_get(const Evas_Object *obj);
325 EAPI void elm_win_transparent_set(Evas_Object *obj, Eina_Bool transparent);
326 EAPI Eina_Bool elm_win_alpha_get(const Evas_Object *obj);
327 EAPI void elm_win_override_set(Evas_Object *obj, Eina_Bool override);
328 EAPI Eina_Bool elm_win_override_get(const Evas_Object *obj);
329 EAPI void elm_win_fullscreen_set(Evas_Object *obj, Eina_Bool fullscreen);
330 EAPI Eina_Bool elm_win_fullscreen_get(const Evas_Object *obj);
331 EAPI void elm_win_maximized_set(Evas_Object *obj, Eina_Bool maximized);
332 EAPI Eina_Bool elm_win_maximized_get(const Evas_Object *obj);
333 EAPI void elm_win_iconified_set(Evas_Object *obj, Eina_Bool iconified);
334 EAPI Eina_Bool elm_win_iconified_get(const Evas_Object *obj);
335 EAPI void elm_win_layer_set(Evas_Object *obj, int layer);
336 EAPI int elm_win_layer_get(const Evas_Object *obj);
337 EAPI void elm_win_rotation_set(Evas_Object *obj, int rotation);
338 EAPI void elm_win_rotation_with_resize_set(Evas_Object *obj, int rotation);
339 EAPI int elm_win_rotation_get(const Evas_Object *obj);
340 EAPI void elm_win_sticky_set(Evas_Object *obj, Eina_Bool sticky);
341 EAPI Eina_Bool elm_win_sticky_get(const Evas_Object *obj);
342 EAPI void elm_win_conformant_set(Evas_Object *obj, Eina_Bool conformant);
343 EAPI Eina_Bool elm_win_conformant_get(const Evas_Object *obj);
344 EAPI void elm_win_quickpanel_set(Evas_Object *obj, Eina_Bool quickpanel);
345 EAPI Eina_Bool elm_win_quickpanel_get(const Evas_Object *obj);
346 EAPI void elm_win_quickpanel_priority_major_set(Evas_Object *obj, int priority);
347 EAPI int elm_win_quickpanel_priority_major_get(const Evas_Object *obj);
348 EAPI void elm_win_quickpanel_priority_minor_set(Evas_Object *obj, int priority);
349 EAPI int elm_win_quickpanel_priority_minor_get(const Evas_Object *obj);
350 EAPI void elm_win_quickpanel_zone_set(Evas_Object *obj, int zone);
351 EAPI void elm_win_indicator_state_set(Evas_Object *obj, int show_state);
352 EAPI int elm_win_indicator_state_get(Evas_Object *obj);
355 * ecore_x_icccm_hints_set -> accepts_focus (add to ecore_evas)
356 * ecore_x_icccm_hints_set -> window_group (add to ecore_evas)
357 * ecore_x_icccm_size_pos_hints_set -> request_pos (add to ecore_evas)
358 * ecore_x_icccm_client_leader_set -> l (add to ecore_evas)
359 * ecore_x_icccm_window_role_set -> role (add to ecore_evas)
360 * ecore_x_icccm_transient_for_set -> forwin (add to ecore_evas)
361 * ecore_x_netwm_window_type_set -> type (add to ecore_evas)
363 * (add to ecore_x) set netwm argb icon! (add to ecore_evas)
364 * (blank mouse, private mouse obj, defaultmouse)
367 EAPI void elm_win_keyboard_mode_set(Evas_Object *obj, Elm_Win_Keyboard_Mode mode);
368 EAPI void elm_win_keyboard_win_set(Evas_Object *obj, Eina_Bool is_keyboard);
370 EAPI void elm_win_screen_position_get(const Evas_Object *obj, int *x, int *y);
372 EAPI Evas_Object *elm_win_inwin_add(Evas_Object *obj);
373 EAPI void elm_win_inwin_activate(Evas_Object *obj);
374 EAPI void elm_win_inwin_content_set(Evas_Object *obj, Evas_Object *content);
381 /* X specific calls - won't work on non-x engines (return 0) */
382 EAPI Ecore_X_Window elm_win_xwindow_get(const Evas_Object *obj);
383 /* smart callbacks called:
384 * "delete,request" - the user requested to delete the window
385 * "focus,in" - window got focus
386 * "focus,out" - window lost focus
387 * "moved" - window that holds the canvas was moved
390 EAPI Evas_Object *elm_bg_add(Evas_Object *parent);
391 EAPI void elm_bg_file_set(Evas_Object *obj, const char *file, const char *group);
392 /* smart callbacks called:
395 EAPI Evas_Object *elm_icon_add(Evas_Object *parent);
396 EAPI Eina_Bool elm_icon_file_set(Evas_Object *obj, const char *file, const char *group);
397 EAPI Eina_Bool elm_icon_standard_set(Evas_Object *obj, const char *name);
398 EAPI void elm_icon_smooth_set(Evas_Object *obj, Eina_Bool smooth);
399 EAPI void elm_icon_no_scale_set(Evas_Object *obj, Eina_Bool no_scale);
400 EAPI void elm_icon_scale_set(Evas_Object *obj, Eina_Bool scale_up, Eina_Bool scale_down);
401 EAPI void elm_icon_fill_outside_set(Evas_Object *obj, Eina_Bool fill_outside);
402 EAPI void elm_icon_prescale_set(Evas_Object *obj, int size);
403 /* smart callbacks called:
404 * "clicked" - the user clicked the icon
407 typedef enum _Elm_Image_Orient
409 ELM_IMAGE_ORIENT_NONE,
410 ELM_IMAGE_ROTATE_90_CW,
411 ELM_IMAGE_ROTATE_180_CW,
412 ELM_IMAGE_ROTATE_90_CCW,
413 ELM_IMAGE_FLIP_HORIZONTAL,
414 ELM_IMAGE_FLIP_VERTICAL,
415 ELM_IMAGE_FLIP_TRANSPOSE,
416 ELM_IMAGE_FLIP_TRANSVERSE
419 EAPI Evas_Object *elm_image_add(Evas_Object *parent);
420 EAPI Eina_Bool elm_image_file_set(Evas_Object *obj, const char *file, const char *group);
421 EAPI void elm_image_smooth_set(Evas_Object *obj, Eina_Bool smooth);
422 EAPI void elm_image_object_size_get(const Evas_Object *obj, int *w, int *h);
423 EAPI void elm_image_no_scale_set(Evas_Object *obj, Eina_Bool no_scale);
424 EAPI void elm_image_scale_set(Evas_Object *obj, Eina_Bool scale_up, Eina_Bool scale_down);
425 EAPI void elm_image_fill_outside_set(Evas_Object *obj, Eina_Bool fill_outside);
426 EAPI void elm_image_prescale_set(Evas_Object *obj, int size);
427 EAPI void elm_image_orient_set(Evas_Object *obj, Elm_Image_Orient orient);
428 /* smart callbacks called:
429 * "clicked" - the user clicked the image
432 EAPI Evas_Object *elm_box_add(Evas_Object *parent);
433 EAPI void elm_box_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
434 EAPI void elm_box_homogenous_set(Evas_Object *obj, Eina_Bool homogenous);
435 EAPI void elm_box_pack_start(Evas_Object *obj, Evas_Object *subobj);
436 EAPI void elm_box_pack_end(Evas_Object *obj, Evas_Object *subobj);
437 EAPI void elm_box_pack_before(Evas_Object *obj, Evas_Object *subobj, Evas_Object *before);
438 EAPI void elm_box_pack_after(Evas_Object *obj, Evas_Object *subobj, Evas_Object *after);
439 EAPI void elm_box_clear(Evas_Object *obj);
440 EAPI void elm_box_unpack(Evas_Object *obj, Evas_Object *subobj);
441 EAPI void elm_box_unpack_all(Evas_Object *obj);
442 /* smart callbacks called:
445 UIControlStateDefault,
446 UIControlStateHighlighted,
447 UIControlStateDisabled,
448 UIControlStateFocused,
449 UIControlStateReserved
452 EAPI Evas_Object *elm_button_add(Evas_Object *parent);
453 EAPI void elm_button_label_set(Evas_Object *obj, const char *label);
454 EAPI void elm_button_label_set_for_state(Evas_Object *obj, const char *label, UIControlState state);
455 EAPI const char *elm_button_label_get(const Evas_Object *obj);
456 EAPI const char *elm_button_label_get_for_state(const Evas_Object *obj, UIControlState state);
457 EAPI void elm_button_icon_set(Evas_Object *obj, Evas_Object *icon);
458 EAPI Evas_Object *elm_button_icon_get(const Evas_Object *obj);
459 EAPI void elm_button_autorepeat_set(Evas_Object *obj, Eina_Bool on);
460 EAPI void elm_button_autorepeat_initial_timeout_set(Evas_Object *obj, double t);
461 EAPI void elm_button_autorepeat_gap_timeout_set(Evas_Object *obj, double t);
463 EAPI Evas_Object *elm_fileselector_button_add(Evas_Object *parent);
464 EAPI void elm_fileselector_button_label_set(Evas_Object *obj, const char *label);
465 EAPI const char *elm_fileselector_button_label_get(const Evas_Object *obj);
466 EAPI void elm_fileselector_button_icon_set(Evas_Object *obj, Evas_Object *icon);
467 EAPI Evas_Object *elm_fileselector_button_icon_get(const Evas_Object *obj);
468 EAPI void elm_fileselector_button_window_title_set(Evas_Object *obj, const char *title);
469 EAPI const char *elm_fileselector_button_window_title_get(const Evas_Object *obj);
470 EAPI void elm_fileselector_button_window_size_set(Evas_Object *obj, Evas_Coord width, Evas_Coord height);
471 EAPI void elm_fileselector_button_window_size_get(const Evas_Object *obj, Evas_Coord *width, Evas_Coord *height);
472 EAPI void elm_fileselector_button_path_set(Evas_Object *obj, const char *path);
473 EAPI const char *elm_fileselector_button_path_get(const Evas_Object *obj);
474 EAPI void elm_fileselector_button_expandable_set(Evas_Object *obj, Eina_Bool value);
475 EAPI Eina_Bool elm_fileselector_button_expandable_get(const Evas_Object *obj);
476 EAPI void elm_fileselector_button_folder_only_set(Evas_Object *obj, Eina_Bool value);
477 EAPI Eina_Bool elm_fileselector_button_folder_only_get(const Evas_Object *obj);
478 EAPI void elm_fileselector_button_is_save_set(Evas_Object *obj, Eina_Bool value);
479 EAPI Eina_Bool elm_fileselector_button_is_save_get(const Evas_Object *obj);
480 EAPI void elm_fileselector_button_inwin_mode_set(Evas_Object *obj, Eina_Bool value);
481 EAPI Eina_Bool elm_fileselector_button_inwin_mode_get(const Evas_Object *obj);
482 EAPI void elm_fileselector_button_selected_set(Evas_Object *obj, const char *path);
483 EAPI const char *elm_fileselector_button_selected_get(const Evas_Object *obj);
489 * hoversel_vertical_entry
491 /* smart callbacks called:
492 * "clicked" - the user clicked the button
493 * "repeated" - the user pressed the button without releasing it
494 * "unpressed" - when the button is unpressed (released)
497 typedef enum _Elm_Scroller_Policy
499 ELM_SCROLLER_POLICY_AUTO = 0,
500 ELM_SCROLLER_POLICY_ON,
501 ELM_SCROLLER_POLICY_OFF,
502 ELM_SCROLLER_POLICY_LAST
506 EAPI Evas_Object *elm_scroller_add(Evas_Object *parent);
507 EAPI void elm_scroller_content_set(Evas_Object *obj, Evas_Object *child);
508 EAPI void elm_scroller_custom_widget_base_theme_set(Evas_Object *obj, const char *widget, const char *base);
509 EAPI void elm_scroller_content_min_limit(Evas_Object *obj, Eina_Bool w, Eina_Bool h);
510 EAPI void elm_scroller_region_show(Evas_Object *obj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h);
511 EAPI void elm_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v);
512 EAPI void elm_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v);
513 EAPI void elm_scroller_region_get(const Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h);
514 EAPI void elm_scroller_child_size_get(const Evas_Object *obj, Evas_Coord *w, Evas_Coord *h);
515 EAPI void elm_scroller_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
516 EAPI void elm_scroller_page_relative_set(Evas_Object *obj, double h_pagerel, double v_pagerel);
517 EAPI void elm_scroller_page_size_set(Evas_Object *obj, Evas_Coord h_pagesize, Evas_Coord v_pagesize);
518 EAPI void elm_scroller_region_bring_in(Evas_Object *obj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h);
519 EAPI void elm_scroller_page_move_set(Evas_Object *obj, Eina_Bool set);
521 /* smart callbacks called:
527 * "scroll,anim,start"
529 * "scroll,drag,start"
533 EAPI Evas_Object *elm_label_add(Evas_Object *parent);
534 EAPI void elm_label_label_set(Evas_Object *obj, const char *label);
535 EAPI const char *elm_label_label_get(const Evas_Object *obj);
536 EAPI void elm_label_line_wrap_set(Evas_Object *obj, Eina_Bool wrap);
537 EAPI Eina_Bool elm_label_line_wrap_get(const Evas_Object *obj);
538 EAPI void elm_label_wrap_width_set(Evas_Object *obj, Evas_Coord w);
539 EAPI Evas_Coord elm_label_wrap_width_get(const Evas_Object *obj);
540 EAPI void elm_label_fontsize_set(Evas_Object *obj, int fontsize);
541 EAPI void elm_label_text_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a);
542 EAPI void elm_label_text_align_set(Evas_Object *obj, const char *alignmode);
543 EAPI void elm_label_background_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a);
544 EAPI void elm_label_ellipsis_set(Evas_Object *obj, Eina_Bool ellipsis);
549 /* smart callbacks called:
552 EAPI Evas_Object *elm_toggle_add(Evas_Object *parent);
553 EAPI void elm_toggle_label_set(Evas_Object *obj, const char *label);
554 EAPI const char *elm_toggle_label_get(const Evas_Object *obj);
555 EAPI void elm_toggle_icon_set(Evas_Object *obj, Evas_Object *icon);
556 EAPI Evas_Object *elm_toggle_icon_get(const Evas_Object *obj);
557 EAPI void elm_toggle_states_labels_set(Evas_Object *obj, const char *onlabel, const char *offlabel);
558 EAPI void elm_toggle_states_labels_get(const Evas_Object *obj, const char **onlabel, const char **offlabel);
559 EAPI void elm_toggle_state_set(Evas_Object *obj, Eina_Bool state);
560 EAPI Eina_Bool elm_toggle_state_get(const Evas_Object *obj);
561 EAPI void elm_toggle_state_pointer_set(Evas_Object *obj, Eina_Bool *statep);
562 /* smart callbacks called:
563 * "changed" - the user toggled the state
566 EAPI Evas_Object *elm_frame_add(Evas_Object *parent);
567 EAPI void elm_frame_label_set(Evas_Object *obj, const char *label);
568 EAPI const char *elm_frame_label_get(const Evas_Object *obj);
569 EAPI void elm_frame_content_set(Evas_Object *obj, Evas_Object *content);
579 /* smart callbacks called:
582 EAPI Evas_Object *elm_table_add(Evas_Object *parent);
583 EAPI void elm_table_homogenous_set(Evas_Object *obj, Eina_Bool homogenous);
584 EAPI void elm_table_padding_set(Evas_Object *obj, Evas_Coord horizontal, Evas_Coord vertical);
585 EAPI void elm_table_pack(Evas_Object *obj, Evas_Object *subobj, int x, int y, int w, int h);
586 EAPI void elm_table_unpack(Evas_Object *obj, Evas_Object *subobj);
587 EAPI void elm_table_clear(Evas_Object *obj, Eina_Bool clear);
589 typedef struct _Elm_Gengrid_Item_Class Elm_Gengrid_Item_Class;
590 typedef struct _Elm_Gengrid_Item_Class_Func Elm_Gengrid_Item_Class_Func;
591 typedef struct _Elm_Gengrid_Item Elm_Gengrid_Item;
592 typedef char *(*GridItemLabelGetFunc) (const void *data, Evas_Object *obj, const char *part);
593 typedef Evas_Object *(*GridItemIconGetFunc) (const void *data, Evas_Object *obj, const char *part);
594 typedef Eina_Bool (*GridItemStateGetFunc) (const void *data, Evas_Object *obj, const char *part);
595 typedef void (*GridItemDelFunc) (const void *data, Evas_Object *obj);
597 struct _Elm_Gengrid_Item_Class
599 const char *item_style;
600 struct _Elm_Gengrid_Item_Class_Func
602 GridItemLabelGetFunc label_get;
603 GridItemIconGetFunc icon_get;
604 GridItemStateGetFunc state_get;
609 EAPI Evas_Object *elm_gengrid_add(Evas_Object *parent);
610 EAPI void elm_gengrid_item_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
611 EAPI void elm_gengrid_item_size_get(const Evas_Object *obj, Evas_Coord *w, Evas_Coord *h);
612 EAPI void elm_gengrid_align_set(Evas_Object *obj, double align_x, double align_y);
613 EAPI void elm_gengrid_align_get(const Evas_Object *obj, double *align_x, double *align_y);
614 EAPI void elm_gengrid_item_del(Elm_Gengrid_Item *item);
615 EAPI void elm_gengrid_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select);
616 EAPI Eina_Bool elm_gengrid_always_select_mode_get(const Evas_Object *obj);
617 EAPI void elm_gengrid_no_select_mode_set(Evas_Object *obj, Eina_Bool no_select);
618 EAPI Eina_Bool elm_gengrid_no_select_mode_get(const Evas_Object *obj);
619 EAPI void elm_gengrid_multi_select_set(Evas_Object *obj, Eina_Bool multi);
620 EAPI Eina_Bool elm_gengrid_multi_select_get(const Evas_Object *obj);
621 EAPI void elm_gengrid_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
622 EAPI void elm_gengrid_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce);
623 EAPI void elm_gengrid_horizontal_set(Evas_Object *obj, Eina_Bool setting);
624 EAPI void elm_gengrid_clear(Evas_Object *obj);
625 EAPI void *elm_gengrid_item_data_get(Elm_Gengrid_Item *item);
626 EAPI void elm_gengrid_item_pos_get(const Elm_Gengrid_Item *item, unsigned int *x, unsigned int *y);
627 EAPI void elm_gengrid_item_selected_set(Elm_Gengrid_Item *item, Eina_Bool selected);
628 EAPI Eina_Bool elm_gengrid_item_selected_get(const Elm_Gengrid_Item *item);
629 EAPI const Evas_Object *elm_gengrid_item_object_get(Elm_Gengrid_Item *item);
630 EAPI const Eina_List *elm_gengrid_selected_items_get(const Evas_Object *obj);
631 EAPI Elm_Gengrid_Item *elm_gengrid_item_append(Evas_Object *obj, const Elm_Gengrid_Item_Class *gcc, const void *data, Evas_Smart_Cb func, const void *func_data);
632 /* smart callbacks called:
634 * selected - User has selected a item.
635 * unselected - User has unselected a item.
636 * clicked - User has double-clicked a item.
637 * realized - An evas object for a item was built.
638 * scroll - the content has been scrolled (moved).
639 * "scroll,drag,start" - dragging the contents around has started.
640 * "scroll,drat,stop" - dragging the contents around has stopped.
641 * drag - Gengrid is being dragged.
642 * "drag,start,up" - Gengrid has been dragged (not scrolled) up.
643 * "drag,start,down" - Gengrid has been dragged (not scrolled) down.
644 * "drag,start,left" - Gengrid has been dragged (not scrolled) left.
645 * "drag,start,rigth" - Gengrid has been dragged (nto scrolled) right.
646 * "drag,stop" - Gengrid is not being dragged.
649 EAPI Evas_Object *elm_clock_add(Evas_Object *parent);
650 EAPI void elm_clock_time_set(Evas_Object *obj, int hrs, int min, int sec);
651 EAPI void elm_clock_time_get(const Evas_Object *obj, int *hrs, int *min, int *sec);
652 EAPI void elm_clock_edit_set(Evas_Object *obj, Eina_Bool edit);
653 EAPI Eina_Bool elm_clock_edit_get(const Evas_Object *obj);
654 EAPI void elm_clock_digit_edit_set(Evas_Object *obj, Elm_Clock_Digedit digedit);
655 EAPI Elm_Clock_Digedit elm_clock_digit_edit_get(const Evas_Object *obj);
656 EAPI void elm_clock_show_am_pm_set(Evas_Object *obj, Eina_Bool am_pm);
657 EAPI Eina_Bool elm_clock_show_am_pm_get(const Evas_Object *obj);
658 EAPI void elm_clock_show_seconds_set(Evas_Object *obj, Eina_Bool seconds);
659 EAPI Eina_Bool elm_clock_show_seconds_get(const Evas_Object *obj);
660 /* smart callbacks called:
661 * "changed" - the user changed the time
664 EAPI Evas_Object *elm_layout_add(Evas_Object *parent);
665 EAPI Eina_Bool elm_layout_file_set(Evas_Object *obj, const char *file, const char *group);
666 EAPI Eina_Bool elm_layout_theme_set(Evas_Object *obj, const char *clas, const char *group, const char *style);
667 EAPI void elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content);
668 EAPI Evas_Object *elm_layout_edje_get(const Evas_Object *obj);
669 EAPI void elm_layout_sizing_eval(Evas_Object *obj);
670 /* smart callbacks called:
673 typedef enum _Elm_Notify_Orient
675 ELM_NOTIFY_ORIENT_TOP,
676 ELM_NOTIFY_ORIENT_CENTER,
677 ELM_NOTIFY_ORIENT_BOTTOM,
678 ELM_NOTIFY_ORIENT_LEFT,
679 ELM_NOTIFY_ORIENT_RIGHT,
680 ELM_NOTIFY_ORIENT_TOP_LEFT,
681 ELM_NOTIFY_ORIENT_TOP_RIGHT,
682 ELM_NOTIFY_ORIENT_BOTTOM_LEFT,
683 ELM_NOTIFY_ORIENT_BOTTOM_RIGHT
685 EAPI Evas_Object *elm_notify_add(Evas_Object *parent);
686 EAPI void elm_notify_content_set(Evas_Object *obj, Evas_Object *content);
687 EAPI void elm_notify_parent_set(Evas_Object *obj, Evas_Object *parent);
688 EAPI void elm_notify_orient_set(Evas_Object *obj, Elm_Notify_Orient orient);
689 EAPI void elm_notify_timeout_set(Evas_Object *obj, int timeout);
690 EAPI void elm_notify_timer_init(Evas_Object *obj);
691 EAPI void elm_notify_repeat_events_set(Evas_Object *obj, Eina_Bool repeat);
692 /* smart callbacks called:
695 typedef enum _Elm_Hover_Axis
698 ELM_HOVER_AXIS_HORIZONTAL,
699 ELM_HOVER_AXIS_VERTICAL,
702 EAPI Evas_Object *elm_hover_add(Evas_Object *parent);
703 EAPI void elm_hover_target_set(Evas_Object *obj, Evas_Object *target);
704 EAPI Evas_Object *elm_hover_target_get(Evas_Object *obj);
705 EAPI void elm_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
706 EAPI Evas_Object *elm_hover_parent_get(Evas_Object *obj);
707 EAPI void elm_hover_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content);
708 EAPI const char *elm_hover_best_content_location_get(const Evas_Object *obj, Elm_Hover_Axis pref_axis);
715 /* smart callbacks called:
716 * "clicked" - the user clicked the empty space in the hover to dismiss
719 typedef struct _Elm_Entry_Anchor_Info Elm_Entry_Anchor_Info;
720 struct _Elm_Entry_Anchor_Info
724 Evas_Coord x, y, w, h;
726 typedef enum _Elm_Icon_Type
732 typedef struct _Elm_Hoversel_Item Elm_Hoversel_Item;
734 typedef enum _Elm_Input_Panel_Layout
736 ELM_INPUT_PANEL_LAYOUT_NORMAL,
737 ELM_INPUT_PANEL_LAYOUT_NUMBER,
738 ELM_INPUT_PANEL_LAYOUT_EMAIL,
739 ELM_INPUT_PANEL_LAYOUT_URL,
740 ELM_INPUT_PANEL_LAYOUT_PHONENUMBER,
741 ELM_INPUT_PANEL_LAYOUT_IP,
742 } Elm_Input_Panel_Layout;
744 EAPI Evas_Object *elm_entry_add(Evas_Object *parent);
745 EAPI void elm_entry_single_line_set(Evas_Object *obj, Eina_Bool single_line);
746 EAPI Eina_Bool elm_entry_single_line_get(const Evas_Object *obj);
747 EAPI void elm_entry_password_set(Evas_Object *obj, Eina_Bool password);
748 EAPI Eina_Bool elm_entry_password_get(const Evas_Object *obj);
749 EAPI void elm_entry_password_show_last_character_set(Evas_Object *obj, Eina_Bool show_last_character);
751 EAPI void elm_entry_entry_set(Evas_Object *obj, const char *entry);
752 EAPI const char *elm_entry_entry_get(const Evas_Object *obj);
753 EAPI const char *elm_entry_selection_get(const Evas_Object *obj);
754 EAPI void elm_entry_entry_insert(Evas_Object *obj, const char *entry);
755 EAPI void elm_entry_line_wrap_set(Evas_Object *obj, Eina_Bool wrap);
756 EAPI void elm_entry_line_char_wrap_set(Evas_Object *obj, Eina_Bool wrap);
757 EAPI void elm_entry_wrap_width_set(Evas_Object *obj, Evas_Coord w);
758 EAPI Evas_Coord elm_entry_wrap_width_get(const Evas_Object *obj);
759 EAPI void elm_entry_editable_set(Evas_Object *obj, Eina_Bool editable);
760 EAPI Eina_Bool elm_entry_editable_get(const Evas_Object *obj);
761 EAPI void elm_entry_select_none(Evas_Object *obj);
762 EAPI void elm_entry_select_all(Evas_Object *obj);
763 EAPI Eina_Bool elm_entry_cursor_next(Evas_Object *obj);
764 EAPI Eina_Bool elm_entry_cursor_prev(Evas_Object *obj);
765 EAPI Eina_Bool elm_entry_cursor_up(Evas_Object *obj);
766 EAPI Eina_Bool elm_entry_cursor_down(Evas_Object *obj);
767 EAPI void elm_entry_cursor_begin_set(Evas_Object *obj);
768 EAPI void elm_entry_cursor_end_set(Evas_Object *obj);
769 EAPI void elm_entry_cursor_line_begin_set(Evas_Object *obj);
770 EAPI void elm_entry_cursor_line_end_set(Evas_Object *obj);
771 EAPI void elm_entry_cursor_selection_begin(Evas_Object *obj);
772 EAPI void elm_entry_cursor_selection_end(Evas_Object *obj);
773 EAPI Eina_Bool elm_entry_cursor_is_format_get(const Evas_Object *obj);
774 EAPI Eina_Bool elm_entry_cursor_is_visible_format_get(const Evas_Object *obj);
775 EAPI const char *elm_entry_cursor_content_get(const Evas_Object *obj);
776 EAPI void elm_entry_selection_cut(Evas_Object *obj);
777 EAPI void elm_entry_selection_copy(Evas_Object *obj);
778 EAPI void elm_entry_selection_paste(Evas_Object *obj);
779 EAPI void elm_entry_context_menu_clear(Evas_Object *obj);
780 EAPI void elm_entry_context_menu_item_add(Evas_Object *obj, const char *label, const char *icon_file, Elm_Icon_Type icon_type, Evas_Smart_Cb func, const void *data);
781 EAPI void elm_entry_context_menu_disabled_set(Evas_Object *obj, Eina_Bool disabled);
782 EAPI Eina_Bool elm_entry_context_menu_disabled_get(const Evas_Object *obj);
783 EAPI void elm_entry_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data);
784 EAPI void elm_entry_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data);
785 EAPI void elm_entry_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data);
786 EAPI char *elm_entry_markup_to_utf8(const char *s);
787 EAPI char *elm_entry_utf8_to_markup(const char *s);
788 EAPI void elm_entry_fontsize_set(Evas_Object *obj, const int fontsize);
789 EAPI void elm_entry_text_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a);
790 EAPI void elm_entry_text_align_set(Evas_Object *obj, char *alignmode);
791 EAPI void elm_entry_background_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a);
792 EAPI void elm_entry_ellipsis_set(Evas_Object *obj, Eina_Bool ellipsis);
794 EAPI void elm_entry_autocapitalization_set(Evas_Object *obj, Eina_Bool on);
795 EAPI void elm_entry_autoenable_returnkey_set(Evas_Object *obj, Eina_Bool on);
796 EAPI void elm_entry_input_panel_enabled_set(Evas_Object *obj, Eina_Bool enabled);
797 EAPI void elm_entry_input_panel_layout_set(Evas_Object *obj, Elm_Input_Panel_Layout layout);
798 EAPI Ecore_IMF_Context *elm_entry_imf_context_get(Evas_Object *obj);
799 EAPI void elm_entry_maximum_bytes_set(Evas_Object *obj, int max_no_of_bytes);
801 /* smart callbacks called:
802 * "changed" - the text content changed
803 * "selection,start" - the user started selecting text
804 * "selection,changed" - the user modified the selection size/location
805 * "selection,cleared" - the user cleared the selection
806 * "selection,paste" - the user requested a paste of text
807 * "selection,copy" - the user copied the text
808 * "selection,cut" - the user cut the text
809 * "cursor,changed" - the cursor changed position
810 * "anchor,clicked" - achor called was clicked | event_info = Elm_Entry_Anchor_Info
811 * "activated" - when the enter key is pressed (useful for single line)
812 * "press" - when finger/mouse is pressed down
813 * "clicked" - when finger/mouse is pressed and released (without a drag etc.)
814 * "clicked,double" - when finger/mouse is double-pressed
815 * "longpressed" - the entry has been longpressed
816 * "focused" - the entry has received keyboard focus
817 * "unfocused" - keyboard focus is gone
820 /* composite widgets - these basically put together basic widgets above
821 * in convenient packages that do more than basic stuff */
822 typedef enum _Elm_Text_Format
824 ELM_TEXT_FORMAT_PLAIN_UTF8,
825 ELM_TEXT_FORMAT_MARKUP_UTF8
827 EAPI Evas_Object *elm_notepad_add(Evas_Object *parent);
828 EAPI void elm_notepad_file_set(Evas_Object *obj, const char *file, Elm_Text_Format format);
829 EAPI void elm_notepad_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
830 /* smart callbacks called:
833 typedef struct _Elm_Entry_Anchorview_Info Elm_Entry_Anchorview_Info;
834 struct _Elm_Entry_Anchorview_Info
841 Evas_Coord x, y, w, h;
842 } anchor, hover_parent;
843 Eina_Bool hover_left : 1;
844 Eina_Bool hover_right : 1;
845 Eina_Bool hover_top : 1;
846 Eina_Bool hover_bottom : 1;
848 EAPI Evas_Object *elm_anchorview_add(Evas_Object *parent);
849 EAPI void elm_anchorview_text_set(Evas_Object *obj, const char *text);
850 EAPI const char *elm_anchorview_text_get(const Evas_Object *obj);
852 EAPI void elm_anchorview_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
853 EAPI void elm_anchorview_hover_style_set(Evas_Object *obj, const char *style);
854 EAPI void elm_anchorview_hover_end(Evas_Object *obj);
855 EAPI void elm_anchorview_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
856 EAPI void elm_anchorview_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorview, const char *item), void *data);
857 EAPI void elm_anchorview_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorview, const char *item), void *data);
858 EAPI void elm_anchorview_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorview, const char *item), void *data);
859 /* smart callbacks called:
860 * "anchor,clicked" - achor called was clicked | event_info = Elm_Entry_Anchorview_Info
863 typedef struct _Elm_Entry_Anchorblock_Info Elm_Entry_Anchorblock_Info;
864 struct _Elm_Entry_Anchorblock_Info
871 Evas_Coord x, y, w, h;
872 } anchor, hover_parent;
873 Eina_Bool hover_left : 1;
874 Eina_Bool hover_right : 1;
875 Eina_Bool hover_top : 1;
876 Eina_Bool hover_bottom : 1;
878 EAPI Evas_Object *elm_anchorblock_add(Evas_Object *parent);
879 EAPI void elm_anchorblock_text_set(Evas_Object *obj, const char *text);
880 EAPI const char *elm_anchorblock_text_get(const Evas_Object *obj);
881 EAPI void elm_anchorblock_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
882 EAPI void elm_anchorblock_hover_style_set(Evas_Object *obj, const char *style);
883 EAPI void elm_anchorblock_hover_end(Evas_Object *obj);
884 EAPI void elm_anchorblock_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorblock, const char *item), void *data);
885 EAPI void elm_anchorblock_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorblock, const char *item), void *data);
886 EAPI void elm_anchorblock_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorblock, const char *item), void *data);
887 /* smart callbacks called:
888 * "anchor,clicked" - achor called was clicked | event_info = Elm_Entry_Anchorblock_Info
891 EAPI Evas_Object *elm_bubble_add(Evas_Object *parent);
892 EAPI void elm_bubble_label_set(Evas_Object *obj, const char *label);
893 EAPI const char *elm_bubble_label_get(const Evas_Object *obj);
894 EAPI void elm_bubble_info_set(Evas_Object *obj, const char *info);
895 EAPI const char *elm_bubble_info_get(const Evas_Object *obj);
897 EAPI void elm_bubble_content_set(Evas_Object *obj, Evas_Object *content);
898 EAPI void elm_bubble_icon_set(Evas_Object *obj, Evas_Object *icon);
899 EAPI Evas_Object *elm_bubble_icon_get(const Evas_Object *obj);
900 EAPI void elm_bubble_corner_set(Evas_Object *obj, const char *corner);
901 /* smart callbacks called:
904 EAPI Evas_Object *elm_photo_add(Evas_Object *parent);
905 EAPI Eina_Bool elm_photo_file_set(Evas_Object *obj, const char *file);
906 EAPI void elm_photo_size_set(Evas_Object *obj, int size);
907 /* smart callbacks called:
908 * "clicked" - the user clicked the icon
911 EAPI Evas_Object *elm_thumb_add(Evas_Object *parent);
912 EAPI void elm_thumb_file_set(Evas_Object *obj, const char *file, const char *key);
913 EAPI void elm_thumb_file_get(const Evas_Object *obj, const char **file, const char **key);
914 EAPI void elm_thumb_path_get(const Evas_Object *obj, const char **file, const char **key);
915 EAPI void elm_thumb_keep_aspect_set(Evas_Object *obj, Eina_Bool setting);
916 EAPI Eina_Bool elm_thumb_keep_aspect_get(const Evas_Object *obj);
917 EAPI void elm_thumb_align_set(Evas_Object *obj, float x_align, float y_align);
918 EAPI void elm_thumb_align_get(const Evas_Object *obj, float *x, float *y);
919 EAPI void elm_thumb_animate_set(Evas_Object *obj, Elm_Thumb_Animation_Setting s);
920 EAPI Elm_Thumb_Animation_Setting elm_thumb_animate_get(const Evas_Object *obj);
921 EAPI Eina_Bool elm_thumb_ethumb_client_connected(void);
923 EAPI Ethumb_Client *elm_thumb_ethumb_client_get(void);
925 EAPI void *elm_thumb_ethumb_client_get(void);
927 /* smart callbacks called:
928 * "clicked" - the user clicked the thumb
929 * "clicked,double" - the user double clicked the thumb
930 * "press" - the user pressed the thumb
931 * "generate,start" - the thumbnail generation started
932 * "generate,stop" - the thumbnail generation stopped
933 * "generate,error" - the thumbnail generation failed
934 * "load,error" - the thumbnail image loading failed
937 EAPI Evas_Object *elm_hoversel_add(Evas_Object *parent);
938 EAPI void elm_hoversel_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
939 EAPI Eina_Bool elm_hoversel_horizontal_get(const Evas_Object *obj);
940 EAPI void elm_hoversel_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
941 EAPI void elm_hoversel_label_set(Evas_Object *obj, const char *label);
942 EAPI const char *elm_hoversel_label_get(const Evas_Object *obj);
943 EAPI void elm_hoversel_icon_set(Evas_Object *obj, Evas_Object *icon);
944 EAPI Evas_Object *elm_hoversel_icon_get(const Evas_Object *obj);
945 EAPI void elm_hoversel_hover_begin(Evas_Object *obj);
946 EAPI void elm_hoversel_hover_end(Evas_Object *obj);
947 EAPI Eina_Bool elm_hoversel_expanded_get(Evas_Object *obj);
948 EAPI void elm_hoversel_clear(Evas_Object *obj);
949 EAPI const Eina_List * elm_hoversel_items_get(const Evas_Object *obj);
950 EAPI Elm_Hoversel_Item *elm_hoversel_item_add(Evas_Object *obj, const char *label, const char *icon_file, Elm_Icon_Type icon_type, Evas_Smart_Cb func, const void *data);
951 EAPI void elm_hoversel_item_del(Elm_Hoversel_Item *item);
952 EAPI void elm_hoversel_item_del_cb_set(Elm_Hoversel_Item *it, Evas_Smart_Cb func);
953 EAPI void *elm_hoversel_item_data_get(Elm_Hoversel_Item *it);
954 EAPI const char *elm_hoversel_item_label_get(Elm_Hoversel_Item *it);
955 EAPI void elm_hoversel_item_icon_set(Elm_Hoversel_Item *it, const char *icon_file, const char *icon_group, Elm_Icon_Type icon_type);
956 EAPI void elm_hoversel_item_icon_get(Elm_Hoversel_Item *it, const char **icon_file, const char **icon_group, Elm_Icon_Type *icon_type);
957 /* smart callbacks called:
958 * "clicked" - the user clicked the hoversel button and popped up the sel
959 * "selected" - an item in the hoversel list is selected
960 * "dismissed" - the hover is dismissed
963 typedef struct _Elm_Toolbar_Item Elm_Toolbar_Item;
964 EAPI Evas_Object *elm_toolbar_add(Evas_Object *parent);
965 EAPI void elm_toolbar_icon_size_set(Evas_Object *obj, int icon_size);
966 EAPI int elm_toolbar_icon_size_get(const Evas_Object *obj);
967 EAPI Elm_Toolbar_Item *elm_toolbar_item_add(Evas_Object *obj, Evas_Object *icon, const char *label, Evas_Smart_Cb func, const void *data);
968 EAPI Evas_Object *elm_toolbar_item_icon_get(Elm_Toolbar_Item *item);
969 EAPI const char *elm_toolbar_item_label_get(const Elm_Toolbar_Item *item);
970 EAPI Eina_Bool elm_toolbar_item_selected_get(const Elm_Toolbar_Item *item);
971 EAPI void elm_toolbar_item_label_set(Elm_Toolbar_Item *item, const char *label);
972 EAPI void elm_toolbar_item_del(Elm_Toolbar_Item *item);
973 EAPI void elm_toolbar_item_del_cb_set(Elm_Toolbar_Item *it, Evas_Smart_Cb func);
974 EAPI void elm_toolbar_item_select(Elm_Toolbar_Item *item);
975 EAPI Eina_Bool elm_toolbar_item_disabled_get(Elm_Toolbar_Item *item);
976 EAPI void elm_toolbar_item_disabled_set(Elm_Toolbar_Item *item, Eina_Bool disabled);
977 EAPI void elm_toolbar_item_separator_set(Elm_Toolbar_Item *item, Eina_Bool separator);
978 EAPI Eina_Bool elm_toolbar_item_separator_get(Elm_Toolbar_Item *item);
979 EAPI Eina_List *elm_toolbar_item_get_all(Evas_Object *obj);
980 EAPI Elm_Toolbar_Item *elm_toolbar_item_get_first(Evas_Object *obj);
981 EAPI Elm_Toolbar_Item *elm_toolbar_item_get_last(Evas_Object *obj);
982 EAPI Elm_Toolbar_Item *elm_toolbar_item_get_next(Evas_Object *obj);
983 EAPI Elm_Toolbar_Item *elm_toolbar_item_select_next(Evas_Object *obj);
984 EAPI Elm_Toolbar_Item *elm_toolbar_item_select_first(Evas_Object *obj);
985 EAPI Elm_Toolbar_Item *elm_toolbar_item_select_last(Evas_Object *obj);
986 EAPI Elm_Toolbar_Item *elm_toolbar_item_find_by_label(Evas_Object *obj, const char *label);
987 EAPI void elm_toolbar_scrollable_set(Evas_Object *obj, Eina_Bool scrollable);
988 EAPI Eina_Bool elm_toolbar_scrollable_get(Evas_Object *obj);
989 EAPI void elm_toolbar_homogenous_set(Evas_Object *obj, Eina_Bool homogenous);
990 EAPI Eina_Bool elm_toolbar_homogenous_get(Evas_Object *obj);
991 EAPI void elm_toolbar_menu_parent_set(Evas_Object *obj, Evas_Object *parent);
992 EAPI Evas_Object *elm_toolbar_menu_parent_get(Evas_Object *obj);
993 EAPI void elm_toolbar_item_unselect_all(Evas_Object *obj);
994 EAPI void elm_toolbar_align_set(Evas_Object *obj, double align);
995 EAPI double elm_toolbar_align_get(const Evas_Object *obj);
996 EAPI void elm_toolbar_item_menu_set(Elm_Toolbar_Item *item, Eina_Bool menu);
997 EAPI Evas_Object *elm_toolbar_item_menu_get(Elm_Toolbar_Item *item);
998 /* smart callbacks called:
999 * "clicked" - when the user clicks on a toolbar item and becomes selected
1002 typedef struct _Menu_Item Elm_Menu_Item;
1003 EAPI Evas_Object *elm_menu_add(Evas_Object *parent);
1004 EAPI void elm_menu_parent_set(Evas_Object *obj, Evas_Object *parent);
1005 EAPI void elm_menu_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
1006 EAPI Evas_Object *elm_menu_object_get(const Elm_Menu_Item *it);
1007 EAPI Elm_Menu_Item *elm_menu_item_add(Evas_Object *obj, Elm_Menu_Item *parent, Evas_Object *icon, const char *label, Evas_Smart_Cb func, const void *data);
1008 EAPI void elm_menu_item_label_set(Elm_Menu_Item *item, const char *label);
1009 EAPI const char *elm_menu_item_label_get(Elm_Menu_Item *item);
1010 EAPI void elm_menu_item_icon_set(Elm_Menu_Item *item, Evas_Object *icon);
1011 EAPI Evas_Object *elm_menu_item_icon_get(Elm_Menu_Item *item);
1012 EAPI void elm_menu_item_disabled_set(Elm_Menu_Item *item, Eina_Bool disabled);
1013 EAPI Eina_Bool elm_menu_item_disabled_get(Elm_Menu_Item *item);
1014 EAPI Elm_Menu_Item *elm_menu_item_separator_add(Evas_Object *obj, Elm_Menu_Item *parent);
1015 EAPI Eina_Bool elm_menu_item_is_separator(Elm_Menu_Item *item);
1016 EAPI void elm_menu_item_del(Elm_Menu_Item *item);
1017 EAPI void elm_menu_item_del_cb_set(Elm_Menu_Item *it, Evas_Smart_Cb func);
1018 EAPI void *elm_menu_item_data_get(const Elm_Menu_Item *it);
1019 EAPI void elm_menu_item_data_set(Elm_Menu_Item *item, const void *data);
1020 EAPI const Eina_List *elm_menu_item_subitems_get(Elm_Menu_Item *item);
1021 /* smart callbacks called:
1022 * "clicked" - the user clicked the empty space in the menu to dismiss. event_info is NULL.
1025 typedef enum _Elm_List_Mode
1027 ELM_LIST_COMPRESS = 0,
1032 typedef struct _Elm_List_Item Elm_List_Item;
1033 EAPI Evas_Object *elm_list_add(Evas_Object *parent);
1034 EAPI Elm_List_Item *elm_list_item_append(Evas_Object *obj, const char *label, Evas_Object *icon, Evas_Object *end, Evas_Smart_Cb func, const void *data);
1035 EAPI Elm_List_Item *elm_list_item_prepend(Evas_Object *obj, const char *label, Evas_Object *icon, Evas_Object *end, Evas_Smart_Cb func, const void *data);
1036 EAPI Elm_List_Item *elm_list_item_insert_before(Evas_Object *obj, Elm_List_Item *before, const char *label, Evas_Object *icon, Evas_Object *end, Evas_Smart_Cb func, const void *data);
1037 EAPI Elm_List_Item *elm_list_item_insert_after(Evas_Object *obj, Elm_List_Item *after, const char *label, Evas_Object *icon, Evas_Object *end, Evas_Smart_Cb func, const void *data);
1038 EAPI Elm_List_Item *elm_list_item_sorted_insert(Evas_Object *obj, const char *label, Evas_Object *icon, Evas_Object *end, Evas_Smart_Cb func, const void *data, Eina_Compare_Cb cmp_func);
1039 EAPI void elm_list_clear(Evas_Object *obj);
1040 EAPI void elm_list_go(Evas_Object *obj);
1041 EAPI void elm_list_multi_select_set(Evas_Object *obj, Eina_Bool multi);
1042 EAPI Eina_Bool elm_list_multi_select_get(const Evas_Object *obj);
1043 EAPI void elm_list_horizontal_mode_set(Evas_Object *obj, Elm_List_Mode mode);
1044 EAPI Elm_List_Mode elm_list_horizontal_mode_get(const Evas_Object *obj);
1045 EAPI void elm_list_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select);
1046 EAPI Eina_Bool elm_list_always_select_mode_get(const Evas_Object *obj);
1047 EAPI const Eina_List *elm_list_items_get(const Evas_Object *obj);
1048 EAPI Elm_List_Item *elm_list_selected_item_get(const Evas_Object *obj);
1049 EAPI const Eina_List *elm_list_selected_items_get(const Evas_Object *obj);
1050 EAPI void elm_list_item_selected_set(Elm_List_Item *item, Eina_Bool selected);
1051 EAPI Eina_Bool elm_list_item_selected_get(Elm_List_Item *item);
1052 EAPI void elm_list_item_show(Elm_List_Item *item);
1053 EAPI void elm_list_item_del(Elm_List_Item *item);
1054 EAPI void elm_list_item_del_cb_set(Elm_List_Item *item, Evas_Smart_Cb func);
1055 EAPI void *elm_list_item_data_get(const Elm_List_Item *item);
1056 EAPI Evas_Object *elm_list_item_icon_get(const Elm_List_Item *item);
1057 EAPI void elm_list_item_icon_set(Elm_List_Item *item, Evas_Object *icon);
1058 EAPI Evas_Object *elm_list_item_end_get(const Elm_List_Item *item);
1059 EAPI void elm_list_item_end_set(Elm_List_Item *item, Evas_Object *end);
1060 EAPI Evas_Object *elm_list_item_base_get(const Elm_List_Item *item);
1061 EAPI const char *elm_list_item_label_get(const Elm_List_Item *item);
1062 EAPI void elm_list_item_label_set(Elm_List_Item *item, const char *text);
1063 EAPI Elm_List_Item *elm_list_item_prev(const Elm_List_Item *it);
1064 EAPI Elm_List_Item *elm_list_item_next(const Elm_List_Item *it);
1065 EAPI void elm_list_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
1066 EAPI void elm_list_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v);
1067 EAPI void elm_list_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v);
1069 /* smart callbacks called:
1070 * "clicked" - when the user double-clicked an item
1071 * "selected" - when the user selected an item
1072 * "unselected" - when the user selected an item
1073 * "longpressed" - an item in the hoversel list is long-pressed
1076 // FIXME: incomplete - carousel. don't use this until this comment is removed
1077 typedef struct _Elm_Carousel_Item Elm_Carousel_Item;
1078 EAPI Evas_Object *elm_carousel_add(Evas_Object *parent);
1079 EAPI Elm_Carousel_Item *elm_carousel_item_add(Evas_Object *obj, Evas_Object *icon, const char *label, Evas_Smart_Cb func, const void *data);
1080 EAPI void elm_carousel_item_del(Elm_Carousel_Item *item);
1081 EAPI void elm_carousel_item_select(Elm_Carousel_Item *item);
1082 /* smart callbacks called:
1083 * "clicked" - when the user clicks on a carousel item and becomes selected
1086 EAPI Evas_Object *elm_slider_add(Evas_Object *parent);
1087 EAPI void elm_slider_label_set(Evas_Object *obj, const char *label);
1088 EAPI const char *elm_slider_label_get(const Evas_Object *obj);
1089 EAPI void elm_slider_icon_set(Evas_Object *obj, Evas_Object *icon);
1090 EAPI Evas_Object *elm_slider_icon_get(const Evas_Object *obj);
1091 EAPI void elm_slider_span_size_set(Evas_Object *obj, Evas_Coord size);
1092 EAPI Evas_Coord elm_slider_span_size_get(const Evas_Object *obj);
1093 EAPI void elm_slider_unit_format_set(Evas_Object *obj, const char *format);
1094 EAPI const char *elm_slider_unit_format_get(const Evas_Object *obj);
1095 EAPI void elm_slider_indicator_format_set(Evas_Object *obj, const char *indicator);
1096 EAPI const char *elm_slider_indicator_format_get(const Evas_Object *obj);
1097 EAPI void elm_slider_indicator_format_function_set(Evas_Object *obj, const char *(*func)(double val));
1098 EAPI void elm_slider_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
1099 EAPI Eina_Bool elm_slider_horizontal_get(const Evas_Object *obj);
1100 EAPI void elm_slider_min_max_set(Evas_Object *obj, double min, double max);
1101 EAPI void elm_slider_min_max_get(const Evas_Object *obj, double *min, double *max);
1102 EAPI void elm_slider_value_set(Evas_Object *obj, double val);
1103 EAPI double elm_slider_value_get(const Evas_Object *obj);
1104 EAPI void elm_slider_inverted_set(Evas_Object *obj, Eina_Bool inverted);
1105 EAPI Eina_Bool elm_slider_inverted_get(const Evas_Object *obj);
1107 // added for supporting aqua feature
1108 EAPI Eina_Bool elm_slider_end_icon_set(Evas_Object *obj, Evas_Object *icon);
1109 EAPI Evas_Object *elm_slider_end_icon_get(Evas_Object *obj);
1110 EAPI void elm_slider_indicator_show_set(Evas_Object *obj, Eina_Bool show);
1111 EAPI void elm_slider_value_animated_set(Evas_Object *obj, double val);
1112 EAPI void elm_slider_end_label_set(Evas_Object *obj, const char *label);
1113 EAPI const char *elm_slider_end_label_get(const Evas_Object *obj);
1115 typedef enum _Elm_Genlist_Item_Flags
1117 ELM_GENLIST_ITEM_NONE = 0,
1118 ELM_GENLIST_ITEM_SUBITEMS = (1 << 0)
1119 } Elm_Genlist_Item_Flags;
1120 typedef enum _Elm_Genlist_Edit_Mode
1122 ELM_GENLIST_EDIT_MODE_NONE = 0,
1123 ELM_GENLIST_EDIT_MODE_REORDER = (1 << 0),
1124 ELM_GENLIST_EDIT_MODE_INSERT = (1 << 1),
1125 ELM_GENLIST_EDIT_MODE_DELETE = (1 << 2)
1126 }Elm_Genlist_Edit_Mode;
1127 typedef struct _Elm_Genlist_Item_Class Elm_Genlist_Item_Class;
1128 typedef struct _Elm_Genlist_Item Elm_Genlist_Item;
1129 typedef struct _Elm_Genlist_GroupItem Elm_Genlist_GroupItem;
1130 typedef struct _Elm_Genlist_Item_Class_Func Elm_Genlist_Item_Class_Func;
1131 typedef struct _Elm_Genlist_Edit_Class Elm_Genlist_Edit_Class;
1132 typedef char *(*GenlistItemLabelGetFunc) (const void *data, Evas_Object *obj, const char *part);
1133 typedef Evas_Object *(*GenlistItemIconGetFunc) (const void *data, Evas_Object *obj, const char *part);
1134 typedef Eina_Bool (*GenlistItemStateGetFunc) (const void *data, Evas_Object *obj, const char *part);
1135 typedef void (*GenlistItemDelFunc) (const void *data, Evas_Object *obj);
1136 typedef int (*GenlistItemEditModeGetFunc) (const void *data, Evas_Object *obj, const int enabled_edit_modes);
1137 typedef void (*GenlistInsertNewFunc) (Evas_Object *genlist, Elm_Genlist_Item *rel_item);
1138 typedef Eina_Bool (*GenlistMoveFunc) ( Evas_Object *genlist, Elm_Genlist_Item *item, Elm_Genlist_Item *rel_item, Eina_Bool move_after);
1139 typedef Eina_Bool (*GenlistRemoveItemFunc) (Evas_Object *genlist, Elm_Genlist_Item *rel_item);
1141 struct _Elm_Genlist_Item_Class
1143 const char *item_style;
1144 struct _Elm_Genlist_Item_Class_Func
1146 GenlistItemLabelGetFunc label_get;
1147 GenlistItemIconGetFunc icon_get;
1148 GenlistItemStateGetFunc state_get;
1149 GenlistItemDelFunc del;
1150 GenlistItemEditModeGetFunc editmode_get;
1154 struct _Elm_Genlist_Edit_Class
1156 GenlistRemoveItemFunc remove;
1157 GenlistInsertNewFunc insert_new;
1158 GenlistMoveFunc move;
1160 EAPI Evas_Object *elm_genlist_add(Evas_Object *parent);
1161 EAPI Elm_Genlist_Item *elm_genlist_item_append(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item_Flags flags, void (*func) (void *data, Evas_Object *obj, void *event_info), const void *func_data);
1162 EAPI Elm_Genlist_Item *elm_genlist_item_append_with_group(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item_Flags flags, Elm_Genlist_GroupItem *git, void (*func) (void *data, Evas_Object *obj, void *event_info), const void *func_data);
1163 EAPI Elm_Genlist_Item *elm_genlist_item_prepend(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item_Flags flags, void (*func) (void *data, Evas_Object *obj, void *event_info), const void *func_data);
1164 EAPI Elm_Genlist_Item *elm_genlist_item_insert_before(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *before, Elm_Genlist_Item_Flags flags, void (*func) (void *data, Evas_Object *obj, void *event_info), const void *func_data);
1165 EAPI Elm_Genlist_Item *elm_genlist_item_insert_after(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *after, Elm_Genlist_Item_Flags flags, void (*func) (void *data, Evas_Object *obj, void *event_info), const void *func_data);
1166 EAPI void elm_genlist_item_move_after(Elm_Genlist_Item *it, Elm_Genlist_Item *after );
1167 EAPI void elm_genlist_clear(Evas_Object *obj);
1168 EAPI Elm_Genlist_GroupItem *elm_genlist_groupitem_add(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data);
1169 EAPI void elm_genlist_groupitem_del( Elm_Genlist_GroupItem *git);
1170 EAPI void elm_genlist_multi_select_set(Evas_Object *obj, Eina_Bool multi);
1172 EAPI Elm_Genlist_Item *elm_genlist_selected_item_get(const Evas_Object *obj);
1173 EAPI const Eina_List *elm_genlist_selected_items_get(const Evas_Object *obj);
1174 EAPI Eina_List *elm_genlist_realized_items_get(const Evas_Object *obj);
1175 EAPI Elm_Genlist_Item *elm_genlist_at_xy_item_get(const Evas_Object *obj, Evas_Coord x, Evas_Coord y, int *posret);
1176 EAPI Elm_Genlist_Item *elm_genlist_first_item_get(const Evas_Object *obj);
1177 EAPI Elm_Genlist_Item *elm_genlist_last_item_get(const Evas_Object *obj);
1178 /* available item styles:
1180 * default_style - The text part is a textblock
1182 * icon_top_text_bottom
1185 /* Genlist Item operation */
1186 EAPI Elm_Genlist_Item *elm_genlist_item_next_get(const Elm_Genlist_Item *item);
1187 EAPI Elm_Genlist_Item *elm_genlist_item_prev_get(const Elm_Genlist_Item *item);
1188 EAPI Evas_Object *elm_genlist_item_genlist_get(const Elm_Genlist_Item *item);
1189 EAPI Elm_Genlist_Item *elm_genlist_item_parent_get(const Elm_Genlist_Item *it);
1190 EAPI void elm_genlist_item_subitems_clear(Elm_Genlist_Item *item);
1191 EAPI void elm_genlist_item_selected_set(Elm_Genlist_Item *item, Eina_Bool selected);
1192 EAPI Eina_Bool elm_genlist_item_selected_get(const Elm_Genlist_Item *item);
1193 EAPI void elm_genlist_item_expanded_set(Elm_Genlist_Item *item, Eina_Bool expanded);
1194 EAPI Eina_Bool elm_genlist_item_expanded_get(const Elm_Genlist_Item *item);
1195 EAPI void elm_genlist_item_disabled_set(Elm_Genlist_Item *item, Eina_Bool disabled);
1196 EAPI Eina_Bool elm_genlist_item_disabled_get(const Elm_Genlist_Item *item);
1197 EAPI void elm_genlist_item_display_only_set(Elm_Genlist_Item *it, Eina_Bool display_only);
1198 EAPI Eina_Bool elm_genlist_item_display_only_get(const Elm_Genlist_Item *it);
1200 EAPI void elm_genlist_item_show(Elm_Genlist_Item *item);
1201 EAPI void elm_genlist_item_bring_in(Elm_Genlist_Item *item);
1202 EAPI void elm_genlist_item_top_show(Elm_Genlist_Item *item);
1203 EAPI void elm_genlist_item_top_bring_in(Elm_Genlist_Item *item);
1204 EAPI void elm_genlist_item_middle_show(Elm_Genlist_Item *it);
1205 EAPI void elm_genlist_item_middle_bring_in(Elm_Genlist_Item *it);
1206 EAPI void elm_genlist_item_del(Elm_Genlist_Item *item);
1207 EAPI const void *elm_genlist_item_data_get(const Elm_Genlist_Item *item);
1208 EAPI void elm_genlist_item_data_set(Elm_Genlist_Item *it, const void *data);
1209 EAPI const Evas_Object *elm_genlist_item_object_get(const Elm_Genlist_Item *it);
1210 EAPI void elm_genlist_item_update(Elm_Genlist_Item *item);
1211 EAPI void elm_genlist_horizontal_mode_set(Evas_Object *obj, Elm_List_Mode mode);
1212 EAPI void elm_genlist_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select);
1213 EAPI void elm_genlist_no_select_mode_set(Evas_Object *obj, Eina_Bool no_select);
1214 EAPI void elm_genlist_compress_mode_set(Evas_Object *obj, Eina_Bool compress);
1215 EAPI void elm_genlist_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
1216 EAPI void elm_genlist_homogeneous_set(Evas_Object *obj, Eina_Bool homogeneous);
1217 EAPI void elm_genlist_block_count_set(Evas_Object *obj, int n);
1218 EAPI void elm_genlist_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v);
1219 EAPI void elm_genlist_set_edit_mode(Evas_Object *obj, int emode, Elm_Genlist_Edit_Class *ec);
1221 EAPI Evas_Object *elm_check_add(Evas_Object *parent);
1222 EAPI void elm_check_label_set(Evas_Object *obj, const char *label);
1223 EAPI const char *elm_check_label_get(const Evas_Object *obj);
1224 EAPI void elm_check_icon_set(Evas_Object *obj, Evas_Object *icon);
1225 EAPI Evas_Object *elm_check_icon_get(const Evas_Object *obj);
1226 EAPI void elm_check_state_set(Evas_Object *obj, Eina_Bool state);
1227 EAPI Eina_Bool elm_check_state_get(const Evas_Object *obj);
1228 EAPI void elm_check_state_pointer_set(Evas_Object *obj, Eina_Bool *statep);
1230 EAPI Evas_Object *elm_radio_add(Evas_Object *parent);
1231 EAPI void elm_radio_label_set(Evas_Object *obj, const char *label);
1232 EAPI const char *elm_radio_label_get(const Evas_Object *obj);
1233 EAPI void elm_radio_icon_set(Evas_Object *obj, Evas_Object *icon);
1234 EAPI Evas_Object *elm_radio_icon_get(const Evas_Object *obj);
1235 EAPI void elm_radio_group_add(Evas_Object *obj, Evas_Object *group);
1236 EAPI void elm_radio_state_value_set(Evas_Object *obj, int value);
1237 EAPI void elm_radio_value_set(Evas_Object *obj, int value);
1238 EAPI int elm_radio_value_get(const Evas_Object *obj);
1239 EAPI void elm_radio_value_pointer_set(Evas_Object *obj, int *valuep);
1241 typedef struct _Elm_Segment_Item Elm_Segment_Item;
1242 EAPI Evas_Object *elm_segment_control_add(Evas_Object *parent);
1243 EAPI Elm_Segment_Item * elm_segment_control_add_segment(Evas_Object *obj, Evas_Object *icon, const char *label, Eina_Bool animate);
1244 EAPI void elm_segment_control_insert_segment_at(Evas_Object *obj, Evas_Object *icon, const char *label, unsigned int index, Eina_Bool animate);
1245 EAPI Evas_Object *elm_segment_control_get_segment_at(Evas_Object *obj, unsigned int index);
1246 EAPI void elm_segment_control_delete_segment(Evas_Object *obj, Elm_Segment_Item *item, Eina_Bool animate);
1247 EAPI void elm_segment_control_delete_segment_at(Evas_Object *obj, unsigned int index, Eina_Bool animate);
1248 EAPI const char *elm_segment_control_get_segment_label_at(Evas_Object *obj, unsigned int index);
1249 EAPI Evas_Object *elm_segment_control_get_segment_icon_at(Evas_Object *obj, unsigned int index);
1250 EAPI Elm_Segment_Item *elm_segment_control_selected_segment_get(const Evas_Object *obj, int *value);
1251 EAPI int elm_segment_control_get_segment_count(Evas_Object *obj);
1252 EAPI void elm_segment_control_set_size(Evas_Object *obj, int width, int height);
1254 EAPI Evas_Object *elm_page_control_add(Evas_Object *parent);
1255 EAPI void elm_page_control_page_count_set(Evas_Object *obj, unsigned int page_count);
1256 EAPI void elm_page_control_page_id_set(Evas_Object *obj, unsigned int page_id);
1257 EAPI unsigned int elm_page_control_page_id_get(Evas_Object *obj);
1258 EAPI Evas_Object *elm_pager_add(Evas_Object *parent);
1259 EAPI void elm_pager_content_push(Evas_Object *obj, Evas_Object *content);
1260 EAPI void elm_pager_content_pop(Evas_Object *obj);
1261 EAPI void elm_pager_to_content_pop(Evas_Object *obj, Evas_Object *content);
1262 EAPI void elm_pager_content_promote(Evas_Object *obj, Evas_Object *content);
1263 EAPI Evas_Object *elm_pager_content_bottom_get(const Evas_Object *obj);
1264 EAPI Evas_Object *elm_pager_content_top_get(const Evas_Object *obj);
1265 EAPI void elm_pager_animation_set(Evas_Object *obj, Eina_Bool animation);
1266 /* available item styles:
1272 typedef struct _Elm_Slideshow_Item_Class Elm_Slideshow_Item_Class;
1273 typedef struct _Elm_Slideshow_Item_Class_Func Elm_Slideshow_Item_Class_Func;
1274 typedef struct _Elm_Slideshow_Item Elm_Slideshow_Item;
1275 typedef Evas_Object *(*SlideshowItemGetFunc) (void *data, Evas_Object *obj);
1276 typedef void (*SlideshowItemDelFunc) (void *data, Evas_Object *obj);
1278 struct _Elm_Slideshow_Item_Class
1280 struct _Elm_Slideshow_Item_Class_Func {
1281 SlideshowItemGetFunc get;
1282 SlideshowItemDelFunc del;
1286 EAPI Evas_Object * elm_slideshow_add(Evas_Object *parent);
1287 EAPI Elm_Slideshow_Item* elm_slideshow_item_add(Evas_Object *obj, const Elm_Slideshow_Item_Class *itc, const void *data);
1288 EAPI void elm_slideshow_show(Elm_Slideshow_Item *item);
1289 EAPI void elm_slideshow_next(Evas_Object *obj);
1290 EAPI void elm_slideshow_previous(Evas_Object *obj);
1291 EAPI const Eina_List *elm_slideshow_transitions_get(const Evas_Object *obj);
1292 EAPI void elm_slideshow_transition_set(Evas_Object *obj, const char *);
1293 EAPI const char *elm_slideshow_transition_get(const Evas_Object *obj);
1294 EAPI void elm_slideshow_timeout_set(Evas_Object *obj ,int timeout);
1295 EAPI int elm_slideshow_timeout_get(const Evas_Object *obj);
1296 EAPI void elm_slideshow_loop_set(Evas_Object *obj, Eina_Bool loop);
1297 EAPI Eina_Bool elm_slideshow_loop_get(const Evas_Object *obj);
1298 EAPI void elm_slideshow_clear(Evas_Object *obj);
1299 EAPI const Eina_List *elm_slideshow_items_get(const Evas_Object *obj);
1300 EAPI void elm_slideshow_item_del(Elm_Slideshow_Item *item);
1301 EAPI void * elm_slideshow_item_data_get(Elm_Slideshow_Item *item);
1302 EAPI Elm_Slideshow_Item* elm_slideshow_item_current_get(const Evas_Object *obj);
1303 EAPI Evas_Object* elm_slideshow_item_object_get(Elm_Slideshow_Item* item);
1306 EAPI Evas_Object *elm_fileselector_add(Evas_Object *parent);
1307 EAPI void elm_fileselector_is_save_set(Evas_Object *obj, Eina_Bool is_save);
1308 EAPI Eina_Bool elm_fileselector_is_save_get(const Evas_Object *obj);
1309 EAPI void elm_fileselector_folder_only_set(Evas_Object *obj, Eina_Bool only);
1310 EAPI Eina_Bool elm_fileselector_folder_only_get(const Evas_Object *obj);
1311 EAPI void elm_fileselector_buttons_ok_cancel_set(Evas_Object *obj, Eina_Bool buttons);
1312 EAPI Eina_Bool elm_fileselector_buttons_ok_cancel_get(const Evas_Object *obj);
1313 EAPI Eina_Bool elm_fileselector_expandable_get(const Evas_Object *obj);
1314 EAPI void elm_fileselector_expandable_set(Evas_Object *obj, Eina_Bool expand);
1315 EAPI void elm_fileselector_path_set(Evas_Object *obj, const char *path);
1316 EAPI const char *elm_fileselector_path_get(const Evas_Object *obj);
1317 EAPI const char *elm_fileselector_selected_get(const Evas_Object *obj);
1318 EAPI Eina_Bool elm_fileselector_selected_set(Evas_Object *obj, const char *path);
1320 /* smart callbacks called:
1321 * "selected" - the user click on a file
1322 * "directory,open" - the list is populate with a new content. event_info is a directory.
1323 * "done" - the user click on the ok or cancel buttons
1326 EAPI Evas_Object *elm_progressbar_add(Evas_Object *parent);
1327 EAPI void elm_progressbar_pulse_set(Evas_Object *obj, Eina_Bool pulse);
1328 EAPI Eina_Bool elm_progressbar_pulse_get(const Evas_Object *obj);
1329 EAPI void elm_progressbar_pulse(Evas_Object *obj, Eina_Bool state);
1330 EAPI void elm_progressbar_value_set(Evas_Object *obj, double val);
1331 EAPI double elm_progressbar_value_get(const Evas_Object *obj);
1332 EAPI void elm_progressbar_label_set(Evas_Object *obj, const char *label);
1333 EAPI const char *elm_progressbar_label_get(const Evas_Object *obj);
1334 EAPI void elm_progressbar_icon_set(Evas_Object *obj, Evas_Object *icon);
1335 EAPI Evas_Object *elm_progressbar_icon_get(const Evas_Object *obj);
1336 EAPI void elm_progressbar_span_size_set(Evas_Object *obj, Evas_Coord size);
1337 EAPI Evas_Coord elm_progressbar_span_size_get(const Evas_Object *obj);
1338 EAPI void elm_progressbar_unit_format_set(Evas_Object *obj, const char *format);
1339 EAPI const char *elm_progressbar_unit_format_get(const Evas_Object *obj);
1340 EAPI void elm_progressbar_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
1341 EAPI Eina_Bool elm_progressbar_horizontal_get(const Evas_Object *obj);
1342 EAPI void elm_progressbar_inverted_set(Evas_Object *obj, Eina_Bool inverted);
1343 EAPI Eina_Bool elm_progressbar_inverted_get(const Evas_Object *obj);
1344 /* smart callbacks called:
1346 /* available item styles:
1348 * wheel (simple style, no text, no progression, only pulse is available)
1351 EAPI Evas_Object *elm_separator_add(Evas_Object *parent);
1352 EAPI void elm_separator_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
1353 EAPI Eina_Bool elm_separator_horizontal_get(const Evas_Object *obj);
1354 /* smart callbacks called:
1357 EAPI Evas_Object *elm_spinner_add(Evas_Object *parent);
1358 EAPI void elm_spinner_label_format_set(Evas_Object *obj, const char *fmt);
1359 EAPI const char *elm_spinner_label_format_get(const Evas_Object *obj);
1360 EAPI void elm_spinner_min_max_set(Evas_Object *obj, double min, double max);
1361 EAPI void elm_spinner_min_max_get(const Evas_Object *obj, double *min, double *max);
1362 EAPI void elm_spinner_step_set(Evas_Object *obj, double step);
1363 EAPI double elm_spinner_step_get(const Evas_Object *obj);
1364 EAPI void elm_spinner_value_set(Evas_Object *obj, double val);
1365 EAPI double elm_spinner_value_get(const Evas_Object *obj);
1366 EAPI void elm_spinner_wrap_set(Evas_Object *obj, Eina_Bool wrap);
1367 EAPI Eina_Bool elm_spinner_wrap_get(const Evas_Object *obj);
1368 EAPI void elm_spinner_editable_set(Evas_Object *obj, Eina_Bool editable);
1369 EAPI Eina_Bool elm_spinner_editable_get(const Evas_Object *obj);
1370 EAPI void elm_spinner_special_value_add(Evas_Object *obj, double value, const char *label);
1371 /* smart callbacks called:
1372 * "changed" - when the spinner value changes
1373 * "delay,changed" - when the spinner value changed, but a small time after a change (use this if you only want to respond to a change once the spinner is held still for a short while).
1375 /* available item styles:
1377 * vertical (two up/down buttons at the right side and text left aligned)
1380 typedef struct _Elm_Index_Item Elm_Index_Item;
1381 EAPI Evas_Object *elm_index_add(Evas_Object *parent);
1382 EAPI void elm_index_active_set(Evas_Object *obj, Eina_Bool active);
1383 EAPI void elm_index_item_level_set(Evas_Object *obj, int level);
1384 EAPI int elm_index_item_level_get(const Evas_Object *obj);
1385 EAPI const void *elm_index_item_selected_get(const Evas_Object *obj, int level);
1386 EAPI void elm_index_item_append(Evas_Object *obj, const char *letter, const void *item);
1387 EAPI void elm_index_item_prepend(Evas_Object *obj, const char *letter, const void *item);
1388 EAPI void elm_index_item_append_relative(Evas_Object *obj, const char *letter, const void *item, const void *relative);
1389 EAPI void elm_index_item_prepend_relative(Evas_Object *obj, const char *letter, const void *item, const void *relative);
1390 EAPI void elm_index_item_sorted_insert(Evas_Object *obj, const char *letter, const void *item, Eina_Compare_Cb cmp_func, Eina_Compare_Cb cmp_data_func);
1391 EAPI void elm_index_item_del(Evas_Object *obj, const void *item);
1392 EAPI Elm_Index_Item *elm_index_item_find(Evas_Object *obj, const void *item);
1393 EAPI void elm_index_item_clear(Evas_Object *obj);
1394 EAPI void elm_index_item_go(Evas_Object *obj, int level);
1395 EAPI void *elm_index_item_data_get(const Elm_Index_Item *item);
1396 EAPI void elm_index_item_data_set(Elm_Index_Item *it, const void *data);
1397 EAPI const char *elm_index_item_letter_get(const Elm_Index_Item *item);
1398 /* smart callbacks called:
1399 * "changed" - when the selected index item changes
1400 * "delay,changed" - when the selected index item changes, but after some small idle period
1401 * "selected" - when the user releases heir finger and selects an item
1404 typedef enum _Elm_Photocam_Zoom_Mode
1406 ELM_PHOTOCAM_ZOOM_MODE_MANUAL = 0,
1407 ELM_PHOTOCAM_ZOOM_MODE_AUTO_FIT,
1408 ELM_PHOTOCAM_ZOOM_MODE_AUTO_FILL,
1409 ELM_PHOTOCAM_ZOOM_MODE_LAST
1410 } Elm_Photocam_Zoom_Mode;
1411 EAPI Evas_Object *elm_photocam_add(Evas_Object *parent);
1412 EAPI int elm_photocam_file_set(Evas_Object *obj, const char *file);
1413 EAPI const char * elm_photocam_file_get(const Evas_Object *obj);
1414 EAPI void elm_photocam_zoom_set(Evas_Object *obj, double zoom);
1415 EAPI double elm_photocam_zoom_get(const Evas_Object *obj);
1416 EAPI void elm_photocam_zoom_mode_set(Evas_Object *obj, Elm_Photocam_Zoom_Mode mode);
1417 EAPI Elm_Photocam_Zoom_Mode elm_photocam_zoom_mode_get(const Evas_Object *obj);
1418 EAPI void elm_photocam_image_size_get(const Evas_Object *obj, int *w, int *h);
1419 EAPI void elm_photocam_region_get(const Evas_Object *obj, int *x, int *y, int *w, int *h);
1420 EAPI void elm_photocam_image_region_show(Evas_Object *obj, int x, int y, int w, int h);
1421 EAPI void elm_photocam_image_region_bring_in(Evas_Object *obj, int x, int y, int w, int h);
1422 EAPI void elm_photocam_paused_set(Evas_Object *obj, Eina_Bool paused);
1423 EAPI Eina_Bool elm_photocam_paused_get(const Evas_Object *obj);
1424 EAPI Evas_Object *elm_photocam_internal_image_get(const Evas_Object *obj);
1426 /* smart callbacks called:
1427 * "clicked" - when image clicked
1428 * "press" - when mouse/finger held down initially on image
1429 * "longpressed" - when mouse/finger held for long time on image
1430 * "clicked,double" - when mouse/finger double-clicked
1431 * "load" - when photo load begins
1432 * "loaded" - when photo load done
1433 * "load,details" - when detailed image load begins
1434 * "loaded,details" - when detailed image load done
1435 * "zoom,start" - when zooming started
1436 * "zoom,stop" - when zooming stopped
1437 * "zoom,change" - when auto zoom mode changed zoom level
1438 * "scroll - the content has been scrolled (moved)
1439 * "scroll,anim,start" - scrolling animation has started
1440 * "scroll,anim,stop" - scrolling animation has stopped
1441 * "scroll,drag,start" - dragging the contents around has started
1442 * "scroll,drag,stop" - dragging the contents around has stopped
1445 typedef enum _Elm_Map_Zoom_Mode
1447 ELM_MAP_ZOOM_MODE_MANUAL,
1448 ELM_MAP_ZOOM_MODE_AUTO_FIT,
1449 ELM_MAP_ZOOM_MODE_AUTO_FILL,
1450 ELM_MAP_ZOOM_MODE_LAST
1451 } Elm_Map_Zoom_Mode;
1453 typedef enum _Elm_Map_Sources
1455 ELM_MAP_SOURCE_MAPNIK,
1456 ELM_MAP_SOURCE_OSMARENDER,
1457 ELM_MAP_SOURCE_CYCLEMAP,
1458 ELM_MAP_SOURCE_MAPLINT,
1459 ELM_MAP_SOURCE_CUSTOM_1,
1460 ELM_MAP_SOURCE_CUSTOM_2,
1461 ELM_MAP_SOURCE_CUSTOM_3,
1462 ELM_MAP_SOURCE_CUSTOM_4,
1463 ELM_MAP_SOURCE_CUSTOM_5,
1464 ELM_MAP_SOURCE_CUSTOM_6,
1465 ELM_MAP_SOURCE_CUSTOM_7,
1469 typedef struct _Elm_Map_Marker Elm_Map_Marker;
1470 typedef struct _Elm_Map_Marker_Class Elm_Map_Marker_Class;
1471 typedef struct _Elm_Map_Group_Class Elm_Map_Group_Class;
1472 typedef Evas_Object *(*ElmMapMarkerGetFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data);
1473 typedef void (*ElmMapMarkerDelFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data, Evas_Object *o);
1474 typedef Evas_Object *(*ElmMapMarkerIconGetFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data);
1475 typedef Evas_Object *(*ElmMapGroupIconGetFunc) (Evas_Object *obj, void *data);
1476 typedef char *(*ElmMapSourceURLFunc) (int x, int y, int zoom);
1478 EAPI Evas_Object *elm_map_add(Evas_Object *parent);
1479 EAPI void elm_map_zoom_set(Evas_Object *obj, int zoom);
1480 EAPI double elm_map_zoom_get(const Evas_Object *obj);
1481 EAPI void elm_map_zoom_mode_set(Evas_Object *obj, Elm_Map_Zoom_Mode mode);
1482 EAPI Elm_Map_Zoom_Mode elm_map_zoom_mode_get(const Evas_Object *obj);
1483 EAPI void elm_map_geo_region_get(const Evas_Object *obj, double *lon, double *lat);
1484 EAPI void elm_map_geo_region_bring_in(Evas_Object *obj, double lon, double lat);
1485 EAPI void elm_map_geo_region_show(Evas_Object *obj, double lon, double lat);
1486 EAPI void elm_map_paused_set(Evas_Object *obj, Eina_Bool paused);
1487 EAPI Eina_Bool elm_map_paused_get(const Evas_Object *obj);
1488 EAPI void elm_map_paused_markers_set(Evas_Object *obj, Eina_Bool paused);
1489 EAPI Eina_Bool elm_map_paused_markers_get(const Evas_Object *obj);
1490 EAPI void elm_map_utils_convert_coord_into_geo(int x, int y, int size, double *lon, double *lat);
1491 EAPI void elm_map_utils_convert_geo_into_coord(double lon, double lat, int size, int *x, int *y);
1492 EAPI Elm_Map_Marker *elm_map_marker_add(Evas_Object *obj, double lon, double lat, Elm_Map_Marker_Class *clas, Elm_Map_Group_Class *clas_group, void *data);
1493 EAPI void elm_map_max_marker_per_group_set(Evas_Object *obj, int max);
1494 EAPI void elm_map_marker_remove(Elm_Map_Marker *marker);
1495 EAPI void elm_map_marker_bring_in(Elm_Map_Marker *marker);
1496 EAPI void elm_map_marker_show(Elm_Map_Marker *marker);
1497 EAPI void elm_map_markers_list_show(Eina_List *markers);
1498 EAPI Evas_Object *elm_map_marker_object_get(Elm_Map_Marker *marker);
1499 EAPI void elm_map_marker_update(Elm_Map_Marker *marker);
1500 EAPI void elm_map_bubbles_close(Evas_Object *obj);
1502 EAPI Elm_Map_Group_Class * elm_map_group_class_new(Evas_Object *obj);
1503 EAPI void elm_map_group_class_style_set(Elm_Map_Group_Class *clas, const char *style);
1504 EAPI void elm_map_group_class_icon_cb_set(Elm_Map_Group_Class *clas, ElmMapGroupIconGetFunc icon_get);
1505 EAPI void elm_map_group_class_data_set(Elm_Map_Group_Class *clas, void *data);
1506 EAPI void elm_map_group_class_zoom_displayed_set(Elm_Map_Group_Class *clas, int zoom);
1507 EAPI void elm_map_group_class_zoom_grouped_set(Elm_Map_Group_Class *clas, int zoom);
1508 EAPI void elm_map_group_class_hide_set(Evas_Object *obj, Elm_Map_Group_Class *clas, Eina_Bool hide);
1510 EAPI Elm_Map_Marker_Class * elm_map_marker_class_new(Evas_Object *obj);
1511 EAPI void elm_map_marker_class_style_set(Elm_Map_Marker_Class *clas, const char *style);
1512 EAPI void elm_map_marker_class_icon_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerIconGetFunc icon_get);
1513 EAPI void elm_map_marker_class_get_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerGetFunc get);
1514 EAPI void elm_map_marker_class_del_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerDelFunc del);
1516 EAPI void elm_map_source_set(Evas_Object *obj, Elm_Map_Sources source);
1517 EAPI Elm_Map_Sources elm_map_source_get(const Evas_Object *obj);
1518 EAPI void elm_map_source_custom_api_set(Elm_Map_Sources source, const char *label,
1519 int zoom_min, int zoom_max, ElmMapSourceURLFunc url_cb);
1520 EAPI int elm_map_source_zoom_min_get(Elm_Map_Sources source);
1521 EAPI int elm_map_source_zoom_max_get(Elm_Map_Sources source);
1522 EAPI const char * elm_map_source_name_get(Elm_Map_Sources source);
1523 /* smart callbacks called:
1524 * "clicked" - when image clicked
1525 * "press" - when mouse/finger held down initially on image
1526 * "longpressed" - when mouse/finger held for long time on image
1527 * "clicked,double" - when mouse/finger double-clicked
1528 * "load,details" - when detailed image load begins
1529 * "loaded,details" - when detailed image load done
1530 * "zoom,start" - when zooming started
1531 * "zoom,stop" - when zooming stopped
1532 * "zoom,change" - when auto zoom mode changed zoom level
1533 * "scroll - the content has been scrolled (moved)
1534 * "scroll,anim,start" - scrolling animation has started
1535 * "scroll,anim,stop" - scrolling animation has stopped
1536 * "scroll,drag,start" - dragging the contents around has started
1537 * "scroll,drag,stop" - dragging the contents around has stopped
1540 typedef enum _Elm_Panel_Orient
1542 ELM_PANEL_ORIENT_TOP,
1543 ELM_PANEL_ORIENT_BOTTOM,
1544 ELM_PANEL_ORIENT_LEFT,
1545 ELM_PANEL_ORIENT_RIGHT,
1547 EAPI Evas_Object *elm_panel_add(Evas_Object *parent);
1548 EAPI void elm_panel_orient_set(Evas_Object *obj, Elm_Panel_Orient orient);
1549 EAPI Elm_Panel_Orient elm_panel_orient_get(Evas_Object *obj);
1550 EAPI void elm_panel_content_set(Evas_Object *obj, Evas_Object *content);
1551 EAPI void elm_panel_hidden_set(Evas_Object *obj, Eina_Bool hidden);
1552 EAPI Eina_Bool elm_panel_hidden_get(Evas_Object *obj);
1553 EAPI void elm_panel_toggle(Evas_Object *obj);
1555 typedef enum _Elm_Flip_Mode
1557 ELM_FLIP_ROTATE_Y_CENTER_AXIS,
1558 ELM_FLIP_ROTATE_X_CENTER_AXIS,
1559 ELM_FLIP_ROTATE_XZ_CENTER_AXIS,
1560 ELM_FLIP_ROTATE_YZ_CENTER_AXIS
1563 EAPI Evas_Object *elm_flip_add(Evas_Object *parent);
1564 EAPI void elm_flip_content_front_set(Evas_Object *obj, Evas_Object *content);
1565 EAPI void elm_flip_content_back_set(Evas_Object *obj, Evas_Object *content);
1566 EAPI Evas_Object *elm_flip_content_front_get(const Evas_Object *obj);
1567 EAPI Evas_Object *elm_flip_content_back_get(const Evas_Object *obj);
1568 EAPI Eina_Bool elm_flip_front_get(const Evas_Object *obj);
1569 EAPI void elm_flip_perspective_set(Evas_Object *obj, Evas_Coord foc, Evas_Coord x, Evas_Coord y);
1570 EAPI void elm_flip_go(Evas_Object *obj, Elm_Flip_Mode mode);
1571 /* smart callbacks called:
1572 * "animate,done" - when a flip animation is finished
1575 EAPI Evas_Object *elm_scrolled_entry_add(Evas_Object *parent);
1576 EAPI void elm_scrolled_entry_single_line_set(Evas_Object *obj, Eina_Bool single_line);
1577 EAPI Eina_Bool elm_scrolled_entry_single_line_get(const Evas_Object *obj);
1578 EAPI void elm_scrolled_entry_password_set(Evas_Object *obj, Eina_Bool password);
1579 EAPI Eina_Bool elm_scrolled_entry_password_get(const Evas_Object *obj);
1580 EAPI void elm_scrolled_entry_entry_set(Evas_Object *obj, const char *entry);
1581 EAPI const char *elm_scrolled_entry_entry_get(const Evas_Object *obj);
1582 EAPI const char *elm_scrolled_entry_selection_get(const Evas_Object *obj);
1583 EAPI void elm_scrolled_entry_entry_insert(Evas_Object *obj, const char *entry);
1584 EAPI void elm_scrolled_entry_line_wrap_set(Evas_Object *obj, Eina_Bool wrap);
1585 EAPI void elm_scrolled_entry_line_char_wrap_set(Evas_Object *obj, Eina_Bool wrap);
1586 EAPI void elm_scrolled_entry_editable_set(Evas_Object *obj, Eina_Bool editable);
1587 EAPI Eina_Bool elm_scrolled_entry_editable_get(const Evas_Object *obj);
1588 EAPI void elm_scrolled_entry_select_none(Evas_Object *obj);
1589 EAPI void elm_scrolled_entry_select_all(Evas_Object *obj);
1590 EAPI Eina_Bool elm_scrolled_entry_cursor_next(Evas_Object *obj);
1591 EAPI Eina_Bool elm_scrolled_entry_cursor_prev(Evas_Object *obj);
1592 EAPI Eina_Bool elm_scrolled_entry_cursor_up(Evas_Object *obj);
1593 EAPI Eina_Bool elm_scrolled_entry_cursor_down(Evas_Object *obj);
1594 EAPI void elm_scrolled_entry_cursor_begin_set(Evas_Object *obj);
1595 EAPI void elm_scrolled_entry_cursor_end_set(Evas_Object *obj);
1596 EAPI void elm_scrolled_entry_cursor_line_begin_set(Evas_Object *obj);
1597 EAPI void elm_scrolled_entry_cursor_line_end_set(Evas_Object *obj);
1598 EAPI void elm_scrolled_entry_cursor_selection_begin(Evas_Object *obj);
1599 EAPI void elm_scrolled_entry_cursor_selection_end(Evas_Object *obj);
1600 EAPI Eina_Bool elm_scrolled_entry_cursor_is_format_get(const Evas_Object *obj);
1601 EAPI Eina_Bool elm_scrolled_entry_cursor_is_visible_format_get(const Evas_Object *obj);
1602 EAPI const char *elm_scrolled_entry_cursor_content_get(const Evas_Object *obj);
1603 EAPI void elm_scrolled_entry_selection_cut(Evas_Object *obj);
1604 EAPI void elm_scrolled_entry_selection_copy(Evas_Object *obj);
1605 EAPI void elm_scrolled_entry_selection_paste(Evas_Object *obj);
1606 EAPI void elm_scrolled_entry_context_menu_clear(Evas_Object *obj);
1607 EAPI void elm_scrolled_entry_context_menu_item_add(Evas_Object *obj, const char *label, const char *icon_file, Elm_Icon_Type icon_type, Evas_Smart_Cb func, const void *data);
1608 EAPI void elm_scrolled_entry_context_menu_disabled_set(Evas_Object *obj, Eina_Bool disabled);
1609 EAPI Eina_Bool elm_scrolled_entry_context_menu_disabled_get(const Evas_Object *obj);
1610 EAPI void elm_scrolled_entry_scrollbar_policy_set(Evas_Object *obj, Elm_Scroller_Policy h, Elm_Scroller_Policy v);
1611 EAPI void elm_scrolled_entry_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
1612 EAPI void elm_scrolled_entry_maximum_bytes_set(Evas_Object *obj, int max_no_of_bytes);
1613 EAPI void elm_scrolled_entry_password_show_last_character_set(Evas_Object *obj, Eina_Bool show_last_character);
1615 EAPI void elm_scrolled_entry_input_panel_enabled_set(Evas_Object *obj, Eina_Bool enabled);
1616 EAPI void elm_scrolled_entry_input_panel_layout_set(Evas_Object *obj, Elm_Input_Panel_Layout layout);
1617 EAPI Ecore_IMF_Context *elm_scrolled_entry_imf_context_get(Evas_Object *obj);
1619 EAPI Evas_Object *elm_conformant_add(Evas_Object *parent);
1620 EAPI void elm_conformant_content_set(Evas_Object *obj, Evas_Object *content);
1622 EAPI Evas_Object *elm_mapbuf_add(Evas_Object *parent);
1623 EAPI void elm_mapbuf_content_set(Evas_Object *obj, Evas_Object *content);
1624 EAPI void elm_mapbuf_enabled_set(Evas_Object *obj, Eina_Bool enabled);
1625 EAPI Eina_Bool elm_mapbuf_enabled_get(const Evas_Object *obj);
1626 EAPI void elm_mapbuf_smooth_set(Evas_Object *obj, Eina_Bool smooth);
1627 EAPI Eina_Bool elm_mapbuf_smooth_get(const Evas_Object *obj);
1628 EAPI void elm_mapbuf_alpha_set(Evas_Object *obj, Eina_Bool alpha);
1629 EAPI Eina_Bool elm_mapbuf_alpha_get(const Evas_Object *obj);
1631 typedef struct _Picker_Item Elm_Picker_Item;
1632 EAPI Evas_Object *elm_picker_add(Evas_Object *parent);
1633 EAPI void elm_picker_next(Evas_Object *obj);
1634 EAPI void elm_picker_prev(Evas_Object *obj);
1635 EAPI Elm_Picker_Item *elm_picker_item_append(Evas_Object *obj, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), void *data);
1636 EAPI Elm_Picker_Item *elm_picker_item_prepend(Evas_Object *obj, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), void *data);
1637 EAPI const Eina_List *elm_picker_items_get(Evas_Object *obj);
1638 EAPI Elm_Picker_Item *elm_picker_first_item_get(Evas_Object *obj);
1639 EAPI Elm_Picker_Item *elm_picker_last_item_get(Evas_Object *obj);
1640 EAPI Elm_Picker_Item *elm_picker_selected_item_get(Evas_Object *obj);
1641 EAPI void elm_picker_item_selected_set(Elm_Picker_Item *item);
1642 EAPI void elm_picker_item_del(Elm_Picker_Item *item);
1643 EAPI const char *elm_picker_item_label_get(Elm_Picker_Item *item);
1644 EAPI void elm_picker_item_label_set(Elm_Picker_Item *item, const char *label);
1645 EAPI Elm_Picker_Item *elm_picker_item_prev(Elm_Picker_Item *item);
1646 EAPI Elm_Picker_Item *elm_picker_item_next(Elm_Picker_Item *item);
1647 /* smart callback called:
1648 * "changed" - when picker selected item is changed
1649 * "overflowed" - when picker item is changed to first item from last item
1650 * "underflowed" - when picker item is changed to last item from first item.
1652 /* available styles:
1658 typedef struct _Discpicker_Item Elm_Discpicker_Item;
1659 EAPI Evas_Object *elm_discpicker_add(Evas_Object *parent);
1660 EAPI void elm_discpicker_row_height_set(Evas_Object *obj, unsigned int row_height);
1661 EAPI void elm_discpicker_next(Evas_Object *obj);
1662 EAPI void elm_discpicker_prev(Evas_Object *obj);
1663 EAPI Elm_Discpicker_Item *elm_discpicker_item_append(Evas_Object *obj, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), void *data);
1664 EAPI Elm_Discpicker_Item *elm_discpicker_item_prepend(Evas_Object *obj, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), void *data);
1665 EAPI const Eina_List *elm_discpicker_items_get(Evas_Object *obj);
1666 EAPI Elm_Discpicker_Item *elm_discpicker_first_item_get(Evas_Object *obj);
1667 EAPI Elm_Discpicker_Item *elm_discpicker_last_item_get(Evas_Object *obj);
1668 EAPI Elm_Discpicker_Item *elm_discpicker_selected_item_get(Evas_Object *obj);
1669 EAPI void elm_discpicker_item_selected_set(Elm_Discpicker_Item *item);
1670 EAPI void elm_discpicker_item_del(Elm_Discpicker_Item *item);
1671 EAPI const char *elm_discpicker_item_label_get(Elm_Discpicker_Item *item);
1672 EAPI void elm_discpicker_item_label_set(Elm_Discpicker_Item *item, const char *label);
1673 EAPI Elm_Discpicker_Item *elm_discpicker_item_prev(Elm_Discpicker_Item *item);
1674 EAPI Elm_Discpicker_Item *elm_discpicker_item_next(Elm_Discpicker_Item *item);
1675 EAPI void *elm_discpicker_item_data_get(Elm_Discpicker_Item *item);
1676 EAPI void elm_discpicker_item_data_set(Elm_Discpicker_Item *item, void *data);
1677 EAPI Eina_Bool elm_discpicker_item_disabled_get(Elm_Discpicker_Item *item);
1678 EAPI void elm_discpicker_item_disabled_set(Elm_Discpicker_Item *item, Eina_Bool disabled);
1679 /* smart callback called:
1680 * "selected" - when discpicker selected item is changed
1681 * "overflowed" - when discpicker item is changed to first item from last item
1682 * "underflowed" - when discpicker item is changed to last item from first item.
1684 /* available styles:
1688 typedef struct _Buttonpicker_Item Elm_Buttonpicker_Item;
1689 EAPI Evas_Object *elm_buttonpicker_add(Evas_Object *parent);
1690 EAPI void elm_buttonpicker_next(Evas_Object *obj);
1691 EAPI void elm_buttonpicker_prev(Evas_Object *obj);
1692 EAPI Elm_Buttonpicker_Item *elm_buttonpicker_item_append(Evas_Object *obj, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), void *data);
1693 EAPI Elm_Buttonpicker_Item *elm_buttonpicker_item_prepend(Evas_Object *obj, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), void *data);
1694 EAPI const Eina_List *elm_buttonpicker_items_get(Evas_Object *obj);
1695 EAPI Elm_Buttonpicker_Item *elm_buttonpicker_first_item_get(Evas_Object *obj);
1696 EAPI Elm_Buttonpicker_Item *elm_buttonpicker_last_item_get(Evas_Object *obj);
1697 EAPI Elm_Buttonpicker_Item *elm_buttonpicker_selected_item_get(Evas_Object *obj);
1698 EAPI void elm_buttonpicker_item_selected_set(Elm_Buttonpicker_Item *item);
1699 EAPI void elm_buttonpicker_item_del(Elm_Buttonpicker_Item *item);
1700 EAPI const char *elm_buttonpicker_item_label_get(Elm_Buttonpicker_Item *item);
1701 EAPI void elm_buttonpicker_item_label_set(Elm_Buttonpicker_Item *item, const char *label);
1702 EAPI Elm_Buttonpicker_Item *elm_buttonpicker_item_prev(Elm_Buttonpicker_Item *item);
1703 EAPI Elm_Buttonpicker_Item *elm_buttonpicker_item_next(Elm_Buttonpicker_Item *item);
1704 /* smart callback called:
1705 * "changed" - when buttonpicker selected item is changed
1706 * "overflowed" - when buttonpicker item is changed to first item from last item
1707 * "underflowed" - when buttonpicker item is changed to last item from first item.
1709 /* available styles:
1713 EAPI Evas_Object *elm_timepicker_add(Evas_Object *parent);
1714 EAPI void elm_timepicker_time_set(Evas_Object *obj, int hrs, int min, int sec);
1715 EAPI void elm_timepicker_time_get(Evas_Object *obj, int *hrs, int *min, int *sec);
1716 EAPI void elm_timepicker_show_am_pm_set(Evas_Object *obj, Eina_Bool am_pm);
1717 EAPI void elm_timepicker_show_seconds_set(Evas_Object *obj, Eina_Bool seconds);
1718 /* smart callback called:
1719 * "changed" - when timepicker selected item is changed
1721 /* available styles:
1725 EAPI Evas_Object *elm_timepicker3_add(Evas_Object *parent);
1726 EAPI void elm_timepicker3_time_set(Evas_Object *obj, int hrs, int min, int sec);
1727 EAPI void elm_timepicker3_time_get(Evas_Object *obj, int *hrs, int *min, int *sec);
1728 EAPI void elm_timepicker3_show_am_pm_set(Evas_Object *obj, Eina_Bool am_pm);
1729 EAPI void elm_timepicker3_show_seconds_set(Evas_Object *obj, Eina_Bool seconds);
1730 /* smart callback called:
1731 * "changed" - when timepicker3 selected item is changed
1733 /* available styles:
1737 EAPI Evas_Object *elm_datepicker_add(Evas_Object *parent);
1738 EAPI void elm_datepicker_date_set(Evas_Object *obj, int year, int month, int day);
1739 EAPI void elm_datepicker_date_get(Evas_Object *obj, int *year, int *month, int *day);
1740 EAPI void elm_datepicker_date_min_set(Evas_Object *obj, int year, int month, int day); // Not implemented
1741 EAPI void elm_datepicker_date_min_get(Evas_Object *obj, int *year, int *month, int *day);
1742 EAPI void elm_datepicker_date_max_set(Evas_Object *obj, int year, int month, int day); // Not implemented
1743 EAPI void elm_datepicker_date_max_get(Evas_Object *obj, int *year, int *month, int *day);
1744 EAPI void elm_datepicker_date_format_set(Evas_Object *obj, const char *fmt);
1745 EAPI const char *elm_datepicker_date_format_get(Evas_Object *obj);
1746 /* smart callback called:
1747 * "changed" - when datepicker selected item is changed
1749 /* available styles:
1753 EAPI Evas_Object *elm_datepicker2_add(Evas_Object *parent);
1754 EAPI void elm_datepicker2_date_set(Evas_Object *obj, int year, int month, int day);
1755 EAPI void elm_datepicker2_date_get(Evas_Object *obj, int *year, int *month, int *day);
1756 EAPI void elm_datepicker2_date_min_set(Evas_Object *obj, int year, int month, int day); // Not implemented
1757 EAPI void elm_datepicker2_date_min_get(Evas_Object *obj, int *year, int *month, int *day);
1758 EAPI void elm_datepicker2_date_max_set(Evas_Object *obj, int year, int month, int day); // Not implemented
1759 EAPI void elm_datepicker2_date_max_get(Evas_Object *obj, int *year, int *month, int *day);
1760 EAPI void elm_datepicker2_date_format_set(Evas_Object *obj, const char *fmt);
1761 EAPI const char *elm_datepicker2_date_format_get(Evas_Object *obj);
1762 /* smart callback called:
1763 * "changed" - when datepicker selected item is changed
1765 /* available styles:
1769 EAPI Evas_Object *elm_datepicker3_add(Evas_Object *parent);
1770 EAPI void elm_datepicker3_date_set(Evas_Object *obj, int year, int month, int day);
1771 EAPI void elm_datepicker3_date_get(Evas_Object *obj, int *year, int *month, int *day);
1772 EAPI void elm_datepicker3_date_min_set(Evas_Object *obj, int year, int month, int day); // Not implemented
1773 EAPI void elm_datepicker3_date_min_get(Evas_Object *obj, int *year, int *month, int *day);
1774 EAPI void elm_datepicker3_date_max_set(Evas_Object *obj, int year, int month, int day); // Not implemented
1775 EAPI void elm_datepicker3_date_max_get(Evas_Object *obj, int *year, int *month, int *day);
1776 EAPI void elm_datepicker3_date_format_set(Evas_Object *obj, const char *fmt);
1777 EAPI const char *elm_datepicker3_date_format_get(Evas_Object *obj);
1778 /* smart callback called:
1779 * "changed" - when datepicker3 selected item is changed
1781 /* available styles:
1786 EAPI Evas_Object *elm_titlebar_add(Evas_Object *parent);
1787 EAPI void elm_titlebar_label_set(Evas_Object *obj, const char *label);
1788 EAPI const char *elm_titlebar_label_get(Evas_Object *obj);
1789 EAPI void elm_titlebar_icon_set(Evas_Object *obj, Evas_Object *icon);
1790 EAPI Evas_Object *elm_titlebar_icon_get(Evas_Object *obj);
1791 EAPI void elm_titlebar_end_set(Evas_Object *obj, Evas_Object *end);
1792 EAPI Evas_Object *elm_titlebar_end_get(Evas_Object *obj);
1795 typedef enum _Elm_Popup_Response
1797 ELM_POPUP_RESPONSE_NONE = -1,
1798 ELM_POPUP_RESPONSE_TIMEOUT = -2,
1799 ELM_POPUP_RESPONSE_OK = -3,
1800 ELM_POPUP_RESPONSE_CANCEL = -4,
1801 ELM_POPUP_RESPONSE_CLOSE = -5
1802 } Elm_Popup_Response;
1804 typedef enum _Elm_Popup_Mode
1806 ELM_POPUP_TYPE_NONE = 0,
1807 ELM_POPUP_TYPE_ALERT = (1 << 0)
1810 typedef enum _Elm_Popup_Orient
1812 ELM_POPUP_ORIENT_TOP,
1813 ELM_POPUP_ORIENT_CENTER,
1814 ELM_POPUP_ORIENT_BOTTOM,
1815 ELM_POPUP_ORIENT_LEFT,
1816 ELM_POPUP_ORIENT_RIGHT,
1817 ELM_POPUP_ORIENT_TOP_LEFT,
1818 ELM_POPUP_ORIENT_TOP_RIGHT,
1819 ELM_POPUP_ORIENT_BOTTOM_LEFT,
1820 ELM_POPUP_ORIENT_BOTTOM_RIGHT
1823 /* smart callbacks called:
1824 * "response" - when ever popup is closed, this signal is sent with appropriate response id.".
1827 EAPI Evas_Object *elm_popup_add(Evas_Object *parent);
1828 EAPI void elm_popup_desc_set(Evas_Object *obj, const char *text);
1829 EAPI const char *elm_popup_desc_get(Evas_Object *obj);
1830 EAPI void elm_popup_title_label_set(Evas_Object *obj, const char *text);
1831 EAPI const char *elm_popup_title_label_get(Evas_Object *obj);
1832 EAPI void elm_popup_title_icon_set(Evas_Object *obj, Evas_Object *icon);
1833 EAPI void elm_popup_content_set(Evas_Object *obj, Evas_Object *content);
1834 EAPI Evas_Object* elm_popup_content_get(Evas_Object *obj);
1835 EAPI void elm_popup_buttons_add(Evas_Object *obj,int no_of_buttons, char *first_button_text, ...);
1836 Evas_Object* elm_popup_add_with_buttons(Evas_Object *parent, char *title, char *desc_text,int no_of_buttons, char *first_button_text, ... );
1837 EAPI void elm_popup_timeout_set(Evas_Object *obj, int timeout);
1838 EAPI void elm_popup_set_mode(Evas_Object *obj, Elm_Popup_Mode mode);
1839 EAPI void elm_popup_response(Evas_Object *obj, int response_id);
1840 EAPI void elm_popup_orient_set(Evas_Object *obj, Elm_Popup_Orient orient);
1841 EAPI void elm_popup_rotation_set(Evas_Object *obj, int rot_angle);
1842 /* Contextual Popup */
1843 typedef struct _Ctxpopup_Item Elm_Ctxpopup_Item;
1845 EAPI Evas_Object *elm_ctxpopup_add(Evas_Object *parent);
1846 EAPI void elm_ctxpopup_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
1847 EAPI Eina_Bool elm_ctxpopup_horizontal_get(Evas_Object *obj);
1848 EAPI void elm_ctxpopup_item_icon_set(Elm_Ctxpopup_Item *item, Evas_Object *icon);
1849 EAPI void elm_ctxpopup_item_label_set(Elm_Ctxpopup_Item *item, const char *label);
1850 EAPI Elm_Ctxpopup_Item* elm_ctxpopup_item_add(Evas_Object *obj, Evas_Object *icon, const char* label, void (*func) (void *data, Evas_Object *obj, void *event_info), void *data);
1851 EAPI Elm_Ctxpopup_Item* elm_ctxpopup_icon_add(Evas_Object *obj, Evas_Object *icon, void (*func) (void *data, Evas_Object *obj, void *event_info), void *data);
1852 EAPI Elm_Ctxpopup_Item* elm_ctxpopup_label_add(Evas_Object *obj, const char *label, void (*func) (void *data, Evas_Object *obj, void *event_info), void* data);
1853 EAPI void elm_ctxpopup_item_del(Elm_Ctxpopup_Item *item);
1854 EAPI void elm_ctxpopup_item_disabled_set(Elm_Ctxpopup_Item *item, Eina_Bool disabled);
1855 EAPI void elm_ctxpopup_clear(Evas_Object *obj);
1856 EAPI const char *elm_ctxpopup_item_label_get(Elm_Ctxpopup_Item *item);
1857 EAPI Evas_Object *elm_ctxpopup_item_icon_get(Elm_Ctxpopup_Item *item);
1858 EAPI void elm_ctxpopup_scroller_disabled_set(Evas_Object *obj, Eina_Bool disabled);
1859 EAPI void elm_ctxpopup_screen_dimmed_disabled_set(Evas_Object *obj, Eina_Bool disabled);
1860 EAPI void elm_ctxpopup_align_set(Evas_Object *obj, double align_x, double align_y);
1861 EAPI void elm_ctxpopup_align_get(Evas_Object *obj, double *align_x, double *align_y);
1862 // EAPI void elm_ctxpopup_button_append(Evas_Object *obj, const char *label);
1865 /* QuickContactBadge */
1866 typedef struct _Quickcontactbadge_Item Elm_Quickcontactbadge_Item;
1868 EAPI Evas_Object *elm_quickcontactbadge_add(Evas_Object* parent);
1869 EAPI void elm_quickcontactbadge_item_icon_set(Elm_Quickcontactbadge_Item* item, Evas_Object* icon);
1870 EAPI Elm_Quickcontactbadge_Item* elm_quickcontactbadge_icon_add( Evas_Object* obj, Evas_Object* icon, void (*func ) (void* data, Evas_Object* obj, void* event_info ), const void* data );
1871 EAPI void elm_quickcontactbadge_item_del(Elm_Quickcontactbadge_Item* item);
1872 EAPI void elm_quickcontactbadge_clear(Evas_Object* obj);
1873 EAPI void elm_quickcontactbadge_horizontal_set( Evas_Object* obj, Eina_Bool horizontal );
1874 EAPI Evas_Object *elm_quickcontactbadge_item_icon_get( Elm_Quickcontactbadge_Item* item );
1877 typedef enum _Elm_Tab_Move_Type
1879 ELM_TAB_MOVE_LEFT = 0,
1880 ELM_TAB_MOVE_RIGHT = 1
1881 } Elm_Tab_Move_Type;
1883 typedef enum _Elm_Tab_Mode_Type
1885 ELM_TAB_PORTRAIT_2 = 2,
1886 ELM_TAB_PORTRAIT_3 = 3,
1887 ELM_TAB_PORTRAIT_4 = 4,
1888 ELM_TAB_LANDSCAPE_2 = 12,
1889 ELM_TAB_LANDSCAPE_3 = 13,
1890 ELM_TAB_LANDSCAPE_4 = 14,
1891 ELM_TAB_LANDSCAPE_5 = 15,
1892 } Elm_Tab_Mode_Type;
1894 typedef struct _Elm_Tab_Item Elm_Tab_Item;
1896 EAPI Evas_Object *elm_tab_add(Evas_Object *parent);
1897 EAPI void elm_tab_set(Evas_Object *obj, int mode);
1898 EAPI Elm_Tab_Item *elm_tab_item_add(Evas_Object *obj, Evas_Object *icon, const char *label, void (*func) (void *data, Evas_Object *obj, void *event_info), const void *data);
1899 EAPI void elm_tab_item_del(Elm_Tab_Item *item);
1900 EAPI void elm_tab_item_select(Elm_Tab_Item *item);
1901 EAPI Evas_Object *elm_tab_item_icon_get(Elm_Tab_Item *item);
1902 EAPI const char *elm_tab_item_label_get(Elm_Tab_Item *item);
1903 EAPI void elm_tab_item_label_set(Elm_Tab_Item *item, const char *label);
1904 EAPI void elm_tab_item_badge_set(Elm_Tab_Item *item, const int badge);
1905 EAPI Elm_Tab_Item *elm_tab_selected_item_get(Evas_Object *obj);
1906 EAPI Elm_Tab_Item *elm_tab_first_item_get(Evas_Object *obj);
1907 EAPI Elm_Tab_Item *elm_tab_last_item_get(Evas_Object *obj);
1908 EAPI Eina_List *elm_tab_items_get(Evas_Object *obj);
1909 EAPI Elm_Tab_Item *elm_tab_item_prev(Elm_Tab_Item *item);
1910 EAPI Elm_Tab_Item *elm_tab_item_next(Elm_Tab_Item *item);
1911 EAPI void elm_tab_move(Evas_Object *obj, int direction);
1912 EAPI void elm_tab_edit_disable_set(Evas_Object *obj, Eina_Bool disable);
1913 EAPI Eina_Bool elm_tab_edit_disable_get(Evas_Object *obj);
1917 typedef struct _Animator Elm_Animator;
1919 typedef enum {ELM_ANIMATOR_CURVE_LINEAR, ELM_ANIMATOR_CURVE_IN_OUT, ELM_ANIMATOR_CURVE_IN, ELM_ANIMATOR_CURVE_OUT} Elm_Animator_Curve_Style;
1921 EAPI Elm_Animator* elm_animator_add(Evas_Object *parent);
1922 EAPI void elm_animator_del(Elm_Animator *animator);
1923 EAPI void elm_animator_duration_set(Elm_Animator *animator, double duration);
1924 EAPI void elm_animator_operation_callback_set(Elm_Animator *animator, void (*func)(void *data, Elm_Animator *animator, double frame), void *data);
1925 EAPI void elm_animator_completion_callback_set(Elm_Animator *animator, void (*func)(void *data), void *data);
1926 EAPI void elm_animator_stop(Elm_Animator *animator);
1927 EAPI void elm_animator_repeat_set(Elm_Animator *animator, unsigned int repeat_cnt);
1928 EAPI void elm_animator_animate(Elm_Animator *animator);
1929 EAPI void elm_animator_curve_style_set(Elm_Animator *animator, Elm_Animator_Curve_Style cs);
1930 EAPI void elm_animator_auto_reverse_set(Elm_Animator *animator, Eina_Bool reverse);
1931 EAPI Eina_Bool elm_animator_auto_reverse_get(Elm_Animator *animator);
1932 EAPI Eina_Bool elm_animator_operating_get(Elm_Animator *animator);
1933 EAPI unsigned int elm_animator_repeat_get(Elm_Animator *animator);
1936 typedef struct _transit Elm_Transit;
1937 typedef struct _effect Elm_Effect;
1939 EAPI Elm_Transit *elm_transit_add(Evas_Object* parent);
1940 EAPI void elm_transit_del(Elm_Transit* transit);
1941 EAPI void elm_transit_run(Elm_Transit* transit, double duration);
1942 EAPI void elm_transit_stop(Elm_Transit* transit);
1944 //Please Use elm_transit_completion_callback_set
1945 EAPI void elm_transit_completion_callback_set(Elm_Transit* transit, void (*op)(void*,Elm_Transit*), void* data);
1946 EAPI void elm_transit_repeat_set(Elm_Transit* transit, unsigned int repeat);
1947 EAPI void elm_transit_auto_reverse_set(Elm_Transit* transit, Eina_Bool reverse);
1948 EAPI void elm_transit_curve_style_set(Elm_Transit* transit, Elm_Animator_Curve_Style cs);
1949 EAPI void elm_transit_event_block_disabled_set(Elm_Transit* transit, Eina_Bool disable);
1950 EAPI Eina_Bool elm_transit_fx_insert(Elm_Transit* transit, Elm_Effect* effect);
1951 EAPI void elm_transit_fx_clear(Elm_Transit* transit);
1952 EAPI Eina_Bool elm_transit_event_block_disabled_get(Elm_Transit* transit);
1955 EAPI Elm_Effect *elm_fx_translation_add(Evas_Object* obj, Evas_Coord from_x, Evas_Coord from_y, Evas_Coord to_x, Evas_Coord to_y);
1958 EAPI Elm_Effect *elm_fx_resizing_add(Evas_Object* obj, Evas_Coord from_w, Evas_Coord from_h, Evas_Coord to_w, Evas_Coord to_h);
1961 EAPI Elm_Effect *elm_fx_zoom_add(Evas_Object* obj, float from_rate, float to_rate);
1964 typedef enum {ELM_FX_FLIP_AXIS_X, ELM_FX_FLIP_AXIS_Y} Elm_Fx_Flip_Axis;
1965 EAPI Elm_Effect *elm_fx_flip_add( Evas_Object* front, Evas_Object* back, Elm_Fx_Flip_Axis axis, Eina_Bool cw);
1968 EAPI Elm_Effect *elm_fx_blend_add(Evas_Object* before, Evas_Object* after);
1971 EAPI Elm_Effect *elm_fx_fade_add(Evas_Object* before, Evas_Object* after);
1974 EAPI Elm_Effect *elm_fx_rotation_add(Evas_Object* obj, float from_degree, float to_degree, Eina_Bool cw);
1977 EAPI Elm_Effect *elm_fx_color_add(Evas_Object* obj, unsigned int from_r, unsigned int from_g, unsigned int from_b, unsigned int from_a, unsigned int to_r, unsigned int to_g, unsigned int to_b, unsigned int to_a);
1980 typedef enum {ELM_FX_WIPE_DIR_LEFT, ELM_FX_WIPE_DIR_RIGHT, ELM_FX_WIPE_DIR_UP, ELM_FX_WIPE_DIR_DOWN} Elm_Fx_Wipe_Dir;
1981 typedef enum {ELM_FX_WIPE_TYPE_HIDE, ELM_FX_WIPE_TYPE_SHOW} Elm_Fx_Wipe_Type;
1982 EAPI Elm_Effect *elm_fx_wipe_add(Evas_Object* obj, Elm_Fx_Wipe_Type type, Elm_Fx_Wipe_Dir dir);
1984 /*ResizableFlip Fx*/
1985 EAPI Elm_Effect *elm_fx_resizable_flip_add(Evas_Object* front, Evas_Object* back, Elm_Fx_Flip_Axis axis, Eina_Bool cw);
1989 typedef struct _elm_fx_matrix {
1990 float _11, _12, _13, _14;
1991 float _21, _22, _23, _24;
1992 float _31, _32, _33, _34;
1993 float _41, _42, _43, _44;
1996 EAPI Elm_Effect* elm_fx_transform_add( Evas_Object* obj, Elm_Fx_Matrix* from, Elm_Fx_Matrix* to );
1997 EAPI void elm_fx_transform_identity_set( Elm_Fx_Matrix* m );
1998 EAPI void elm_fx_transform_translate( Elm_Fx_Matrix* m, const float pos_x, const float pos_y, const float pos_z );
1999 EAPI void elm_fx_transform_scale( Elm_Fx_Matrix* m, const float scale_x, const float scale_y, const float scale_z );
2000 EAPI void elm_fx_transform_rotate( Elm_Fx_Matrix* m, const float rad_x, const float rad_y, const float rad_z );
2001 EAPI void elm_fx_transform_multiply( Elm_Fx_Matrix* m, Elm_Fx_Matrix* m1, Elm_Fx_Matrix* m2 );
2004 /* ImageAnimation Fx */
2005 EAPI Elm_Effect *elm_fx_imageanimation_add(Evas_Object* icon, const char** images, unsigned int item_num);
2009 ELM_NAVIGATIONBAR_FUNCTION_BUTTON1,
2010 ELM_NAVIGATIONBAR_FUNCTION_BUTTON2,
2011 ELM_NAVIGATIONBAR_FUNCTION_BUTTON3,
2012 ELM_NAVIGATIONBAR_BACK_BUTTON
2013 } Elm_Navi_Button_Type;
2015 EAPI Evas_Object *elm_navigationbar_add(Evas_Object *parent);
2016 EAPI void elm_navigationbar_push(Evas_Object *obj, const char *title, Evas_Object *fn_btn1, Evas_Object *fn_btn2, Evas_Object *fn_btn3, Evas_Object *content);
2017 EAPI void elm_navigationbar_pop(Evas_Object *obj);
2018 EAPI void elm_navigationbar_to_content_pop(Evas_Object *obj, Evas_Object *content);
2019 EAPI void elm_navigationbar_title_label_set(Evas_Object *obj, Evas_Object *content, const char *title);
2020 EAPI const char *elm_navigationbar_title_label_get(Evas_Object *obj, Evas_Object *content);
2021 EAPI void elm_navigationbar_title_object_add(Evas_Object *obj, Evas_Object *content, Evas_Object *title_obj);
2022 EAPI Eina_List *elm_navigationbar_title_object_list_get(Evas_Object *obj, Evas_Object *content);
2023 EAPI Evas_Object *elm_navigationbar_content_top_get(Evas_Object *obj);
2024 EAPI Evas_Object *elm_navigationbar_content_bottom_get(Evas_Object *obj);
2025 EAPI void elm_navigationbar_hidden_set(Evas_Object *obj, Eina_Bool hidden);
2026 EAPI void elm_navigationbar_title_button_set(Evas_Object *obj, Evas_Object *content, Evas_Object *button, Elm_Navi_Button_Type button_type);
2027 EAPI Evas_Object *elm_navigationbar_title_button_get(Evas_Object *obj, Evas_Object *content, Elm_Navi_Button_Type button_type);
2030 #define TAB_BAR_SYSTEM_ICON_CONTACT "elm/icon/tabbar_contact/default"
2031 #define TAB_BAR_SYSTEM_ICON_GROUP "elm/icon/tabbar_group/default"
2032 #define TAB_BAR_SYSTEM_ICON_SONG "elm/icon/tabbar_song/default"
2033 #define TAB_BAR_SYSTEM_ICON_FAVORITES "elm/icon/tabbar_favorites/default"
2034 #define TAB_BAR_SYSTEM_ICON_SEARCH "elm/icon/tabbar_search/default"
2035 #define TAB_BAR_SYSTEM_ICON_MESSAGE "elm/icon/tabbar_message/default"
2036 #define TAB_BAR_SYSTEM_ICON_SETTING "elm/icon/tabbar_setting/default"
2038 EAPI Evas_Object *elm_tabbar_add(Evas_Object *parent);
2039 EAPI Elm_Tab_Item *elm_tabbar_item_add(Evas_Object *obj, const char *icon_path, const char *label, Evas_Object *view);
2040 EAPI Evas_Object *elm_tabbar_item_icon_get(Elm_Tab_Item *it);
2041 EAPI const char *elm_tabbar_item_label_get(Elm_Tab_Item *it);
2042 EAPI void elm_tabbar_item_label_set(Elm_Tab_Item *it, const char *label);
2043 EAPI void elm_tabbar_item_select(Elm_Tab_Item *it);
2044 EAPI void elm_tabbar_edit_start(Evas_Object *obj);
2045 EAPI void elm_tabbar_item_visible_set(Elm_Tab_Item *it, Eina_Bool bar);
2047 /* smart callbacks called:
2048 * "clicked" - when item clicked
2052 #define CONTROLBAR_SYSTEM_ICON_ALBUMS "controlbar_albums"
2053 #define CONTROLBAR_SYSTEM_ICON_ARTISTS "controlbar_artists"
2054 #define CONTROLBAR_SYSTEM_ICON_SONGS "controlbar_songs"
2055 #define CONTROLBAR_SYSTEM_ICON_PLAYLIST "controlbar_playlist"
2056 #define CONTROLBAR_SYSTEM_ICON_MORE "controlbar_more"
2057 #define CONTROLBAR_SYSTEM_ICON_CONTACTS "controlbar_contacts"
2058 #define CONTROLBAR_SYSTEM_ICON_DIALER "controlbar_dialer"
2059 #define CONTROLBAR_SYSTEM_ICON_FAVORITES "controlbar_favorites"
2060 #define CONTROLBAR_SYSTEM_ICON_LOGS "controlbar_logs"
2062 typedef struct _Elm_Controlbar_Item Elm_Controlbar_Item;
2064 EAPI Evas_Object *elm_controlbar_add(Evas_Object *parent);
2065 EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_append(Evas_Object *obj, const char *icon_path, const char *label, Evas_Object *view);
2066 EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_prepend(Evas_Object *obj, const char *icon_path, const char *label, Evas_Object *view);
2067 EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_insert_before(Evas_Object *obj, Elm_Controlbar_Item *before, const char *icon_path, const char *label, Evas_Object *view);
2068 EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_insert_after(Evas_Object *obj, Elm_Controlbar_Item *after, const char *icon_path, const char *label, Evas_Object *view);
2069 EAPI Elm_Controlbar_Item *elm_controlbar_tool_item_append(Evas_Object *obj, const char *icon_path, const char *label, void (*func) (const void *data, Evas_Object *obj, void *event_info), const void *data);
2070 EAPI Elm_Controlbar_Item *elm_controlbar_tool_item_prepend(Evas_Object *obj, const char *icon_path, const char *label, void (*func) (const void *data, Evas_Object *obj, void *event_info), const void *data);
2071 EAPI Elm_Controlbar_Item *elm_controlbar_tool_item_insert_before(Evas_Object *obj, Elm_Controlbar_Item *before, const char *icon_path, const char *label, void (*func) (const void *data, Evas_Object *obj, void *event_info), const void *data);
2072 EAPI Elm_Controlbar_Item *elm_controlbar_tool_item_insert_after(Evas_Object *obj, Elm_Controlbar_Item *after, const char *icon_path, const char *label, void (*func) (const void *data, Evas_Object *obj, void *event_info), const void *data);
2073 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_append(Evas_Object *obj, Evas_Object *obj_item, const int sel);
2074 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_prepend(Evas_Object *obj, Evas_Object *obj_item, const int sel);
2075 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_insert_before(Evas_Object *obj, Elm_Controlbar_Item *before, Evas_Object *obj_item, const int sel);
2076 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_insert_after(Evas_Object *obj, Elm_Controlbar_Item *after, Evas_Object *obj_item, const int sel);
2077 EAPI void elm_controlbar_item_del(Elm_Controlbar_Item *it);
2078 EAPI void elm_controlbar_item_select(Elm_Controlbar_Item *it);
2079 EAPI void elm_controlbar_item_visible_set(Elm_Controlbar_Item *it, Eina_Bool bar);
2080 EAPI void elm_controlbar_item_editable_set(Elm_Controlbar_Item *it, Eina_Bool editable);
2081 EAPI Evas_Object *elm_controlbar_item_icon_get(Elm_Controlbar_Item *it);
2082 EAPI const char *elm_controlbar_item_label_get(Elm_Controlbar_Item *it);
2083 EAPI void elm_controlbar_item_label_set(Elm_Controlbar_Item *it, const char *label);
2084 EAPI Elm_Controlbar_Item *elm_controlbar_selected_item_get(Evas_Object *obj);
2085 EAPI Elm_Controlbar_Item *elm_controlbar_first_item_get(Evas_Object *obj);
2086 EAPI Elm_Controlbar_Item *elm_controlbar_last_item_get(Evas_Object *obj);
2087 EAPI Eina_List *elm_controlbar_items_get(Evas_Object *obj);
2088 EAPI Elm_Controlbar_Item *elm_controlbar_item_prev(Elm_Controlbar_Item *it);
2089 EAPI Elm_Controlbar_Item *elm_controlbar_item_next(Elm_Controlbar_Item *it);
2090 EAPI void elm_controlbar_edit_start(Evas_Object *obj);
2091 EAPI void elm_controlbar_view_set(Evas_Object *obj, Evas_Object *view);
2094 /* diskcontroller */
2095 typedef struct _Elm_Diskcontroller_Item Elm_Diskcontroller_Item;
2097 EAPI Evas_Object *elm_diskcontroller_add(Evas_Object *parent);
2098 EAPI void elm_diskcontroller_round_set(Evas_Object *obj, Eina_Bool round);
2099 EAPI Elm_Diskcontroller_Item *elm_diskcontroller_item_add(Evas_Object *obj, Evas_Object *icon, const char *label, void (*func) (void *data, Evas_Object *obj, void *event_info), const void *data);
2100 EAPI void elm_diskcontroller_item_del(Elm_Diskcontroller_Item *it);
2101 EAPI const char *elm_diskcontroller_item_label_get(Elm_Diskcontroller_Item *it);
2102 EAPI void elm_diskcontroller_item_label_set(Elm_Diskcontroller_Item *it, const char *label);
2103 EAPI void elm_diskcontroller_item_focus_set(Elm_Diskcontroller_Item *it);
2104 /* smart callbacks called:
2105 * "stop" - when scroller stop
2109 EAPI Evas_Object *elm_searchbar_add(Evas_Object *parent);
2110 EAPI void elm_searchbar_text_set(Evas_Object *obj, const char *entry);
2111 EAPI const char *elm_searchbar_text_get(Evas_Object *obj);
2112 EAPI Evas_Object *elm_searchbar_entry_get(Evas_Object *obj);
2113 EAPI void elm_searchbar_cancel_button_animation_set(Evas_Object *obj, Eina_Bool cancel_btn_ani_flag);
2116 typedef enum _Elm_Actionsheet_Button_Type {
2117 ELM_ACTIONSHEET_BT_NORMAL = 0,
2118 ELM_ACTIONSHEET_BT_CANCEL,
2119 ELM_ACTIONSHEET_BT_DESTRUCTIVE
2120 } Elm_Actionsheet_Button_Type;
2122 EAPI Evas_Object *elm_actionsheet_add(Evas_Object *parent);
2123 EAPI void elm_actionsheet_title_set(Evas_Object *obj, const char *title);
2124 EAPI void elm_actionsheet_button_add(Evas_Object *obj, const Elm_Actionsheet_Button_Type type, const char *title, void (*button_clicked_cb) (void *data, Evas_Object *obj, void *event_info), void *event_info);
2125 EAPI int elm_actionsheet_button_title_get(Evas_Object *obj, const int index, char **title);
2128 typedef struct _Elm_Toolbar2_Item Elm_Toolbar2_Item;
2129 EAPI Evas_Object *elm_toolbar2_add(Evas_Object *parent);
2130 EAPI void elm_toolbar2_icon_size_set(Evas_Object *obj, int icon_size);
2131 EAPI int elm_toolbar2_icon_size_get(Evas_Object *obj);
2132 EAPI Elm_Toolbar2_Item *elm_toolbar2_item_add(Evas_Object *obj, Evas_Object *icon, const char *label, void (*func) (void *data, Evas_Object *obj, void *event_info), const void *data);
2133 EAPI Evas_Object *elm_toolbar2_item_icon_get(Elm_Toolbar2_Item *item);
2134 EAPI void elm_toolbar2_item_del(Elm_Toolbar2_Item *it);
2135 EAPI void elm_toolbar2_item_del_cb_set(Elm_Toolbar2_Item *it, void (*func)(void *data, Evas_Object *obj, void *event_info));
2136 EAPI void elm_toolbar2_scrollable_set(Evas_Object *obj, Eina_Bool scrollable);
2137 EAPI void elm_toolbar2_homogenous_set(Evas_Object *obj, Eina_Bool homogenous);
2138 EAPI void elm_toolbar2_align_set(Evas_Object *obj, double align);
2141 EAPI Evas_Object *elm_colorpicker_add(Evas_Object *parent);
2142 EAPI void elm_colorpicker_color_set(Evas_Object *obj, int r, int g , int b);
2143 EAPI void elm_colorpicker_color_get(Evas_Object *obj, int *r, int *g , int *b);
2144 /* smart callbacks called:
2145 * "clicked" - when bar or button is clicked
2150 typedef struct _Colorpalette_Color Elm_Colorpalette_Color;
2152 struct _Colorpalette_Color
2154 unsigned int r, g, b;
2157 EAPI Evas_Object *elm_colorpalette_add(Evas_Object *parent);
2158 EAPI void elm_colorpalette_color_set(Evas_Object *obj, int color_num, Elm_Colorpalette_Color *color);
2159 EAPI void elm_colorpalette_row_column_set(Evas_Object *obj, int row, int col);
2160 /* smart callbacks called:
2161 * "clicked" - when image clicked
2165 EAPI Evas_Object *elm_editfield_add(Evas_Object *parent);
2166 EAPI void elm_editfield_label_set(Evas_Object *obj, const char *label);
2167 EAPI const char *elm_editfield_label_get(Evas_Object *obj);
2168 EAPI void elm_editfield_guide_text_set(Evas_Object *obj, const char *text);
2169 EAPI const char *elm_editfield_guide_text_get(Evas_Object *obj);
2170 EAPI Evas_Object *elm_editfield_entry_get(Evas_Object *obj);
2171 EAPI Evas_Object *elm_editfield_clear_button_show(Evas_Object *obj, Eina_Bool show);
2172 EAPI Eina_Bool elm_editfield_right_icon_set(Evas_Object *obj, Evas_Object *icon);
2173 EAPI Evas_Object *elm_editfield_right_icon_get(Evas_Object *obj);
2174 EAPI Eina_Bool elm_editfield_left_icon_set(Evas_Object *obj, Evas_Object *icon);
2175 EAPI Evas_Object *elm_editfield_lett_icon_get(Evas_Object *obj);
2176 EAPI void elm_editfield_entry_single_line_set(Evas_Object *obj, Eina_Bool single_line);
2177 EAPI void elm_editfield_eraser_set(Evas_Object *obj, Eina_Bool visible);
2186 typedef struct _Elm_Softkey_Item Elm_Softkey_Item;
2187 EAPI Evas_Object *elm_softkey_add(Evas_Object *parent);
2188 EAPI Elm_Softkey_Item *elm_softkey_button_add(Evas_Object *obj, Elm_Softkey_Type type, Evas_Object *icon, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), const void *data);
2189 EAPI void elm_softkey_button_del(Evas_Object *obj, Elm_Softkey_Type type);
2190 EAPI void elm_softkey_button_show(Evas_Object *obj, Elm_Softkey_Type type);
2191 EAPI void elm_softkey_button_hide(Evas_Object *obj, Elm_Softkey_Type type);
2193 EAPI Elm_Softkey_Item *elm_softkey_panel_item_add(Evas_Object *obj, Evas_Object *icon, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), const void *data);
2194 EAPI int elm_softkey_panel_del(Evas_Object *obj);
2195 EAPI int elm_softkey_panel_close(Evas_Object *obj);
2196 EAPI int elm_softkey_panel_open(Evas_Object *obj);
2198 EAPI void elm_softkey_item_icon_set(Elm_Softkey_Item *item, Evas_Object *icon);
2199 EAPI Evas_Object *elm_softkey_item_icon_get(Elm_Softkey_Item * item);
2200 EAPI void elm_softkey_item_label_set(Elm_Softkey_Item *item, const char *label);
2201 EAPI const char *elm_softkey_item_label_get(Elm_Softkey_Item * item);
2202 EAPI Eina_Bool elm_softkey_item_disabled_get(Elm_Softkey_Item *item);
2203 EAPI void elm_softkey_item_disabled_set(Elm_Softkey_Item *item, Eina_Bool disabled);
2204 EAPI void elm_softkey_item_callback_set(Elm_Softkey_Item* item, void (*func)(void *data, Evas_Object *obj, void *event_info), const void *data );
2205 /* smart callback called:
2206 * "clicked" - the user clicked the button, event_info: Softkey item
2207 * "press" - the user press the button, event_info: Softkey item
2208 * "panel,show" - when the panel is shown
2209 * "panel,hide" - when the panel is hidden
2213 EAPI Evas_Object *elm_gridbox_add(Evas_Object *parent);
2214 EAPI void elm_gridbox_padding_set(Evas_Object *obj, Evas_Coord horizontal, Evas_Coord vertical);
2215 EAPI void elm_gridbox_item_size_set(Evas_Object *obj, Evas_Coord h_itemsize, Evas_Coord v_itemsize);
2216 EAPI void elm_gridbox_pack(Evas_Object *obj, Evas_Object *subobj);
2217 EAPI Eina_Bool elm_gridbox_unpack(Evas_Object *obj, Evas_Object *subobj);
2218 EAPI Eina_List *elm_gridbox_children_get(Evas_Object *obj);
2219 EAPI void elm_gridbox_homogenous_padding_set(Evas_Object *obj, Eina_Bool homogenous);
2222 typedef enum _Elm_Actionslider_Indicator_Pos
2224 ELM_ACTIONSLIDER_INDICATOR_LEFT,
2225 ELM_ACTIONSLIDER_INDICATOR_RIGHT,
2226 ELM_ACTIONSLIDER_INDICATOR_CENTER
2227 } Elm_Actionslider_Indicator_Pos;
2229 typedef enum _Elm_Actionslider_Magnet_Pos
2231 ELM_ACTIONSLIDER_MAGNET_LEFT,
2232 ELM_ACTIONSLIDER_MAGNET_RIGHT,
2233 ELM_ACTIONSLIDER_MAGNET_BOTH,
2234 ELM_ACTIONSLIDER_MAGNET_CENTER
2235 } Elm_Actionslider_Magnet_Pos;
2237 typedef enum _Elm_Actionslider_Label_Pos
2239 ELM_ACTIONSLIDER_LABEL_LEFT,
2240 ELM_ACTIONSLIDER_LABEL_RIGHT,
2241 ELM_ACTIONSLIDER_LABEL_CENTER
2242 } Elm_Actionslider_Label_Pos;
2244 EAPI Evas_Object *elm_actionslider_add(Evas_Object *parent);
2245 EAPI void elm_actionslider_indicator_pos_set(Evas_Object *obj, Elm_Actionslider_Indicator_Pos pos);
2246 EAPI void elm_actionslider_magnet_pos_set(Evas_Object *obj, Elm_Actionslider_Magnet_Pos pos);
2247 EAPI int elm_actionslider_label_set(Evas_Object *obj, Elm_Actionslider_Label_Pos pos, const char *label);
2248 EAPI int elm_actionslider_hold(Evas_Object *obj, Eina_Bool flag);
2249 /* smart callbacks called:
2250 * "indicator,position" - when a button reaches to the special position like "left", "right" and "center".
2254 EAPI Evas_Object *elm_zoomcontrols_add(Evas_Object *parent);
2255 EAPI void elm_zoomcontrols_range_set(Evas_Object *obj, int range);
2256 /* smart callbacks called:
2257 * "up_clicked" - when up button of zoomcontrols is clicked
2258 * "down_clicked" - when down button of zoomcontrols is clicked
2262 typedef enum _Elm_Viewflipper_Policy
2264 ERROR_0 = -1, //can not find wanted value
2267 ERROR_1 =1001, //confrim parameter is layout or not
2268 ERROR_2 , //confrim memory check
2269 ERROR_3 , //data is empty
2270 ERROR_4 , //check the range
2271 ERROR_5 , //Non need operation
2272 ERROR_6 , //waiting gui
2273 ERROR_7 , //timer second is not setup or can not time setup
2277 } Elm_Viewflipper_Policy;
2278 EAPI Evas_Object *elm_viewflipper_add(Evas_Object * parent);
2279 EAPI int elm_viewflipper_isFlipbutton();
2280 EAPI int elm_viewflipper_isAutoStart();
2281 EAPI int elm_viewflipper_isValidPos(int pos);
2282 EAPI int elm_viewflipper_addChild(Evas_Object * child_layout);
2283 EAPI int elm_viewflipper_removeChild(Evas_Object * child_layout);
2284 EAPI int elm_viewflipper_removeChildAt(int pos);
2285 EAPI int elm_viewflipper_getPositionChild(Evas_Object * child_layout);
2286 EAPI Evas_Object *elm_viewflipper_getChildAt(int pos);
2287 EAPI int elm_viewflipper_getCountChild();
2288 EAPI int elm_viewflipper_setDisplayedChild(int pos);
2289 EAPI int elm_viewflipper_setNowView();
2290 EAPI int elm_viewflipper_setNextView();
2291 EAPI int elm_viewflipper_setPreviousView();
2292 EAPI int elm_viewflipper_setFlipInterval(int milliseconds);
2293 EAPI int elm_viewflipper_setFlipbutton(int showbutton);
2294 EAPI int elm_viewflipper_startAutoFlippingWithOption(int drection,int pos);
2295 EAPI int elm_viewflipper_startAutoFlipping();
2296 EAPI int elm_viewflipper_stopAutoFlipping();
2299 struct _Elm_Gallery_Item
2301 Evas_Object *parent;
2306 Evas_Coord x, y, w, h;
2308 Eina_Bool on_hold : 1;
2309 Eina_Bool on_show : 1;
2310 Eina_Bool on_highquality : 1;
2312 typedef struct _Elm_Gallery_Item Elm_Gallery_Item;
2313 EAPI Evas_Object *elm_gallery_add(Evas_Object *parent);
2314 EAPI Eina_Bool elm_gallery_data_set(Evas_Object *obj, Eina_List *list);
2315 EAPI Elm_Gallery_Item *elm_gallery_item_append(Evas_Object *obj, const char *photo_file);
2316 EAPI Elm_Gallery_Item *elm_gallery_item_prepend(Evas_Object *obj, const char *photo_file);
2317 EAPI void elm_gallery_item_del(Elm_Gallery_Item *it);
2318 EAPI const char *elm_gallery_item_file_get(Elm_Gallery_Item *it);
2319 EAPI void elm_gallery_item_show(Elm_Gallery_Item *it);
2320 EAPI Eina_List *elm_gallery_item_list_get(Evas_Object *obj);
2321 EAPI void elm_gallery_set_type(Evas_Object *obj,int type);
2322 EAPI void elm_gallery_set_max_count(Evas_Object *obj,int max_value);
2324 /* Sliding Drawer */
2325 EAPI Evas_Object *elm_slidingdrawer_add(Evas_Object *parent);
2326 EAPI void elm_slidingdrawer_content_set (Evas_Object *obj, Evas_Object *content);
2329 EAPI Evas_Object *elm_wipercontrol_add(Evas_Object *parent);
2330 EAPI void elm_wipercontrol_below_content_set (Evas_Object *obj, Evas_Object *content);
2331 EAPI void elm_wipercontrol_above_content_set (Evas_Object *obj, Evas_Object *content);
2334 EAPI Evas_Object *elm_analogclock_add(Evas_Object *parent);
2337 EAPI Evas_Object *elm_ratingbar_add(Evas_Object *parent);
2338 EAPI void elm_ratingbar_rating_set(Evas_Object *obj, int rating);
2339 EAPI int elm_ratingbar_rating_get(Evas_Object *obj);
2340 /* smart callback called:
2341 * "changed" - when a rating is changed
2343 /* available styles:
2348 EAPI Evas_Object *elm_chronometer_add(Evas_Object *parent);
2349 EAPI void elm_chronometer_start(Evas_Object *obj);
2350 EAPI void elm_chronometer_stop(Evas_Object *obj);
2351 EAPI void elm_chronometer_time_set(Evas_Object *obj, int hrs, int min, int sec);
2352 EAPI void elm_chronometer_time_get(const Evas_Object *obj, int *hrs, int *min, int *sec);
2353 EAPI void elm_chronometer_format_set(Evas_Object *obj, Eina_Bool format);
2354 EAPI void elm_chronometer_format_get(Evas_Object *obj, Eina_Bool *format);
2358 typedef struct _Dialogue_Item Dialogue_Item;
2360 typedef enum _Elm_Dialoguegourp_Item_Style
2362 ELM_DIALOGUEGROUP_ITEM_STYLE_DEFAULT = 0,
2363 ELM_DIALOGUEGROUP_ITEM_STYLE_EDITFIELD = (1 << 0)
2364 }Elm_Dialoguegroup_Item_Style;
2366 EAPI Evas_Object *elm_dialoguegroup_add(Evas_Object *parent);
2367 EAPI Dialogue_Item *elm_dialoguegroup_append(Evas_Object *obj, Evas_Object *subobj, Elm_Dialoguegroup_Item_Style style);
2368 EAPI Dialogue_Item *elm_dialoguegroup_prepend(Evas_Object *obj, Evas_Object *subobj, Elm_Dialoguegroup_Item_Style style);
2369 EAPI Dialogue_Item *elm_dialoguegroup_insert_after(Evas_Object *obj, Evas_Object *subobj, Dialogue_Item *after, Elm_Dialoguegroup_Item_Style style);
2370 EAPI Dialogue_Item *elm_dialoguegroup_insert_before(Evas_Object *obj, Evas_Object *subobj, Dialogue_Item *before, Elm_Dialoguegroup_Item_Style style);
2371 EAPI void elm_dialoguegroup_remove(Dialogue_Item *item);
2372 EAPI void elm_dialoguegroup_remove_all(Evas_Object *obj);
2373 EAPI void elm_dialoguegroup_title_set(Evas_Object *obj, const char *title);
2374 EAPI const char *elm_dialoguegroup_title_get(Evas_Object *obj);
2375 EAPI void elm_dialoguegroup_press_effect_set(Dialogue_Item *item, Eina_Bool press);
2376 EAPI Eina_Bool elm_dialoguegroup_press_effect_get(Dialogue_Item *item);
2377 EAPI Evas_Object *elm_dialoguegroup_item_content_get(Dialogue_Item *item);
2379 /* AutoCompleteView */
2380 typedef Eina_Bool (*elmautocompleteview_matchfunction) (Evas_Object *obj,char *text,Evas_Object *list,void *data);
2381 EAPI Evas_Object *elm_autocompleteview_add(Evas_Object *parent);
2382 EAPI Evas_Object *elm_autocompleteview_entry_get(Evas_Object *obj);
2383 EAPI Evas_Object *elm_autocompleteview_editfield_get(Evas_Object *obj);
2384 EAPI void elm_autocompleteview_threshold_set(Evas_Object *obj, int threshold);
2385 EAPI int elm_autocompleteview_threshold_get(Evas_Object *obj);
2386 EAPI void elm_autocompleteview_data_set(Evas_Object *obj, Eina_List *data_list);
2387 EAPI void elm_autocompleteview_match_func_set(Evas_Object *obj, elmautocompleteview_matchfunction func,void *data);
2388 EAPI void elm_autocompleteview_text_update(Evas_Object *obj, char *text);
2391 EAPI Evas_Object *elm_animatedicon_add(Evas_Object *parent);
2392 EAPI void elm_animatedicon_file_set(Evas_Object *obj, const char **images, const int item_num);
2393 EAPI void elm_animatedicon_duration_set(Evas_Object *obj, const double duration);
2394 EAPI void elm_animatedicon_animation_start(Evas_Object *obj);
2395 EAPI void elm_animatedicon_repeat_set(Evas_Object *obj, const unsigned int repeat, const double interval);
2398 typedef struct _Coverflow_Item Elm_Coverflow_Item;
2399 typedef struct _Coverflow_Item_Class
2401 void (*CoverflowItemGenFunc)(void* data, Evas_Object* obj );
2402 void (*CoverflowItemDelFunc)(void* data, Evas_Object* obj );
2403 } Elm_Coverflow_Item_Class;
2405 EAPI Evas_Object *elm_coverflow_add( Evas_Object* parent );
2406 EAPI Elm_Coverflow_Item* elm_coverflow_item_append( Evas_Object* obj, Elm_Coverflow_Item_Class* cic, void* data, void (*func)(void* data, Evas_Object* obj, void* event_info ), void* func_data );
2407 EAPI void elm_coverflow_clear( Evas_Object* obj );
2410 typedef struct _Cabinet_Item Elm_Cabinet_Item;
2411 EAPI Evas_Object *elm_cabinet_add(Evas_Object *parent);
2412 EAPI void elm_cabinet_next(Evas_Object *obj);
2413 EAPI void elm_cabinet_prev(Evas_Object *obj);
2414 EAPI Eina_Bool elm_cabinet_bounce_get(Evas_Object *obj);
2415 EAPI void elm_cabinet_bounce_set(Evas_Object *obj, Eina_Bool bounce);
2416 EAPI Elm_Cabinet_Item *elm_cabinet_item_append(Evas_Object *obj, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), void *data);
2417 EAPI Elm_Cabinet_Item *elm_cabinet_item_prepend(Evas_Object *obj, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), void *data);
2418 EAPI const Eina_List *elm_cabinet_items_get(Evas_Object *obj);
2419 EAPI Elm_Cabinet_Item *elm_cabinet_first_item_get(Evas_Object *obj);
2420 EAPI Elm_Cabinet_Item *elm_cabinet_last_item_get(Evas_Object *obj);
2421 EAPI Elm_Cabinet_Item *elm_cabinet_selected_item_get(Evas_Object *obj);
2422 EAPI void elm_cabinet_item_selected_set(Elm_Cabinet_Item *item);
2423 EAPI void elm_cabinet_item_del(Elm_Cabinet_Item *item);
2424 EAPI const char *elm_cabinet_item_label_get(Elm_Cabinet_Item *item);
2425 EAPI void elm_cabinet_item_label_set(Elm_Cabinet_Item *item, const char *label);
2426 EAPI const char *elm_cabinet_item_sub_info_get(Elm_Cabinet_Item *item);
2427 EAPI void elm_cabinet_item_sub_info_set(Elm_Cabinet_Item *item, const char *sub_info);
2428 EAPI Elm_Cabinet_Item *elm_cabinet_item_prev(Elm_Cabinet_Item *item);
2429 EAPI Elm_Cabinet_Item *elm_cabinet_item_next(Elm_Cabinet_Item *item);
2430 EAPI void *elm_cabinet_item_data_get(Elm_Cabinet_Item *item);
2431 EAPI void elm_cabinet_item_data_set(Elm_Cabinet_Item *item, void *data);
2432 EAPI Eina_Bool elm_cabinet_item_del_btn_disabled_get(Elm_Cabinet_Item *item);
2433 EAPI void elm_cabinet_item_del_btn_disabled_set(Elm_Cabinet_Item *item, Eina_Bool disabled);
2434 EAPI Eina_Bool elm_cabinet_item_sub_info_disabled_get(Elm_Cabinet_Item *item);
2435 EAPI void elm_cabinet_item_sub_info_disabled_set(Elm_Cabinet_Item *item, Eina_Bool disabled);
2438 typedef enum { ELM_DAYSELECTOR_SUN, ELM_DAYSELECTOR_MON, ELM_DAYSELECTOR_TUE, ELM_DAYSELECTOR_WED, ELM_DAYSELECTOR_THU, ELM_DAYSELECTOR_FRI, ELM_DAYSELECTOR_SAT } Elm_DaySelector_Day;
2440 EAPI Evas_Object *elm_dayselector_add(Evas_Object *parent);
2441 EAPI Eina_Bool elm_dayselector_check_state_get(Evas_Object *obj, Elm_DaySelector_Day day);
2442 EAPI void elm_dayselector_title_set(Evas_Object *parent, const char *title);