3 * vim:ts=8:sw=3:sts=3:expandtab:cino=>5n-2f0^-2{2(0W1st0
9 * @brief Elementary's API
14 @ELM_UNIX_DEF@ ELM_UNIX
15 @ELM_WIN32_DEF@ ELM_WIN32
16 @ELM_WINCE_DEF@ ELM_WINCE
17 @ELM_EDBUS_DEF@ ELM_EDBUS
18 @ELM_EFREET_DEF@ ELM_EFREET
19 @ELM_ETHUMB_DEF@ ELM_ETHUMB
20 @ELM_ALLOCA_H_DEF@ ELM_ALLOCA_H
21 @ELM_LIBINTL_H_DEF@ ELM_LIBINTL_H
23 /* Standard headers for standard system calls etc. */
28 #include <sys/types.h>
31 #include <sys/param.h>
56 #if defined (ELM_WIN32) || defined (ELM_WINCE)
59 # define alloca _alloca
69 #include <Ecore_Evas.h>
70 #include <Ecore_File.h>
71 #include <Ecore_IMF.h>
81 # include <Efreet_Mime.h>
82 # include <Efreet_Trash.h>
86 # include <Ethumb_Client.h>
94 # ifdef ELEMENTARY_BUILD
96 # define EAPI __declspec(dllexport)
99 # endif /* ! DLL_EXPORT */
101 # define EAPI __declspec(dllimport)
102 # endif /* ! EFL_EVAS_BUILD */
106 # define EAPI __attribute__ ((visibility("default")))
113 #endif /* ! _WIN32 */
116 /* allow usage from c++ */
121 #define ELM_VERSION_MAJOR @VMAJ@
122 #define ELM_VERSION_MINOR @VMIN@
124 typedef struct _Elm_Version
132 EAPI extern Elm_Version *elm_version;
135 #define ELM_RECTS_INTERSECT(x, y, w, h, xx, yy, ww, hh) (((x) < ((xx) + (ww))) && ((y) < ((yy) + (hh))) && (((x) + (w)) > (xx)) && (((y) + (h)) > (yy)))
136 #define ELM_PI 3.14159265358979323846
138 /**************************************************************************/
139 EAPI extern int ELM_ECORE_EVENT_ETHUMB_CONNECT;
142 typedef enum _Elm_Win_Type
145 ELM_WIN_DIALOG_BASIC,
154 typedef enum _Elm_Win_Keyboard_Mode
156 ELM_WIN_KEYBOARD_UNKNOWN,
157 ELM_WIN_KEYBOARD_OFF,
159 ELM_WIN_KEYBOARD_ALPHA,
160 ELM_WIN_KEYBOARD_NUMERIC,
161 ELM_WIN_KEYBOARD_PIN,
162 ELM_WIN_KEYBOARD_PHONE_NUMBER,
163 ELM_WIN_KEYBOARD_HEX,
164 ELM_WIN_KEYBOARD_TERMINAL,
165 ELM_WIN_KEYBOARD_PASSWORD,
167 ELM_WIN_KEYBOARD_HOST,
168 ELM_WIN_KEYBOARD_FILE,
169 ELM_WIN_KEYBOARD_URL,
170 ELM_WIN_KEYBOARD_KEYPAD,
171 ELM_WIN_KEYBOARD_J2ME
172 } Elm_Win_Keyboard_Mode;
175 * Emitted when policy value changed.
177 EAPI extern int ELM_EVENT_POLICY_CHANGED;
178 typedef struct _Elm_Event_Policy_Changed
183 } Elm_Event_Policy_Changed;
186 * Policy identifiers.
188 * @see elm_policy_set()
190 typedef enum _Elm_Policy
192 ELM_POLICY_QUIT, /**< when should quit application automatically.
193 * @see Elm_Policy_Quit.
198 typedef enum _Elm_Policy_Quit
200 ELM_POLICY_QUIT_NONE = 0, /**< never quit application automatically */
201 ELM_POLICY_QUIT_LAST_WINDOW_CLOSED /**< quit when last window is closed */
204 typedef enum _Elm_Thumb_Animation_Setting
206 ELM_THUMB_ANIMATION_START = 0, /* Play animation once */
207 ELM_THUMB_ANIMATION_LOOP, /* Keep playing animation until stop is requested */
208 ELM_THUMB_ANIMATION_STOP,
209 ELM_THUMB_ANIMATION_LAST
210 } Elm_Thumb_Animation_Setting;
212 typedef struct _Elm_Theme Elm_Theme;
214 typedef enum _Elm_Clock_Digedit
217 ELM_CLOCK_HOUR_DECIMAL = 1 << 0,
218 ELM_CLOCK_HOUR_UNIT = 1 << 1,
219 ELM_CLOCK_MIN_DECIMAL = 1 << 2,
220 ELM_CLOCK_MIN_UNIT = 1 << 3,
221 ELM_CLOCK_SEC_DECIMAL = 1 << 4,
222 ELM_CLOCK_SEC_UNIT = 1 << 5,
223 ELM_CLOCK_ALL = (1 << 6) - 1
226 #ifndef ELM_LIB_QUICKLAUNCH
227 #define ELM_MAIN() int main(int argc, char **argv) {elm_init(argc, argv); return elm_main(argc, argv);}
229 #define ELM_MAIN() int main(int argc, char **argv) {return elm_quicklaunch_fallback(argc, argv);}
232 /**************************************************************************/
234 EAPI int elm_init(int argc, char **argv);
235 EAPI int elm_shutdown(void);
236 EAPI void elm_run(void);
237 EAPI void elm_exit(void);
239 EAPI void elm_quicklaunch_mode_set(Eina_Bool ql_on);
240 EAPI int elm_quicklaunch_init(int argc, char **argv);
241 EAPI int elm_quicklaunch_sub_init(int argc, char **argv);
242 EAPI int elm_quicklaunch_sub_shutdown(void);
243 EAPI int 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 Evas_Object *elm_object_top_widget_get(const Evas_Object *obj);
270 EAPI const char *elm_object_widget_type_get(const Evas_Object *obj);
272 EAPI double elm_scale_get(void);
273 EAPI void elm_scale_set(double scale);
274 EAPI void elm_scale_all_set(double scale);
275 EAPI Evas_Coord elm_finger_size_get(void);
276 EAPI void elm_finger_size_set(Evas_Coord size);
277 EAPI void elm_finger_size_all_set(Evas_Coord size);
279 EAPI void elm_autocapitalization_allow_all_set(Eina_Bool autocap);
280 EAPI void elm_autoperiod_allow_all_set(Eina_Bool autoperiod);
282 EAPI Eina_Bool elm_object_focus_get(Evas_Object *obj);
283 EAPI void elm_object_focus(Evas_Object *obj);
284 EAPI void elm_object_unfocus(Evas_Object *obj);
285 EAPI void elm_object_focus_allow_set(Evas_Object *obj, Eina_Bool enable);
286 EAPI Eina_Bool elm_object_focus_allow_get(const Evas_Object *obj);
288 EAPI void elm_object_scroll_hold_push(Evas_Object *obj);
289 EAPI void elm_object_scroll_hold_pop(Evas_Object *obj);
290 EAPI void elm_object_scroll_freeze_push(Evas_Object *obj);
291 EAPI void elm_object_scroll_freeze_pop(Evas_Object *obj);
292 EAPI void elm_object_scroll_lock_x_set(Evas_Object *obj, Eina_Bool lock);
293 EAPI void elm_object_scroll_lock_y_set(Evas_Object *obj, Eina_Bool lock);
294 EAPI Eina_Bool elm_object_scroll_lock_x_get(const Evas_Object *obj);
295 EAPI Eina_Bool elm_object_scroll_lock_y_get(const Evas_Object *obj);
297 EAPI void elm_object_signal_emit(Evas_Object *obj, const char *emission, const char *source);
298 EAPI void elm_object_signal_callback_add(Evas_Object *obj, const char *emission, const char *source, void (*func) (void *data, Evas_Object *o, const char *emission, const char *source), void *data);
299 EAPI void *elm_object_signal_callback_del(Evas_Object *obj, const char *emission, const char *source, void (*func) (void *data, Evas_Object *o, const char *emission, const char *source));
301 EAPI void elm_coords_finger_size_adjust(int times_w, Evas_Coord *w, int times_h, Evas_Coord *h);
303 EAPI double elm_longpress_timeout_get(void);
304 EAPI void elm_longpress_timeout_set(double longpress_timeout);
306 EAPI Elm_Theme *elm_theme_new(void);
307 EAPI void elm_theme_free(Elm_Theme *th);
308 EAPI void elm_theme_overlay_add(Elm_Theme *th, const char *item);
309 EAPI void elm_theme_overlay_del(Elm_Theme *th, const char *item);
310 EAPI void elm_theme_extension_add(Elm_Theme *th, const char *item);
311 EAPI void elm_theme_extension_del(Elm_Theme *th, const char *item);
312 EAPI void elm_theme_set(Elm_Theme *th, const char *theme);
313 EAPI const char *elm_theme_get(Elm_Theme *th);
314 EAPI void elm_theme_flush(Elm_Theme *th);
315 EAPI void elm_theme_full_flush(void);
317 EAPI void elm_theme_all_set(const char *theme);
319 EAPI void elm_object_theme_set(Evas_Object *obj, Elm_Theme *th);
320 EAPI Elm_Theme *elm_object_theme_get(Evas_Object *obj);
322 EAPI Evas_Object *elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type);
323 EAPI void elm_win_resize_object_add(Evas_Object *obj, Evas_Object *subobj);
324 EAPI void elm_win_resize_object_del(Evas_Object *obj, Evas_Object *subobj);
325 EAPI void elm_win_title_set(Evas_Object *obj, const char *title);
326 EAPI void elm_win_autodel_set(Evas_Object *obj, Eina_Bool autodel);
327 EAPI void elm_win_activate(Evas_Object *obj);
328 EAPI void elm_win_lower(Evas_Object *obj);
329 EAPI void elm_win_raise(Evas_Object *obj);
330 EAPI void elm_win_borderless_set(Evas_Object *obj, Eina_Bool borderless);
331 EAPI Eina_Bool elm_win_borderless_get(const Evas_Object *obj);
332 EAPI void elm_win_shaped_set(Evas_Object *obj, Eina_Bool shaped);
333 EAPI Eina_Bool elm_win_shaped_get(const Evas_Object *obj);
334 EAPI void elm_win_alpha_set(Evas_Object *obj, Eina_Bool alpha);
335 EAPI Eina_Bool elm_win_transparent_get(const Evas_Object *obj);
336 EAPI void elm_win_transparent_set(Evas_Object *obj, Eina_Bool transparent);
337 EAPI Eina_Bool elm_win_alpha_get(const Evas_Object *obj);
338 EAPI void elm_win_override_set(Evas_Object *obj, Eina_Bool override);
339 EAPI Eina_Bool elm_win_override_get(const Evas_Object *obj);
340 EAPI void elm_win_fullscreen_set(Evas_Object *obj, Eina_Bool fullscreen);
341 EAPI Eina_Bool elm_win_fullscreen_get(const Evas_Object *obj);
342 EAPI void elm_win_maximized_set(Evas_Object *obj, Eina_Bool maximized);
343 EAPI Eina_Bool elm_win_maximized_get(const Evas_Object *obj);
344 EAPI void elm_win_iconified_set(Evas_Object *obj, Eina_Bool iconified);
345 EAPI Eina_Bool elm_win_iconified_get(const Evas_Object *obj);
346 EAPI void elm_win_layer_set(Evas_Object *obj, int layer);
347 EAPI int elm_win_layer_get(const Evas_Object *obj);
348 EAPI void elm_win_rotation_set(Evas_Object *obj, int rotation);
349 EAPI void elm_win_rotation_with_resize_set(Evas_Object *obj, int rotation);
350 EAPI int elm_win_rotation_get(const Evas_Object *obj);
351 EAPI void elm_win_sticky_set(Evas_Object *obj, Eina_Bool sticky);
352 EAPI Eina_Bool elm_win_sticky_get(const Evas_Object *obj);
353 EAPI void elm_win_conformant_set(Evas_Object *obj, Eina_Bool conformant);
354 EAPI Eina_Bool elm_win_conformant_get(const Evas_Object *obj);
355 EAPI void elm_win_quickpanel_set(Evas_Object *obj, Eina_Bool quickpanel);
356 EAPI Eina_Bool elm_win_quickpanel_get(const Evas_Object *obj);
357 EAPI void elm_win_quickpanel_priority_major_set(Evas_Object *obj, int priority);
358 EAPI int elm_win_quickpanel_priority_major_get(const Evas_Object *obj);
359 EAPI void elm_win_quickpanel_priority_minor_set(Evas_Object *obj, int priority);
360 EAPI int elm_win_quickpanel_priority_minor_get(const Evas_Object *obj);
361 EAPI void elm_win_quickpanel_zone_set(Evas_Object *obj, int zone);
362 EAPI void elm_win_indicator_state_set(Evas_Object *obj, int show_state);
363 EAPI int elm_win_indicator_state_get(Evas_Object *obj);
366 * ecore_x_icccm_hints_set -> accepts_focus (add to ecore_evas)
367 * ecore_x_icccm_hints_set -> window_group (add to ecore_evas)
368 * ecore_x_icccm_size_pos_hints_set -> request_pos (add to ecore_evas)
369 * ecore_x_icccm_client_leader_set -> l (add to ecore_evas)
370 * ecore_x_icccm_window_role_set -> role (add to ecore_evas)
371 * ecore_x_icccm_transient_for_set -> forwin (add to ecore_evas)
372 * ecore_x_netwm_window_type_set -> type (add to ecore_evas)
374 * (add to ecore_x) set netwm argb icon! (add to ecore_evas)
375 * (blank mouse, private mouse obj, defaultmouse)
378 EAPI void elm_win_keyboard_mode_set(Evas_Object *obj, Elm_Win_Keyboard_Mode mode);
379 EAPI void elm_win_keyboard_win_set(Evas_Object *obj, Eina_Bool is_keyboard);
381 EAPI void elm_win_screen_position_get(const Evas_Object *obj, int *x, int *y);
383 EAPI Evas_Object *elm_win_inwin_add(Evas_Object *obj);
384 EAPI void elm_win_inwin_activate(Evas_Object *obj);
385 EAPI void elm_win_inwin_content_set(Evas_Object *obj, Evas_Object *content);
386 EAPI Evas_Object *elm_win_inwin_content_unset(Evas_Object *obj);
393 /* X specific calls - won't work on non-x engines (return 0) */
394 EAPI Ecore_X_Window elm_win_xwindow_get(const Evas_Object *obj);
395 /* smart callbacks called:
396 * "delete,request" - the user requested to delete the window
397 * "focus,in" - window got focus
398 * "focus,out" - window lost focus
399 * "moved" - window that holds the canvas was moved
402 EAPI Evas_Object *elm_bg_add(Evas_Object *parent);
403 EAPI void elm_bg_file_set(Evas_Object *obj, const char *file, const char *group);
404 /* smart callbacks called:
407 EAPI Evas_Object *elm_icon_add(Evas_Object *parent);
408 EAPI Eina_Bool elm_icon_file_set(Evas_Object *obj, const char *file, const char *group);
409 EAPI Eina_Bool elm_icon_standard_set(Evas_Object *obj, const char *name);
410 EAPI void elm_icon_smooth_set(Evas_Object *obj, Eina_Bool smooth);
411 EAPI void elm_icon_no_scale_set(Evas_Object *obj, Eina_Bool no_scale);
412 EAPI void elm_icon_scale_set(Evas_Object *obj, Eina_Bool scale_up, Eina_Bool scale_down);
413 EAPI void elm_icon_fill_outside_set(Evas_Object *obj, Eina_Bool fill_outside);
414 EAPI void elm_icon_prescale_set(Evas_Object *obj, int size);
415 /* smart callbacks called:
416 * "clicked" - the user clicked the icon
419 typedef enum _Elm_Image_Orient
421 ELM_IMAGE_ORIENT_NONE,
422 ELM_IMAGE_ROTATE_90_CW,
423 ELM_IMAGE_ROTATE_180_CW,
424 ELM_IMAGE_ROTATE_90_CCW,
425 ELM_IMAGE_FLIP_HORIZONTAL,
426 ELM_IMAGE_FLIP_VERTICAL,
427 ELM_IMAGE_FLIP_TRANSPOSE,
428 ELM_IMAGE_FLIP_TRANSVERSE
431 EAPI Evas_Object *elm_image_add(Evas_Object *parent);
432 EAPI Eina_Bool elm_image_file_set(Evas_Object *obj, const char *file, const char *group);
433 EAPI void elm_image_smooth_set(Evas_Object *obj, Eina_Bool smooth);
434 EAPI void elm_image_object_size_get(const Evas_Object *obj, int *w, int *h);
435 EAPI void elm_image_no_scale_set(Evas_Object *obj, Eina_Bool no_scale);
436 EAPI void elm_image_scale_set(Evas_Object *obj, Eina_Bool scale_up, Eina_Bool scale_down);
437 EAPI void elm_image_fill_outside_set(Evas_Object *obj, Eina_Bool fill_outside);
438 EAPI void elm_image_prescale_set(Evas_Object *obj, int size);
439 EAPI void elm_image_orient_set(Evas_Object *obj, Elm_Image_Orient orient);
440 /* smart callbacks called:
441 * "clicked" - the user clicked the image
444 EAPI Evas_Object *elm_box_add(Evas_Object *parent);
445 EAPI void elm_box_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
446 EAPI void elm_box_homogenous_set(Evas_Object *obj, Eina_Bool homogenous);
447 EAPI void elm_box_pack_start(Evas_Object *obj, Evas_Object *subobj);
448 EAPI void elm_box_pack_end(Evas_Object *obj, Evas_Object *subobj);
449 EAPI void elm_box_pack_before(Evas_Object *obj, Evas_Object *subobj, Evas_Object *before);
450 EAPI void elm_box_pack_after(Evas_Object *obj, Evas_Object *subobj, Evas_Object *after);
451 EAPI void elm_box_clear(Evas_Object *obj);
452 EAPI void elm_box_unpack(Evas_Object *obj, Evas_Object *subobj);
453 EAPI void elm_box_unpack_all(Evas_Object *obj);
454 /* smart callbacks called:
458 UIControlStateDefault,
459 UIControlStateHighlighted,
460 UIControlStateDisabled,
461 UIControlStateFocused,
462 UIControlStateReserved
465 EAPI Evas_Object *elm_button_add(Evas_Object *parent);
466 EAPI void elm_button_label_set(Evas_Object *obj, const char *label);
467 EAPI void elm_button_label_set_for_state(Evas_Object *obj, const char *label, UIControlState state);
468 EAPI const char *elm_button_label_get(const Evas_Object *obj);
469 EAPI const char *elm_button_label_get_for_state(const Evas_Object *obj, UIControlState state);
470 EAPI void elm_button_icon_set(Evas_Object *obj, Evas_Object *icon);
471 EAPI Evas_Object *elm_button_icon_get(const Evas_Object *obj);
472 EAPI void elm_button_autorepeat_set(Evas_Object *obj, Eina_Bool on);
473 EAPI void elm_button_autorepeat_initial_timeout_set(Evas_Object *obj, double t);
474 EAPI void elm_button_autorepeat_gap_timeout_set(Evas_Object *obj, double t);
476 EAPI Evas_Object *elm_fileselector_button_add(Evas_Object *parent);
477 EAPI void elm_fileselector_button_label_set(Evas_Object *obj, const char *label);
478 EAPI const char *elm_fileselector_button_label_get(const Evas_Object *obj);
479 EAPI void elm_fileselector_button_icon_set(Evas_Object *obj, Evas_Object *icon);
480 EAPI Evas_Object *elm_fileselector_button_icon_get(const Evas_Object *obj);
481 EAPI void elm_fileselector_button_window_title_set(Evas_Object *obj, const char *title);
482 EAPI const char *elm_fileselector_button_window_title_get(const Evas_Object *obj);
483 EAPI void elm_fileselector_button_window_size_set(Evas_Object *obj, Evas_Coord width, Evas_Coord height);
484 EAPI void elm_fileselector_button_window_size_get(const Evas_Object *obj, Evas_Coord *width, Evas_Coord *height);
485 EAPI void elm_fileselector_button_path_set(Evas_Object *obj, const char *path);
486 EAPI const char *elm_fileselector_button_path_get(const Evas_Object *obj);
487 EAPI void elm_fileselector_button_expandable_set(Evas_Object *obj, Eina_Bool value);
488 EAPI Eina_Bool elm_fileselector_button_expandable_get(const Evas_Object *obj);
489 EAPI void elm_fileselector_button_folder_only_set(Evas_Object *obj, Eina_Bool value);
490 EAPI Eina_Bool elm_fileselector_button_folder_only_get(const Evas_Object *obj);
491 EAPI void elm_fileselector_button_is_save_set(Evas_Object *obj, Eina_Bool value);
492 EAPI Eina_Bool elm_fileselector_button_is_save_get(const Evas_Object *obj);
493 EAPI void elm_fileselector_button_inwin_mode_set(Evas_Object *obj, Eina_Bool value);
494 EAPI Eina_Bool elm_fileselector_button_inwin_mode_get(const Evas_Object *obj);
495 EAPI void elm_fileselector_button_selected_set(Evas_Object *obj, const char *path);
496 EAPI const char *elm_fileselector_button_selected_get(const Evas_Object *obj);
502 * hoversel_vertical_entry
504 /* smart callbacks called:
505 * "clicked" - the user clicked the button
506 * "repeated" - the user pressed the button without releasing it
507 * "unpressed" - when the button is unpressed (released)
510 typedef enum _Elm_Scroller_Policy
512 ELM_SCROLLER_POLICY_AUTO = 0,
513 ELM_SCROLLER_POLICY_ON,
514 ELM_SCROLLER_POLICY_OFF,
515 ELM_SCROLLER_POLICY_LAST
519 EAPI Evas_Object *elm_scroller_add(Evas_Object *parent);
520 EAPI void elm_scroller_content_set(Evas_Object *obj, Evas_Object *child);
521 EAPI Evas_Object *elm_scroller_content_get(const Evas_Object *obj);
522 EAPI Evas_Object *elm_scroller_content_unset(Evas_Object *obj);
523 EAPI void elm_scroller_custom_widget_base_theme_set(Evas_Object *obj, const char *widget, const char *base);
524 EAPI void elm_scroller_content_min_limit(Evas_Object *obj, Eina_Bool w, Eina_Bool h);
525 EAPI void elm_scroller_region_show(Evas_Object *obj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h);
526 EAPI void elm_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v);
527 EAPI void elm_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v);
528 EAPI void elm_scroller_region_get(const Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h);
529 EAPI void elm_scroller_child_size_get(const Evas_Object *obj, Evas_Coord *w, Evas_Coord *h);
530 EAPI void elm_scroller_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
531 EAPI void elm_scroller_page_relative_set(Evas_Object *obj, double h_pagerel, double v_pagerel);
532 EAPI void elm_scroller_page_size_set(Evas_Object *obj, Evas_Coord h_pagesize, Evas_Coord v_pagesize);
533 EAPI void elm_scroller_region_bring_in(Evas_Object *obj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h);
534 EAPI void elm_scroller_page_move_set(Evas_Object *obj, Eina_Bool set);
535 EAPI void elm_scroller_propagate_events_set(Evas_Object *obj, Eina_Bool set);
537 /* smart callbacks called:
543 * "scroll,anim,start"
545 * "scroll,drag,start"
549 EAPI Evas_Object *elm_label_add(Evas_Object *parent);
550 EAPI void elm_label_label_set(Evas_Object *obj, const char *label);
551 EAPI const char *elm_label_label_get(const Evas_Object *obj);
552 EAPI void elm_label_line_wrap_set(Evas_Object *obj, Eina_Bool wrap);
553 EAPI Eina_Bool elm_label_line_wrap_get(const Evas_Object *obj);
554 EAPI void elm_label_wrap_width_set(Evas_Object *obj, Evas_Coord w);
555 EAPI Evas_Coord elm_label_wrap_width_get(const Evas_Object *obj);
556 EAPI void elm_label_wrap_height_set(Evas_Object *obj, Evas_Coord h);
557 EAPI Evas_Coord elm_label_wrap_height_get(const Evas_Object *obj);
558 EAPI void elm_label_fontsize_set(Evas_Object *obj, int fontsize);
559 EAPI void elm_label_text_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a);
560 EAPI void elm_label_text_align_set(Evas_Object *obj, const char *alignmode);
561 EAPI void elm_label_background_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a);
562 EAPI void elm_label_ellipsis_set(Evas_Object *obj, Eina_Bool ellipsis);
563 EAPI void elm_label_wrap_mode_set(Evas_Object *obj, Eina_Bool wrapmode);
564 EAPI void elm_label_slide_set(Evas_Object *obj, Eina_Bool slide);
565 EAPI Eina_Bool elm_label_slide_get(Evas_Object *obj);
566 EAPI void elm_label_slide_duration_set(Evas_Object *obj, int duration);
567 EAPI int elm_label_slide_duration_get(Evas_Object *obj);
572 /* smart callbacks called:
575 EAPI Evas_Object *elm_toggle_add(Evas_Object *parent);
576 EAPI void elm_toggle_label_set(Evas_Object *obj, const char *label);
577 EAPI const char *elm_toggle_label_get(const Evas_Object *obj);
578 EAPI void elm_toggle_icon_set(Evas_Object *obj, Evas_Object *icon);
579 EAPI Evas_Object *elm_toggle_icon_get(const Evas_Object *obj);
580 EAPI void elm_toggle_states_labels_set(Evas_Object *obj, const char *onlabel, const char *offlabel);
581 EAPI void elm_toggle_states_labels_get(const Evas_Object *obj, const char **onlabel, const char **offlabel);
582 EAPI void elm_toggle_state_set(Evas_Object *obj, Eina_Bool state);
583 EAPI Eina_Bool elm_toggle_state_get(const Evas_Object *obj);
584 EAPI void elm_toggle_state_pointer_set(Evas_Object *obj, Eina_Bool *statep);
585 /* smart callbacks called:
586 * "changed" - the user toggled the state
589 EAPI Evas_Object *elm_frame_add(Evas_Object *parent);
590 EAPI void elm_frame_label_set(Evas_Object *obj, const char *label);
591 EAPI const char *elm_frame_label_get(const Evas_Object *obj);
592 EAPI void elm_frame_content_set(Evas_Object *obj, Evas_Object *content);
593 EAPI Evas_Object *elm_frame_content_unset(Evas_Object *obj);
603 /* smart callbacks called:
606 EAPI Evas_Object *elm_table_add(Evas_Object *parent);
607 EAPI void elm_table_homogenous_set(Evas_Object *obj, Eina_Bool homogenous);
608 EAPI void elm_table_padding_set(Evas_Object *obj, Evas_Coord horizontal, Evas_Coord vertical);
609 EAPI void elm_table_pack(Evas_Object *obj, Evas_Object *subobj, int x, int y, int w, int h);
610 EAPI void elm_table_unpack(Evas_Object *obj, Evas_Object *subobj);
611 EAPI void elm_table_clear(Evas_Object *obj, Eina_Bool clear);
613 typedef struct _Elm_Gengrid_Item_Class Elm_Gengrid_Item_Class;
614 typedef struct _Elm_Gengrid_Item_Class_Func Elm_Gengrid_Item_Class_Func;
615 typedef struct _Elm_Gengrid_Item Elm_Gengrid_Item;
616 typedef char *(*GridItemLabelGetFunc) (const void *data, Evas_Object *obj, const char *part);
617 typedef Evas_Object *(*GridItemIconGetFunc) (const void *data, Evas_Object *obj, const char *part);
618 typedef Eina_Bool (*GridItemStateGetFunc) (const void *data, Evas_Object *obj, const char *part);
619 typedef void (*GridItemDelFunc) (const void *data, Evas_Object *obj);
621 struct _Elm_Gengrid_Item_Class
623 const char *item_style;
624 struct _Elm_Gengrid_Item_Class_Func
626 GridItemLabelGetFunc label_get;
627 GridItemIconGetFunc icon_get;
628 GridItemStateGetFunc state_get;
633 EAPI Evas_Object *elm_gengrid_add(Evas_Object *parent);
634 EAPI void elm_gengrid_item_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
635 EAPI void elm_gengrid_item_size_get(const Evas_Object *obj, Evas_Coord *w, Evas_Coord *h);
636 EAPI void elm_gengrid_align_set(Evas_Object *obj, double align_x, double align_y);
637 EAPI void elm_gengrid_align_get(const Evas_Object *obj, double *align_x, double *align_y);
638 EAPI void elm_gengrid_item_del(Elm_Gengrid_Item *item);
639 EAPI void elm_gengrid_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select);
640 EAPI Eina_Bool elm_gengrid_always_select_mode_get(const Evas_Object *obj);
641 EAPI void elm_gengrid_no_select_mode_set(Evas_Object *obj, Eina_Bool no_select);
642 EAPI Eina_Bool elm_gengrid_no_select_mode_get(const Evas_Object *obj);
643 EAPI void elm_gengrid_multi_select_set(Evas_Object *obj, Eina_Bool multi);
644 EAPI Eina_Bool elm_gengrid_multi_select_get(const Evas_Object *obj);
645 EAPI void elm_gengrid_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
646 EAPI void elm_gengrid_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce);
647 EAPI void elm_gengrid_horizontal_set(Evas_Object *obj, Eina_Bool setting);
648 EAPI void elm_gengrid_clear(Evas_Object *obj);
649 EAPI void *elm_gengrid_item_data_get(Elm_Gengrid_Item *item);
650 EAPI void elm_gengrid_item_pos_get(const Elm_Gengrid_Item *item, unsigned int *x, unsigned int *y);
651 EAPI void elm_gengrid_item_selected_set(Elm_Gengrid_Item *item, Eina_Bool selected);
652 EAPI Eina_Bool elm_gengrid_item_selected_get(const Elm_Gengrid_Item *item);
653 EAPI const Evas_Object *elm_gengrid_item_object_get(Elm_Gengrid_Item *item);
654 EAPI Elm_Gengrid_Item *elm_gengrid_selected_item_get(const Evas_Object *obj);
655 EAPI const Eina_List *elm_gengrid_selected_items_get(const Evas_Object *obj);
656 EAPI const Eina_List *elm_gengrid_items_get(const Evas_Object *obj);
657 EAPI void elm_gengrid_item_disabled_set(Elm_Gengrid_Item *item, Eina_Bool disabled);
658 EAPI Eina_Bool elm_gengrid_item_disabled_get(const Elm_Gengrid_Item *item);
659 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);
660 EAPI Elm_Gengrid_Item *elm_gengrid_item_prepend(Evas_Object *obj, const Elm_Gengrid_Item_Class *gcc, const void *data, Evas_Smart_Cb func, const void *func_data);
661 EAPI void elm_gengrid_item_update(Elm_Gengrid_Item *it);
662 /* smart callbacks called:
664 * selected - User has selected a item.
665 * unselected - User has unselected a item.
666 * clicked - User has double-clicked a item.
667 * realized - An evas object for a item was built.
668 * scroll - the content has been scrolled (moved).
669 * "scroll,drag,start" - dragging the contents around has started.
670 * "scroll,drag,stop" - dragging the contents around has stopped.
671 * drag - Gengrid is being dragged.
672 * "drag,start,up" - Gengrid has been dragged (not scrolled) up.
673 * "drag,start,down" - Gengrid has been dragged (not scrolled) down.
674 * "drag,start,left" - Gengrid has been dragged (not scrolled) left.
675 * "drag,start,rigth" - Gengrid has been dragged (nto scrolled) right.
676 * "drag,stop" - Gengrid is not being dragged.
679 EAPI Evas_Object *elm_clock_add(Evas_Object *parent);
680 EAPI void elm_clock_time_set(Evas_Object *obj, int hrs, int min, int sec);
681 EAPI void elm_clock_time_get(const Evas_Object *obj, int *hrs, int *min, int *sec);
682 EAPI void elm_clock_edit_set(Evas_Object *obj, Eina_Bool edit);
683 EAPI Eina_Bool elm_clock_edit_get(const Evas_Object *obj);
684 EAPI void elm_clock_digit_edit_set(Evas_Object *obj, Elm_Clock_Digedit digedit);
685 EAPI Elm_Clock_Digedit elm_clock_digit_edit_get(const Evas_Object *obj);
686 EAPI void elm_clock_show_am_pm_set(Evas_Object *obj, Eina_Bool am_pm);
687 EAPI Eina_Bool elm_clock_show_am_pm_get(const Evas_Object *obj);
688 EAPI void elm_clock_show_seconds_set(Evas_Object *obj, Eina_Bool seconds);
689 EAPI Eina_Bool elm_clock_show_seconds_get(const Evas_Object *obj);
690 EAPI void elm_clock_interval_set(Evas_Object *obj, double interval);
691 EAPI double elm_clock_interval_get(const Evas_Object *obj);
692 /* smart callbacks called:
693 * "changed" - the user changed the time
696 EAPI Evas_Object *elm_layout_add(Evas_Object *parent);
697 EAPI Eina_Bool elm_layout_file_set(Evas_Object *obj, const char *file, const char *group);
698 EAPI Eina_Bool elm_layout_theme_set(Evas_Object *obj, const char *clas, const char *group, const char *style);
699 EAPI void elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content);
700 EAPI Evas_Object *elm_layout_content_unset(Evas_Object *obj, const char *swallow);
701 EAPI Evas_Object *elm_layout_edje_get(const Evas_Object *obj);
702 EAPI void elm_layout_sizing_eval(Evas_Object *obj);
703 /* smart callbacks called:
706 typedef enum _Elm_Notify_Orient
708 ELM_NOTIFY_ORIENT_TOP,
709 ELM_NOTIFY_ORIENT_CENTER,
710 ELM_NOTIFY_ORIENT_BOTTOM,
711 ELM_NOTIFY_ORIENT_LEFT,
712 ELM_NOTIFY_ORIENT_RIGHT,
713 ELM_NOTIFY_ORIENT_TOP_LEFT,
714 ELM_NOTIFY_ORIENT_TOP_RIGHT,
715 ELM_NOTIFY_ORIENT_BOTTOM_LEFT,
716 ELM_NOTIFY_ORIENT_BOTTOM_RIGHT,
717 ELM_NOTIFY_ORIENT_LAST
719 EAPI Evas_Object *elm_notify_add(Evas_Object *parent);
720 EAPI void elm_notify_content_set(Evas_Object *obj, Evas_Object *content);
721 EAPI Evas_Object *elm_notify_content_unset(Evas_Object *obj);
722 EAPI Evas_Object *elm_notify_content_get(const Evas_Object *obj);
723 EAPI void elm_notify_parent_set(Evas_Object *obj, Evas_Object *parent);
724 EAPI void elm_notify_orient_set(Evas_Object *obj, Elm_Notify_Orient orient);
725 EAPI Elm_Notify_Orient elm_notify_orient_get(const Evas_Object *obj);
726 EAPI void elm_notify_timeout_set(Evas_Object *obj, int timeout);
727 EAPI int elm_notify_timeout_get(const Evas_Object *obj);
728 EAPI void elm_notify_timer_init(Evas_Object *obj);
729 EAPI void elm_notify_repeat_events_set(Evas_Object *obj, Eina_Bool repeat);
730 EAPI Eina_Bool elm_notify_repeat_events_get(const Evas_Object *obj);
731 /* smart callbacks called:
734 typedef enum _Elm_Hover_Axis
737 ELM_HOVER_AXIS_HORIZONTAL,
738 ELM_HOVER_AXIS_VERTICAL,
741 EAPI Evas_Object *elm_hover_add(Evas_Object *parent);
742 EAPI void elm_hover_target_set(Evas_Object *obj, Evas_Object *target);
743 EAPI Evas_Object *elm_hover_target_get(Evas_Object *obj);
744 EAPI void elm_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
745 EAPI Evas_Object *elm_hover_parent_get(Evas_Object *obj);
746 EAPI void elm_hover_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content);
747 EAPI Evas_Object *elm_hover_content_unset(Evas_Object *obj, const char *swallow);
748 EAPI const char *elm_hover_best_content_location_get(const Evas_Object *obj, Elm_Hover_Axis pref_axis);
755 /* smart callbacks called:
756 * "clicked" - the user clicked the empty space in the hover to dismiss
759 typedef struct _Elm_Entry_Anchor_Info Elm_Entry_Anchor_Info;
760 struct _Elm_Entry_Anchor_Info
764 Evas_Coord x, y, w, h;
766 typedef enum _Elm_Icon_Type
772 typedef struct _Elm_Hoversel_Item Elm_Hoversel_Item;
774 typedef enum _Elm_Input_Panel_Layout
776 ELM_INPUT_PANEL_LAYOUT_NORMAL, /**< Default 4x4 layout */
777 ELM_INPUT_PANEL_LAYOUT_NUMBER, /**< Number layout */
778 ELM_INPUT_PANEL_LAYOUT_EMAIL, /**< Email layout */
779 ELM_INPUT_PANEL_LAYOUT_URL, /**< URL layout */
780 ELM_INPUT_PANEL_LAYOUT_PHONENUMBER, /**< Phone Number layout */
781 ELM_INPUT_PANEL_LAYOUT_IP, /**< IP layout */
782 ELM_INPUT_PANEL_LAYOUT_MONTH, /**< Month layout */
783 ELM_INPUT_PANEL_LAYOUT_NUMBERONLY, /**< Number Only layout */
784 ELM_INPUT_PANEL_LAYOUT_CUSTOM_1 = 100, /* Reserved for future use */
785 ELM_INPUT_PANEL_LAYOUT_CUSTOM_2,
786 ELM_INPUT_PANEL_LAYOUT_CUSTOM_3,
787 ELM_INPUT_PANEL_LAYOUT_CUSTOM_4,
788 ELM_INPUT_PANEL_LAYOUT_CUSTOM_5,
789 ELM_INPUT_PANEL_LAYOUT_CUSTOM_6,
790 ELM_INPUT_PANEL_LAYOUT_CUSTOM_7,
791 ELM_INPUT_PANEL_LAYOUT_CUSTOM_8,
792 ELM_INPUT_PANEL_LAYOUT_CUSTOM_9,
793 ELM_INPUT_PANEL_LAYOUT_CUSTOM_10
794 } Elm_Input_Panel_Layout;
796 EAPI Evas_Object *elm_entry_add(Evas_Object *parent);
797 EAPI void elm_entry_single_line_set(Evas_Object *obj, Eina_Bool single_line);
798 EAPI Eina_Bool elm_entry_single_line_get(const Evas_Object *obj);
799 EAPI void elm_entry_password_set(Evas_Object *obj, Eina_Bool password);
800 EAPI Eina_Bool elm_entry_password_get(const Evas_Object *obj);
801 EINA_DEPRECATED EAPI void elm_entry_password_show_last_character_set(Evas_Object *obj, Eina_Bool show_last_character);
803 EAPI void elm_entry_entry_set(Evas_Object *obj, const char *entry);
804 EAPI const char *elm_entry_entry_get(const Evas_Object *obj);
805 EAPI const char *elm_entry_selection_get(const Evas_Object *obj);
806 EAPI void elm_entry_entry_insert(Evas_Object *obj, const char *entry);
807 EAPI void elm_entry_line_wrap_set(Evas_Object *obj, Eina_Bool wrap);
808 EAPI void elm_entry_line_char_wrap_set(Evas_Object *obj, Eina_Bool wrap);
809 EAPI void elm_entry_wrap_width_set(Evas_Object *obj, Evas_Coord w);
810 EAPI Evas_Coord elm_entry_wrap_width_get(const Evas_Object *obj);
811 EAPI void elm_entry_editable_set(Evas_Object *obj, Eina_Bool editable);
812 EAPI Eina_Bool elm_entry_editable_get(const Evas_Object *obj);
813 EAPI void elm_entry_select_none(Evas_Object *obj);
814 EAPI void elm_entry_select_all(Evas_Object *obj);
815 EAPI Eina_Bool elm_entry_cursor_next(Evas_Object *obj);
816 EAPI Eina_Bool elm_entry_cursor_prev(Evas_Object *obj);
817 EAPI Eina_Bool elm_entry_cursor_up(Evas_Object *obj);
818 EAPI Eina_Bool elm_entry_cursor_down(Evas_Object *obj);
819 EAPI void elm_entry_cursor_begin_set(Evas_Object *obj);
820 EAPI void elm_entry_cursor_end_set(Evas_Object *obj);
821 EAPI void elm_entry_cursor_line_begin_set(Evas_Object *obj);
822 EAPI void elm_entry_cursor_line_end_set(Evas_Object *obj);
823 EAPI void elm_entry_cursor_selection_begin(Evas_Object *obj);
824 EAPI void elm_entry_cursor_selection_end(Evas_Object *obj);
825 EAPI Eina_Bool elm_entry_cursor_is_format_get(const Evas_Object *obj);
826 EAPI Eina_Bool elm_entry_cursor_is_visible_format_get(const Evas_Object *obj);
827 EAPI const char *elm_entry_cursor_content_get(const Evas_Object *obj);
828 EAPI void elm_entry_selection_cut(Evas_Object *obj);
829 EAPI void elm_entry_selection_copy(Evas_Object *obj);
830 EAPI void elm_entry_selection_paste(Evas_Object *obj);
831 EAPI void elm_entry_context_menu_clear(Evas_Object *obj);
832 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);
833 EAPI void elm_entry_context_menu_disabled_set(Evas_Object *obj, Eina_Bool disabled);
834 EAPI Eina_Bool elm_entry_context_menu_disabled_get(const Evas_Object *obj);
835 EAPI void elm_entry_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data);
836 EAPI void elm_entry_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data);
837 EAPI void elm_entry_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data);
838 EAPI char *elm_entry_markup_to_utf8(const char *s);
839 EAPI char *elm_entry_utf8_to_markup(const char *s);
840 EAPI void elm_entry_fontsize_set(Evas_Object *obj, int fontsize);
841 EAPI void elm_entry_text_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a);
842 EAPI void elm_entry_text_align_set(Evas_Object *obj, const char *alignmode);
843 EAPI void elm_entry_background_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a);
844 EAPI void elm_entry_ellipsis_set(Evas_Object *obj, Eina_Bool ellipsis);
846 EAPI void elm_entry_autocapitalization_set(Evas_Object *obj, Eina_Bool autocap);
847 EAPI void elm_entry_autoperiod_set(Evas_Object *obj, Eina_Bool autoperiod);
848 EAPI void elm_entry_autoenable_returnkey_set(Evas_Object *obj, Eina_Bool on);
849 EAPI void elm_entry_input_panel_enabled_set(Evas_Object *obj, Eina_Bool enabled);
850 EAPI void elm_entry_input_panel_layout_set(Evas_Object *obj, Elm_Input_Panel_Layout layout);
851 EAPI Ecore_IMF_Context *elm_entry_imf_context_get(Evas_Object *obj);
852 EAPI void elm_entry_maximum_bytes_set(Evas_Object *obj, int max_no_of_bytes);
854 /* smart callbacks called:
855 * "changed" - the text content changed
856 * "selection,start" - the user started selecting text
857 * "selection,changed" - the user modified the selection size/location
858 * "selection,cleared" - the user cleared the selection
859 * "selection,paste" - the user requested a paste of text
860 * "selection,copy" - the user copied the text
861 * "selection,cut" - the user cut the text
862 * "cursor,changed" - the cursor changed position
863 * "anchor,clicked" - achor called was clicked | event_info = Elm_Entry_Anchor_Info
864 * "activated" - when the enter key is pressed (useful for single line)
865 * "press" - when finger/mouse is pressed down
866 * "clicked" - when finger/mouse is pressed and released (without a drag etc.)
867 * "clicked,double" - when finger/mouse is double-pressed
868 * "longpressed" - the entry has been longpressed
869 * "focused" - the entry has received keyboard focus
870 * "unfocused" - keyboard focus is gone
873 /* composite widgets - these basically put together basic widgets above
874 * in convenient packages that do more than basic stuff */
875 typedef enum _Elm_Text_Format
877 ELM_TEXT_FORMAT_PLAIN_UTF8,
878 ELM_TEXT_FORMAT_MARKUP_UTF8
880 EINA_DEPRECATED EAPI Evas_Object *elm_notepad_add(Evas_Object *parent);
881 EINA_DEPRECATED EAPI void elm_notepad_file_set(Evas_Object *obj, const char *file, Elm_Text_Format format);
882 EINA_DEPRECATED EAPI void elm_notepad_file_save(Evas_Object *obj, const char *file, Elm_Text_Format format);
883 EINA_DEPRECATED EAPI void elm_notepad_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
884 EINA_DEPRECATED EAPI void elm_notepad_autosave_set(Evas_Object *obj, Eina_Bool autosave);
886 /* smart callbacks called:
889 typedef struct _Elm_Entry_Anchorview_Info Elm_Entry_Anchorview_Info;
890 struct _Elm_Entry_Anchorview_Info
897 Evas_Coord x, y, w, h;
898 } anchor, hover_parent;
899 Eina_Bool hover_left : 1;
900 Eina_Bool hover_right : 1;
901 Eina_Bool hover_top : 1;
902 Eina_Bool hover_bottom : 1;
904 EAPI Evas_Object *elm_anchorview_add(Evas_Object *parent);
905 EAPI void elm_anchorview_text_set(Evas_Object *obj, const char *text);
906 EAPI const char *elm_anchorview_text_get(const Evas_Object *obj);
908 EAPI void elm_anchorview_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
909 EAPI void elm_anchorview_hover_style_set(Evas_Object *obj, const char *style);
910 EAPI void elm_anchorview_hover_end(Evas_Object *obj);
911 EAPI void elm_anchorview_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
912 EAPI void elm_anchorview_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorview, const char *item), void *data);
913 EAPI void elm_anchorview_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorview, const char *item), void *data);
914 EAPI void elm_anchorview_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorview, const char *item), void *data);
915 /* smart callbacks called:
916 * "anchor,clicked" - achor called was clicked | event_info = Elm_Entry_Anchorview_Info
919 typedef struct _Elm_Entry_Anchorblock_Info Elm_Entry_Anchorblock_Info;
920 struct _Elm_Entry_Anchorblock_Info
927 Evas_Coord x, y, w, h;
928 } anchor, hover_parent;
929 Eina_Bool hover_left : 1;
930 Eina_Bool hover_right : 1;
931 Eina_Bool hover_top : 1;
932 Eina_Bool hover_bottom : 1;
934 EAPI Evas_Object *elm_anchorblock_add(Evas_Object *parent);
935 EAPI void elm_anchorblock_text_set(Evas_Object *obj, const char *text);
936 EAPI const char *elm_anchorblock_text_get(const Evas_Object *obj);
937 EAPI void elm_anchorblock_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
938 EAPI void elm_anchorblock_hover_style_set(Evas_Object *obj, const char *style);
939 EAPI void elm_anchorblock_hover_end(Evas_Object *obj);
940 EAPI void elm_anchorblock_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorblock, const char *item), void *data);
941 EAPI void elm_anchorblock_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorblock, const char *item), void *data);
942 EAPI void elm_anchorblock_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorblock, const char *item), void *data);
943 /* smart callbacks called:
944 * "anchor,clicked" - achor called was clicked | event_info = Elm_Entry_Anchorblock_Info
947 EAPI Evas_Object *elm_bubble_add(Evas_Object *parent);
948 EAPI void elm_bubble_label_set(Evas_Object *obj, const char *label);
949 EAPI const char *elm_bubble_label_get(const Evas_Object *obj);
950 EAPI void elm_bubble_info_set(Evas_Object *obj, const char *info);
951 EAPI const char *elm_bubble_info_get(const Evas_Object *obj);
953 EAPI void elm_bubble_content_set(Evas_Object *obj, Evas_Object *content);
954 EAPI Evas_Object *elm_bubble_content_get(const Evas_Object *obj);
955 EAPI Evas_Object *elm_bubble_content_unset(Evas_Object *obj);
956 EAPI void elm_bubble_icon_set(Evas_Object *obj, Evas_Object *icon);
957 EAPI Evas_Object *elm_bubble_icon_get(const Evas_Object *obj);
958 EAPI Evas_Object *elm_bubble_icon_unset(Evas_Object *obj);
959 EAPI void elm_bubble_sweep_layout_set(Evas_Object *obj, Evas_Object *sweep);
960 EAPI Evas_Object *elm_bubble_sweep_layout_unset(Evas_Object *obj);
961 EAPI void elm_bubble_corner_set(Evas_Object *obj, const char *corner);
962 /* smart callbacks called:
963 * "sweep,left,right" - when bubble is sweeped from left to right, this signal is sent.
964 * "sweep,right,left" - when bubble is sweeped from right to left, this signal is sent.
967 EAPI Evas_Object *elm_photo_add(Evas_Object *parent);
968 EAPI Eina_Bool elm_photo_file_set(Evas_Object *obj, const char *file);
969 EAPI void elm_photo_size_set(Evas_Object *obj, int size);
970 EAPI void elm_photo_fill_inside_set(Evas_Object *obj, Eina_Bool fill);
971 EAPI void elm_photo_editable_set(Evas_Object *obj, Eina_Bool set);
972 /* smart callbacks called:
973 * "clicked" - the user clicked the icon
976 EAPI Evas_Object *elm_thumb_add(Evas_Object *parent);
977 EAPI void elm_thumb_file_set(Evas_Object *obj, const char *file, const char *key);
978 EAPI void elm_thumb_file_get(const Evas_Object *obj, const char **file, const char **key);
979 EAPI void elm_thumb_path_get(const Evas_Object *obj, const char **file, const char **key);
980 EAPI void elm_thumb_animate_set(Evas_Object *obj, Elm_Thumb_Animation_Setting s);
981 EAPI Elm_Thumb_Animation_Setting elm_thumb_animate_get(const Evas_Object *obj);
982 EAPI Eina_Bool elm_thumb_ethumb_client_connected(void);
984 EAPI Ethumb_Client *elm_thumb_ethumb_client_get(void);
986 EAPI void *elm_thumb_ethumb_client_get(void);
988 /* smart callbacks called:
989 * "clicked" - the user clicked the thumb
990 * "clicked,double" - the user double clicked the thumb
991 * "press" - the user pressed the thumb
992 * "generate,start" - the thumbnail generation started
993 * "generate,stop" - the thumbnail generation stopped
994 * "generate,error" - the thumbnail generation failed
995 * "load,error" - the thumbnail image loading failed
998 EAPI Evas_Object *elm_hoversel_add(Evas_Object *parent);
999 EAPI void elm_hoversel_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
1000 EAPI Eina_Bool elm_hoversel_horizontal_get(const Evas_Object *obj);
1001 EAPI void elm_hoversel_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
1002 EAPI void elm_hoversel_label_set(Evas_Object *obj, const char *label);
1003 EAPI const char *elm_hoversel_label_get(const Evas_Object *obj);
1004 EAPI void elm_hoversel_icon_set(Evas_Object *obj, Evas_Object *icon);
1005 EAPI Evas_Object *elm_hoversel_icon_get(const Evas_Object *obj);
1006 EAPI void elm_hoversel_hover_begin(Evas_Object *obj);
1007 EAPI void elm_hoversel_hover_end(Evas_Object *obj);
1008 EAPI Eina_Bool elm_hoversel_expanded_get(Evas_Object *obj);
1009 EAPI void elm_hoversel_clear(Evas_Object *obj);
1010 EAPI const Eina_List *elm_hoversel_items_get(const Evas_Object *obj);
1011 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);
1012 EAPI void elm_hoversel_item_del(Elm_Hoversel_Item *item);
1013 EAPI void elm_hoversel_item_del_cb_set(Elm_Hoversel_Item *it, Evas_Smart_Cb func);
1014 EAPI void *elm_hoversel_item_data_get(Elm_Hoversel_Item *it);
1015 EAPI const char *elm_hoversel_item_label_get(Elm_Hoversel_Item *it);
1016 EAPI void elm_hoversel_item_icon_set(Elm_Hoversel_Item *it, const char *icon_file, const char *icon_group, Elm_Icon_Type icon_type);
1017 EAPI void elm_hoversel_item_icon_get(Elm_Hoversel_Item *it, const char **icon_file, const char **icon_group, Elm_Icon_Type *icon_type);
1018 /* smart callbacks called:
1019 * "clicked" - the user clicked the hoversel button and popped up the sel
1020 * "selected" - an item in the hoversel list is selected
1021 * "dismissed" - the hover is dismissed
1024 typedef struct _Elm_Toolbar_Item Elm_Toolbar_Item;
1025 EAPI Evas_Object *elm_toolbar_add(Evas_Object *parent);
1026 EAPI void elm_toolbar_icon_size_set(Evas_Object *obj, int icon_size);
1027 EAPI int elm_toolbar_icon_size_get(const Evas_Object *obj);
1028 EAPI Elm_Toolbar_Item *elm_toolbar_item_add(Evas_Object *obj, Evas_Object *icon, const char *label, Evas_Smart_Cb func, const void *data);
1029 EAPI Evas_Object *elm_toolbar_item_icon_get(Elm_Toolbar_Item *item);
1030 EAPI const char *elm_toolbar_item_label_get(const Elm_Toolbar_Item *item);
1031 EAPI Eina_Bool elm_toolbar_item_selected_get(const Elm_Toolbar_Item *item);
1032 EAPI void elm_toolbar_item_label_set(Elm_Toolbar_Item *item, const char *label);
1033 EAPI void elm_toolbar_item_del(Elm_Toolbar_Item *item);
1034 EAPI void elm_toolbar_item_del_cb_set(Elm_Toolbar_Item *it, Evas_Smart_Cb func);
1035 EAPI void elm_toolbar_item_select(Elm_Toolbar_Item *item);
1036 EAPI Eina_Bool elm_toolbar_item_disabled_get(Elm_Toolbar_Item *item);
1037 EAPI void elm_toolbar_item_disabled_set(Elm_Toolbar_Item *item, Eina_Bool disabled);
1038 EAPI void elm_toolbar_item_separator_set(Elm_Toolbar_Item *item, Eina_Bool separator);
1039 EAPI Eina_Bool elm_toolbar_item_separator_get(Elm_Toolbar_Item *item);
1040 EAPI Eina_List *elm_toolbar_item_get_all(Evas_Object *obj);
1041 EAPI Elm_Toolbar_Item *elm_toolbar_item_get_first(Evas_Object *obj);
1042 EAPI Elm_Toolbar_Item *elm_toolbar_item_get_last(Evas_Object *obj);
1043 EAPI Elm_Toolbar_Item *elm_toolbar_item_get_next(Evas_Object *obj);
1044 EAPI Elm_Toolbar_Item *elm_toolbar_item_select_next(Evas_Object *obj);
1045 EAPI Elm_Toolbar_Item *elm_toolbar_item_select_first(Evas_Object *obj);
1046 EAPI Elm_Toolbar_Item *elm_toolbar_item_select_last(Evas_Object *obj);
1047 EAPI Elm_Toolbar_Item *elm_toolbar_item_find_by_label(Evas_Object *obj, const char *label);
1048 EAPI void elm_toolbar_scrollable_set(Evas_Object *obj, Eina_Bool scrollable);
1049 EAPI Eina_Bool elm_toolbar_scrollable_get(Evas_Object *obj);
1050 EAPI void elm_toolbar_homogenous_set(Evas_Object *obj, Eina_Bool homogenous);
1051 EAPI Eina_Bool elm_toolbar_homogenous_get(Evas_Object *obj);
1052 EAPI void elm_toolbar_menu_parent_set(Evas_Object *obj, Evas_Object *parent);
1053 EAPI Evas_Object *elm_toolbar_menu_parent_get(Evas_Object *obj);
1054 EAPI void elm_toolbar_item_unselect_all(Evas_Object *obj);
1055 EAPI void elm_toolbar_align_set(Evas_Object *obj, double align);
1056 EAPI double elm_toolbar_align_get(const Evas_Object *obj);
1057 EAPI void elm_toolbar_item_menu_set(Elm_Toolbar_Item *item, Eina_Bool menu);
1058 EAPI Evas_Object *elm_toolbar_item_menu_get(Elm_Toolbar_Item *item);
1059 /* smart callbacks called:
1060 * "clicked" - when the user clicks on a toolbar item and becomes selected
1063 typedef struct _Menu_Item Elm_Menu_Item;
1064 EAPI Evas_Object *elm_menu_add(Evas_Object *parent);
1065 EAPI void elm_menu_parent_set(Evas_Object *obj, Evas_Object *parent);
1066 EAPI void elm_menu_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
1067 EAPI Evas_Object *elm_menu_object_get(const Elm_Menu_Item *it);
1068 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);
1069 EAPI void elm_menu_item_label_set(Elm_Menu_Item *item, const char *label);
1070 EAPI const char *elm_menu_item_label_get(Elm_Menu_Item *item);
1071 EAPI void elm_menu_item_icon_set(Elm_Menu_Item *item, Evas_Object *icon);
1072 EAPI Evas_Object *elm_menu_item_icon_get(Elm_Menu_Item *item);
1073 EAPI void elm_menu_item_disabled_set(Elm_Menu_Item *item, Eina_Bool disabled);
1074 EAPI Eina_Bool elm_menu_item_disabled_get(Elm_Menu_Item *item);
1075 EAPI Elm_Menu_Item *elm_menu_item_separator_add(Evas_Object *obj, Elm_Menu_Item *parent);
1076 EAPI Eina_Bool elm_menu_item_is_separator(Elm_Menu_Item *item);
1077 EAPI void elm_menu_item_del(Elm_Menu_Item *item);
1078 EAPI void elm_menu_item_del_cb_set(Elm_Menu_Item *it, Evas_Smart_Cb func);
1079 EAPI void *elm_menu_item_data_get(const Elm_Menu_Item *it);
1080 EAPI void elm_menu_item_data_set(Elm_Menu_Item *item, const void *data);
1081 EAPI const Eina_List *elm_menu_item_subitems_get(Elm_Menu_Item *item);
1082 /* smart callbacks called:
1083 * "clicked" - the user clicked the empty space in the menu to dismiss. event_info is NULL.
1086 typedef enum _Elm_List_Mode
1088 ELM_LIST_COMPRESS = 0,
1093 typedef struct _Elm_List_Item Elm_List_Item;
1094 EAPI Evas_Object *elm_list_add(Evas_Object *parent);
1095 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);
1096 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);
1097 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);
1098 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);
1099 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);
1100 EAPI void elm_list_clear(Evas_Object *obj);
1101 EAPI void elm_list_go(Evas_Object *obj);
1102 EAPI void elm_list_multi_select_set(Evas_Object *obj, Eina_Bool multi);
1103 EAPI Eina_Bool elm_list_multi_select_get(const Evas_Object *obj);
1104 EAPI void elm_list_horizontal_mode_set(Evas_Object *obj, Elm_List_Mode mode);
1105 EAPI Elm_List_Mode elm_list_horizontal_mode_get(const Evas_Object *obj);
1106 EAPI void elm_list_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select);
1107 EAPI Eina_Bool elm_list_always_select_mode_get(const Evas_Object *obj);
1108 EAPI const Eina_List *elm_list_items_get(const Evas_Object *obj);
1109 EAPI Elm_List_Item *elm_list_selected_item_get(const Evas_Object *obj);
1110 EAPI const Eina_List *elm_list_selected_items_get(const Evas_Object *obj);
1112 EAPI void elm_list_item_separator_set(Elm_List_Item *it, Eina_Bool setting);
1113 EAPI Eina_Bool elm_list_item_separator_get(const Elm_List_Item *it);
1115 EAPI void elm_list_item_selected_set(Elm_List_Item *item, Eina_Bool selected);
1116 EAPI Eina_Bool elm_list_item_selected_get(Elm_List_Item *item);
1117 EAPI void elm_list_item_show(Elm_List_Item *item);
1118 EAPI void elm_list_item_del(Elm_List_Item *item);
1119 EAPI void elm_list_item_del_cb_set(Elm_List_Item *item, Evas_Smart_Cb func);
1120 EAPI void *elm_list_item_data_get(const Elm_List_Item *item);
1121 EAPI Evas_Object *elm_list_item_icon_get(const Elm_List_Item *item);
1122 EAPI void elm_list_item_icon_set(Elm_List_Item *item, Evas_Object *icon);
1123 EAPI Evas_Object *elm_list_item_end_get(const Elm_List_Item *item);
1124 EAPI void elm_list_item_end_set(Elm_List_Item *item, Evas_Object *end);
1125 EAPI Evas_Object *elm_list_item_base_get(const Elm_List_Item *item);
1126 EAPI const char *elm_list_item_label_get(const Elm_List_Item *item);
1127 EAPI void elm_list_item_label_set(Elm_List_Item *item, const char *text);
1128 EAPI Elm_List_Item *elm_list_item_prev(const Elm_List_Item *it);
1129 EAPI Elm_List_Item *elm_list_item_next(const Elm_List_Item *it);
1130 EAPI void elm_list_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
1131 EAPI void elm_list_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v);
1132 EAPI void elm_list_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v);
1134 /* smart callbacks called:
1135 * "clicked" - when the user double-clicked an item
1136 * "selected" - when the user selected an item
1137 * "unselected" - when the user selected an item
1138 * "longpressed" - an item in the hoversel list is long-pressed
1141 // FIXME: incomplete - carousel. don't use this until this comment is removed
1142 typedef struct _Elm_Carousel_Item Elm_Carousel_Item;
1143 EAPI Evas_Object *elm_carousel_add(Evas_Object *parent);
1144 EAPI Elm_Carousel_Item *elm_carousel_item_add(Evas_Object *obj, Evas_Object *icon, const char *label, Evas_Smart_Cb func, const void *data);
1145 EAPI void elm_carousel_item_del(Elm_Carousel_Item *item);
1146 EAPI void elm_carousel_item_select(Elm_Carousel_Item *item);
1147 /* smart callbacks called:
1148 * "clicked" - when the user clicks on a carousel item and becomes selected
1151 EAPI Evas_Object *elm_slider_add(Evas_Object *parent);
1152 EAPI void elm_slider_label_set(Evas_Object *obj, const char *label);
1153 EAPI const char *elm_slider_label_get(const Evas_Object *obj);
1154 EAPI void elm_slider_icon_set(Evas_Object *obj, Evas_Object *icon);
1155 EAPI Evas_Object *elm_slider_icon_get(const Evas_Object *obj);
1156 EAPI void elm_slider_span_size_set(Evas_Object *obj, Evas_Coord size);
1157 EAPI Evas_Coord elm_slider_span_size_get(const Evas_Object *obj);
1158 EAPI void elm_slider_unit_format_set(Evas_Object *obj, const char *format);
1159 EAPI const char *elm_slider_unit_format_get(const Evas_Object *obj);
1160 EAPI void elm_slider_indicator_format_set(Evas_Object *obj, const char *indicator);
1161 EAPI const char *elm_slider_indicator_format_get(const Evas_Object *obj);
1162 EAPI void elm_slider_indicator_format_function_set(Evas_Object *obj, const char *(*func)(double val));
1163 EAPI void elm_slider_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
1164 EAPI Eina_Bool elm_slider_horizontal_get(const Evas_Object *obj);
1165 EAPI void elm_slider_min_max_set(Evas_Object *obj, double min, double max);
1166 EAPI void elm_slider_min_max_get(const Evas_Object *obj, double *min, double *max);
1167 EAPI void elm_slider_value_set(Evas_Object *obj, double val);
1168 EAPI double elm_slider_value_get(const Evas_Object *obj);
1169 EAPI void elm_slider_inverted_set(Evas_Object *obj, Eina_Bool inverted);
1170 EAPI Eina_Bool elm_slider_inverted_get(const Evas_Object *obj);
1171 EAPI Eina_Bool elm_slider_end_icon_set(Evas_Object *obj, Evas_Object *icon);
1172 EAPI Evas_Object *elm_slider_end_icon_get(Evas_Object *obj);
1173 EAPI void elm_slider_indicator_show_set(Evas_Object *obj, Eina_Bool show);
1174 EAPI void elm_slider_value_animated_set(Evas_Object *obj, double val);
1175 EAPI void elm_slider_end_label_set(Evas_Object *obj, const char *label);
1176 EAPI const char *elm_slider_end_label_get(const Evas_Object *obj);
1177 /* smart callbacks called:
1178 * "changed" - Whenever the slider value is changed by the user.
1180 * "delay,changed" - A short time after the value is changed by the user.
1181 * This will be called only when the user stops dragging for a very short
1182 * period or when they release their finger/mouse, so it avoids possibly
1183 * expensive reactions to the value change.
1185 * "slider,drag,start" - dragging the slider indicator around has started
1187 * "slider,drag,stop" - dragging the slider indicator around has stopped
1191 typedef enum _Elm_Genlist_Item_Flags
1193 ELM_GENLIST_ITEM_NONE = 0,
1194 ELM_GENLIST_ITEM_SUBITEMS = (1 << 0)
1195 } Elm_Genlist_Item_Flags;
1196 typedef enum _Elm_Genlist_Edit_Mode
1198 ELM_GENLIST_EDIT_MODE_NONE = 0,
1199 ELM_GENLIST_EDIT_MODE_REORDER = (1 << 0),
1200 ELM_GENLIST_EDIT_MODE_INSERT = (1 << 1),
1201 ELM_GENLIST_EDIT_MODE_DELETE = (1 << 2),
1202 ELM_GENLIST_EDIT_MODE_SELECT = (1 << 3),
1203 ELM_GENLIST_EDIT_MODE_SELECTALL = (1 << 4)
1204 } Elm_Genlist_Edit_Mode;
1205 typedef struct _Elm_Genlist_Item_Class Elm_Genlist_Item_Class;
1206 typedef struct _Elm_Genlist_Item Elm_Genlist_Item;
1207 typedef struct _Elm_Genlist_Item_Class_Func Elm_Genlist_Item_Class_Func;
1208 typedef struct _Elm_Genlist_GroupItem Elm_Genlist_GroupItem;
1209 typedef struct _Elm_Genlist_Edit_Class Elm_Genlist_Edit_Class;
1210 typedef char *(*GenlistItemLabelGetFunc) (const void *data, Evas_Object *obj, const char *part);
1211 typedef char *(*GenlistItemLabelChangedFunc) (const void *data, Elm_Genlist_Item *it, const char *text, const int sub_text );
1212 typedef Evas_Object *(*GenlistItemIconGetFunc) (const void *data, Evas_Object *obj, const char *part);
1213 typedef Eina_Bool (*GenlistItemStateGetFunc) (const void *data, Evas_Object *obj, const char *part);
1214 typedef void (*GenlistItemDelFunc) (const void *data, Evas_Object *obj);
1215 typedef int (*GenlistItemEditModeGetFunc) (const void *data, Evas_Object *obj, const int enabled_edit_modes);
1216 typedef void (*GenlistInsertNewFunc) (Evas_Object *genlist, Elm_Genlist_Item *rel_item);
1217 typedef void (*GenlistItemSelectedFunc) (const void *data, Elm_Genlist_Item *it, Eina_Bool selected);
1218 typedef void (*GenlistSelectedFunc) (const void *data, Elm_Genlist_Item *it, Eina_Bool selected);
1219 typedef Eina_Bool (*GenlistMoveFunc) ( Evas_Object *genlist, Elm_Genlist_Item *item, Elm_Genlist_Item *rel_item, Eina_Bool move_after);
1220 typedef Eina_Bool (*GenlistRemoveItemFunc) (Evas_Object *genlist, Elm_Genlist_Item *rel_item);
1222 struct _Elm_Genlist_Item_Class
1224 const char *item_style;
1225 struct _Elm_Genlist_Item_Class_Func
1227 GenlistItemLabelGetFunc label_get;
1228 GenlistItemIconGetFunc icon_get;
1229 GenlistItemStateGetFunc state_get;
1230 GenlistItemDelFunc del;
1231 GenlistItemEditModeGetFunc editmode_get;
1232 GenlistItemLabelChangedFunc label_changed;
1236 struct _Elm_Genlist_Edit_Class
1238 GenlistRemoveItemFunc remove;
1239 GenlistInsertNewFunc insert_new;
1240 GenlistMoveFunc move;
1241 GenlistItemSelectedFunc item_selected;
1242 GenlistSelectedFunc selected;
1243 const char *item_style;
1244 const char *select_all_item_style;
1245 const void *select_all_data;
1247 EAPI Evas_Object *elm_genlist_add(Evas_Object *parent);
1248 EAPI void elm_genlist_clear(Evas_Object *obj);
1249 EAPI void elm_genlist_multi_select_set(Evas_Object *obj, Eina_Bool multi);
1250 EAPI Eina_Bool elm_genlist_multi_select_get(const Evas_Object *obj);
1251 EAPI void elm_genlist_horizontal_mode_set(Evas_Object *obj, Elm_List_Mode mode);
1252 EAPI Elm_List_Mode elm_genlist_horizontal_mode_get(const Evas_Object *obj);
1253 EAPI void elm_genlist_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select);
1254 EAPI Eina_Bool elm_genlist_always_select_mode_get(const Evas_Object *obj);
1255 EAPI void elm_genlist_no_select_mode_set(Evas_Object *obj, Eina_Bool no_select);
1256 EAPI Eina_Bool elm_genlist_no_select_mode_get(const Evas_Object *obj);
1257 EAPI void elm_genlist_compress_mode_set(Evas_Object *obj, Eina_Bool compress);
1258 EAPI Eina_Bool elm_genlist_compress_mode_get(const Evas_Object *obj);
1259 EAPI void elm_genlist_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
1260 EAPI void elm_genlist_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce);
1261 EAPI void elm_genlist_homogeneous_set(Evas_Object *obj, Eina_Bool homogeneous);
1262 EAPI Eina_Bool elm_genlist_homogeneous_get(const Evas_Object *obj);
1263 EAPI void elm_genlist_block_count_set(Evas_Object *obj, int n);
1264 EAPI int elm_genlist_block_count_get(const Evas_Object *obj);
1265 EAPI void elm_genlist_longpress_timeout_set(Evas_Object *obj, double timeout);
1266 EAPI double elm_genlist_longpress_timeout_get(const Evas_Object *obj);
1267 /* operations to add items */
1268 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, Evas_Smart_Cb func, const void *func_data);
1269 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, Evas_Smart_Cb func, const void *func_data);
1270 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, Evas_Smart_Cb func, const void *func_data);
1271 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, Evas_Smart_Cb func, const void *func_data);
1272 /* operations to retrieve existing items */
1273 EAPI Elm_Genlist_Item *elm_genlist_selected_item_get(const Evas_Object *obj);
1274 EAPI const Eina_List *elm_genlist_selected_items_get(const Evas_Object *obj);
1275 EAPI Eina_List *elm_genlist_realized_items_get(const Evas_Object *obj);
1276 EAPI Elm_Genlist_Item *elm_genlist_at_xy_item_get(const Evas_Object *obj, Evas_Coord x, Evas_Coord y, int *posret);
1277 EAPI Elm_Genlist_Item *elm_genlist_first_item_get(const Evas_Object *obj);
1278 EAPI Elm_Genlist_Item *elm_genlist_last_item_get(const Evas_Object *obj);
1279 /* available item styles:
1281 * default_style - The text part is a textblock
1283 * icon_top_text_bottom
1285 /* Genlist Item operation */
1286 EAPI Elm_Genlist_Item *elm_genlist_item_next_get(const Elm_Genlist_Item *item);
1287 EAPI Elm_Genlist_Item *elm_genlist_item_prev_get(const Elm_Genlist_Item *item);
1288 EAPI Evas_Object *elm_genlist_item_genlist_get(const Elm_Genlist_Item *item);
1289 EAPI Elm_Genlist_Item *elm_genlist_item_parent_get(const Elm_Genlist_Item *it);
1290 EAPI void elm_genlist_item_subitems_clear(Elm_Genlist_Item *item);
1291 EAPI void elm_genlist_item_selected_set(Elm_Genlist_Item *item, Eina_Bool selected);
1292 EAPI Eina_Bool elm_genlist_item_selected_get(const Elm_Genlist_Item *item);
1293 EAPI void elm_genlist_item_expanded_set(Elm_Genlist_Item *item, Eina_Bool expanded);
1294 EAPI Eina_Bool elm_genlist_item_expanded_get(const Elm_Genlist_Item *item);
1295 EAPI int elm_genlist_item_expanded_depth_get(const Elm_Genlist_Item *it);
1296 EAPI void elm_genlist_item_disabled_set(Elm_Genlist_Item *item, Eina_Bool disabled);
1297 EAPI Eina_Bool elm_genlist_item_disabled_get(const Elm_Genlist_Item *item);
1298 EAPI void elm_genlist_item_display_only_set(Elm_Genlist_Item *it, Eina_Bool display_only);
1299 EAPI Eina_Bool elm_genlist_item_display_only_get(const Elm_Genlist_Item *it);
1300 EAPI void elm_genlist_item_show(Elm_Genlist_Item *item);
1301 EAPI void elm_genlist_item_bring_in(Elm_Genlist_Item *item);
1302 EAPI void elm_genlist_item_top_show(Elm_Genlist_Item *item);
1303 EAPI void elm_genlist_item_top_bring_in(Elm_Genlist_Item *item);
1304 EAPI void elm_genlist_item_middle_show(Elm_Genlist_Item *it);
1305 EAPI void elm_genlist_item_middle_bring_in(Elm_Genlist_Item *it);
1306 EAPI void elm_genlist_item_del(Elm_Genlist_Item *item);
1307 EAPI const void *elm_genlist_item_data_get(const Elm_Genlist_Item *item);
1308 EAPI void elm_genlist_item_data_set(Elm_Genlist_Item *it, const void *data);
1309 EAPI const Evas_Object *elm_genlist_item_object_get(const Elm_Genlist_Item *it);
1310 EAPI void elm_genlist_item_update(Elm_Genlist_Item *item);
1311 EAPI void elm_genlist_item_item_class_update(Elm_Genlist_Item *it, const Elm_Genlist_Item_Class *itc);
1312 EAPI void elm_genlist_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v);
1313 EINA_DEPRECATED EAPI void elm_genlist_set_edit_mode(Evas_Object *obj, int emode, Elm_Genlist_Edit_Class *ec);
1314 EAPI void elm_genlist_edit_mode_set(Evas_Object *obj, int emode, Elm_Genlist_Edit_Class *ec);
1315 EAPI void elm_genlist_edit_selected_items_del(Evas_Object *obj);
1316 EINA_DEPRECATED EAPI void elm_genlist_selected_items_del(Evas_Object *obj);
1317 EAPI Eina_List * elm_genlist_edit_selected_items_get(const Evas_Object *obj);
1318 EAPI void elm_genlist_item_rename_mode_set(Elm_Genlist_Item *it, int emode);
1320 EAPI Elm_Genlist_GroupItem *elm_genlist_groupitem_add(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data);
1321 EAPI void elm_genlist_groupitem_del( Elm_Genlist_GroupItem *git);
1322 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);
1323 EAPI Elm_Genlist_Item *elm_genlist_item_prepend_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);
1324 EAPI void elm_genlist_item_move_after(Elm_Genlist_Item *it, Elm_Genlist_Item *after );
1325 EAPI void elm_genlist_effect_set(const Evas_Object *obj, Eina_Bool emode);
1326 EAPI void elm_genlist_pinch_zoom_set(Evas_Object *obj, Eina_Bool emode);
1327 EAPI void elm_genlist_pinch_zoom_mode_set(Evas_Object *obj, Eina_Bool emode);
1328 EAPI Eina_Bool elm_genlist_pinch_zoom_mode_get(const Evas_Object *obj);
1329 EINA_DEPRECATED EAPI void elm_genlist_queue_exception_set(const Evas_Object *obj, Eina_Bool emode);
1331 EAPI Evas_Object *elm_check_add(Evas_Object *parent);
1332 EAPI void elm_check_label_set(Evas_Object *obj, const char *label);
1333 EAPI const char *elm_check_label_get(const Evas_Object *obj);
1334 EAPI void elm_check_icon_set(Evas_Object *obj, Evas_Object *icon);
1335 EAPI Evas_Object *elm_check_icon_get(const Evas_Object *obj);
1336 EAPI void elm_check_state_set(Evas_Object *obj, Eina_Bool state);
1337 EAPI Eina_Bool elm_check_state_get(const Evas_Object *obj);
1338 EAPI void elm_check_state_pointer_set(Evas_Object *obj, Eina_Bool *statep);
1340 EAPI Evas_Object *elm_radio_add(Evas_Object *parent);
1341 EAPI void elm_radio_label_set(Evas_Object *obj, const char *label);
1342 EAPI const char *elm_radio_label_get(const Evas_Object *obj);
1343 EAPI void elm_radio_icon_set(Evas_Object *obj, Evas_Object *icon);
1344 EAPI Evas_Object *elm_radio_icon_get(const Evas_Object *obj);
1345 EAPI void elm_radio_group_add(Evas_Object *obj, Evas_Object *group);
1346 EAPI void elm_radio_state_value_set(Evas_Object *obj, int value);
1347 EAPI void elm_radio_value_set(Evas_Object *obj, int value);
1348 EAPI int elm_radio_value_get(const Evas_Object *obj);
1349 EAPI void elm_radio_value_pointer_set(Evas_Object *obj, int *valuep);
1351 typedef struct _Elm_Segment_Item Elm_Segment_Item;
1352 EAPI Evas_Object *elm_segment_control_add(Evas_Object *parent);
1353 EAPI void elm_segment_control_item_selected_set(Elm_Segment_Item *item, Eina_Bool select);
1354 EAPI int elm_segment_control_item_index_get(Elm_Segment_Item *item);
1355 EAPI Evas_Object *elm_segment_control_item_object_get(Elm_Segment_Item *it);
1356 EAPI Evas_Object *elm_segment_control_item_label_object_set(Elm_Segment_Item *item, char *label);
1357 EAPI Elm_Segment_Item * elm_segment_control_add_segment(Evas_Object *obj, Evas_Object *icon, const char *label, Eina_Bool animate);
1358 EAPI void elm_segment_control_insert_segment_at(Evas_Object *obj, Evas_Object *icon, const char *label, unsigned int index, Eina_Bool animate);
1359 EAPI void elm_segment_control_delete_segment(Evas_Object *obj, Elm_Segment_Item *item, Eina_Bool animate);
1360 EAPI void elm_segment_control_delete_segment_at(Evas_Object *obj, unsigned int index, Eina_Bool animate);
1361 EAPI const char *elm_segment_control_get_segment_label_at(Evas_Object *obj, unsigned int index);
1362 EAPI Evas_Object *elm_segment_control_get_segment_icon_at(Evas_Object *obj, unsigned int index);
1363 EAPI Elm_Segment_Item *elm_segment_control_selected_segment_get(const Evas_Object *obj, int *value);
1364 EAPI int elm_segment_control_get_segment_count(Evas_Object *obj);
1366 EAPI Evas_Object *elm_page_control_add(Evas_Object *parent);
1367 EAPI void elm_page_control_page_count_set(Evas_Object *obj, unsigned int page_count);
1368 EAPI void elm_page_control_page_id_set(Evas_Object *obj, unsigned int page_id);
1369 EAPI unsigned int elm_page_control_page_id_get(Evas_Object *obj);
1370 EAPI Evas_Object *elm_pager_add(Evas_Object *parent);
1371 EAPI void elm_pager_content_push(Evas_Object *obj, Evas_Object *content);
1372 EAPI void elm_pager_content_pop(Evas_Object *obj);
1373 EAPI void elm_pager_to_content_pop(Evas_Object *obj, Evas_Object *content);
1374 EAPI void elm_pager_content_promote(Evas_Object *obj, Evas_Object *content);
1375 EAPI Evas_Object *elm_pager_content_bottom_get(const Evas_Object *obj);
1376 EAPI Evas_Object *elm_pager_content_top_get(const Evas_Object *obj);
1377 EAPI void elm_pager_animation_disable_set(Evas_Object *obj, Eina_Bool disable);
1379 /* available item styles:
1386 typedef struct _Elm_Slideshow_Item_Class Elm_Slideshow_Item_Class;
1387 typedef struct _Elm_Slideshow_Item_Class_Func Elm_Slideshow_Item_Class_Func;
1388 typedef struct _Elm_Slideshow_Item Elm_Slideshow_Item;
1389 typedef Evas_Object *(*SlideshowItemGetFunc) (void *data, Evas_Object *obj);
1390 typedef void (*SlideshowItemDelFunc) (void *data, Evas_Object *obj);
1392 struct _Elm_Slideshow_Item_Class
1394 struct _Elm_Slideshow_Item_Class_Func
1396 SlideshowItemGetFunc get;
1397 SlideshowItemDelFunc del;
1401 EAPI Evas_Object *elm_slideshow_add(Evas_Object *parent);
1402 EAPI Elm_Slideshow_Item *elm_slideshow_item_add(Evas_Object *obj, const Elm_Slideshow_Item_Class *itc, const void *data);
1403 EAPI void elm_slideshow_show(Elm_Slideshow_Item *item);
1404 EAPI void elm_slideshow_next(Evas_Object *obj);
1405 EAPI void elm_slideshow_previous(Evas_Object *obj);
1406 EAPI const Eina_List *elm_slideshow_transitions_get(const Evas_Object *obj);
1407 EAPI void elm_slideshow_transition_set(Evas_Object *obj, const char *);
1408 EAPI const char *elm_slideshow_transition_get(const Evas_Object *obj);
1409 EAPI void elm_slideshow_timeout_set(Evas_Object *obj ,int timeout);
1410 EAPI int elm_slideshow_timeout_get(const Evas_Object *obj);
1411 EAPI void elm_slideshow_loop_set(Evas_Object *obj, Eina_Bool loop);
1412 EAPI Eina_Bool elm_slideshow_loop_get(const Evas_Object *obj);
1413 EAPI void elm_slideshow_clear(Evas_Object *obj);
1414 EAPI const Eina_List *elm_slideshow_items_get(const Evas_Object *obj);
1415 EAPI void elm_slideshow_item_del(Elm_Slideshow_Item *item);
1416 EAPI void *elm_slideshow_item_data_get(Elm_Slideshow_Item *item);
1417 EAPI Elm_Slideshow_Item *elm_slideshow_item_current_get(const Evas_Object *obj);
1418 EAPI Evas_Object* elm_slideshow_item_object_get(Elm_Slideshow_Item* item);
1419 EAPI const char *elm_slideshow_layout_get(const Evas_Object *obj);
1420 EAPI void elm_slideshow_layout_set(Evas_Object *obj, const char *layout);
1421 EAPI const Eina_List *elm_slideshow_layouts_get(const Evas_Object *obj);
1424 EAPI Evas_Object *elm_fileselector_add(Evas_Object *parent);
1425 EAPI void elm_fileselector_is_save_set(Evas_Object *obj, Eina_Bool is_save);
1426 EAPI Eina_Bool elm_fileselector_is_save_get(const Evas_Object *obj);
1427 EAPI void elm_fileselector_folder_only_set(Evas_Object *obj, Eina_Bool only);
1428 EAPI Eina_Bool elm_fileselector_folder_only_get(const Evas_Object *obj);
1429 EAPI void elm_fileselector_buttons_ok_cancel_set(Evas_Object *obj, Eina_Bool buttons);
1430 EAPI Eina_Bool elm_fileselector_buttons_ok_cancel_get(const Evas_Object *obj);
1431 EAPI Eina_Bool elm_fileselector_expandable_get(const Evas_Object *obj);
1432 EAPI void elm_fileselector_expandable_set(Evas_Object *obj, Eina_Bool expand);
1433 EAPI void elm_fileselector_path_set(Evas_Object *obj, const char *path);
1434 EAPI const char *elm_fileselector_path_get(const Evas_Object *obj);
1435 EAPI const char *elm_fileselector_selected_get(const Evas_Object *obj);
1436 EAPI Eina_Bool elm_fileselector_selected_set(Evas_Object *obj, const char *path);
1438 /* smart callbacks called:
1439 * "selected" - the user click on a file
1440 * "directory,open" - the list is populate with a new content. event_info is a directory.
1441 * "done" - the user click on the ok or cancel buttons
1444 EAPI Evas_Object *elm_progressbar_add(Evas_Object *parent);
1445 EAPI void elm_progressbar_pulse_set(Evas_Object *obj, Eina_Bool pulse);
1446 EAPI Eina_Bool elm_progressbar_pulse_get(const Evas_Object *obj);
1447 EAPI void elm_progressbar_pulse(Evas_Object *obj, Eina_Bool state);
1448 EAPI void elm_progressbar_value_set(Evas_Object *obj, double val);
1449 EAPI double elm_progressbar_value_get(const Evas_Object *obj);
1450 EAPI void elm_progressbar_label_set(Evas_Object *obj, const char *label);
1451 EAPI const char *elm_progressbar_label_get(const Evas_Object *obj);
1452 EAPI void elm_progressbar_icon_set(Evas_Object *obj, Evas_Object *icon);
1453 EAPI Evas_Object *elm_progressbar_icon_get(const Evas_Object *obj);
1454 EAPI void elm_progressbar_span_size_set(Evas_Object *obj, Evas_Coord size);
1455 EAPI Evas_Coord elm_progressbar_span_size_get(const Evas_Object *obj);
1456 EAPI void elm_progressbar_unit_format_set(Evas_Object *obj, const char *format);
1457 EAPI const char *elm_progressbar_unit_format_get(const Evas_Object *obj);
1458 EAPI void elm_progressbar_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
1459 EAPI Eina_Bool elm_progressbar_horizontal_get(const Evas_Object *obj);
1460 EAPI void elm_progressbar_inverted_set(Evas_Object *obj, Eina_Bool inverted);
1461 EAPI Eina_Bool elm_progressbar_inverted_get(const Evas_Object *obj);
1462 /* smart callbacks called:
1464 /* available item styles:
1466 * wheel (simple style, no text, no progression, only pulse is available)
1469 EAPI Evas_Object *elm_separator_add(Evas_Object *parent);
1470 EAPI void elm_separator_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
1471 EAPI Eina_Bool elm_separator_horizontal_get(const Evas_Object *obj);
1472 /* smart callbacks called:
1475 EAPI Evas_Object *elm_spinner_add(Evas_Object *parent);
1476 EAPI void elm_spinner_label_format_set(Evas_Object *obj, const char *fmt);
1477 EAPI const char *elm_spinner_label_format_get(const Evas_Object *obj);
1478 EAPI void elm_spinner_min_max_set(Evas_Object *obj, double min, double max);
1479 EAPI void elm_spinner_min_max_get(const Evas_Object *obj, double *min, double *max);
1480 EAPI void elm_spinner_step_set(Evas_Object *obj, double step);
1481 EAPI double elm_spinner_step_get(const Evas_Object *obj);
1482 EAPI void elm_spinner_value_set(Evas_Object *obj, double val);
1483 EAPI double elm_spinner_value_get(const Evas_Object *obj);
1484 EAPI void elm_spinner_wrap_set(Evas_Object *obj, Eina_Bool wrap);
1485 EAPI Eina_Bool elm_spinner_wrap_get(const Evas_Object *obj);
1486 EAPI void elm_spinner_editable_set(Evas_Object *obj, Eina_Bool editable);
1487 EAPI Eina_Bool elm_spinner_editable_get(const Evas_Object *obj);
1488 EAPI void elm_spinner_special_value_add(Evas_Object *obj, double value, const char *label);
1489 EAPI void elm_spinner_interval_set(Evas_Object *obj, double interval);
1490 EAPI double elm_spinner_interval_get(const Evas_Object *obj);
1491 /* smart callbacks called:
1492 * "changed" - when the spinner value changes
1493 * "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).
1495 /* available item styles:
1497 * vertical (two up/down buttons at the right side and text left aligned)
1500 typedef struct _Elm_Index_Item Elm_Index_Item;
1501 EAPI Evas_Object *elm_index_add(Evas_Object *parent);
1502 EAPI void elm_index_active_set(Evas_Object *obj, Eina_Bool active);
1503 EAPI void elm_index_item_level_set(Evas_Object *obj, int level);
1504 EAPI int elm_index_item_level_get(const Evas_Object *obj);
1505 EAPI const void *elm_index_item_selected_get(const Evas_Object *obj, int level);
1506 EAPI void elm_index_item_append(Evas_Object *obj, const char *letter, const void *item);
1507 EAPI void elm_index_item_prepend(Evas_Object *obj, const char *letter, const void *item);
1508 EAPI void elm_index_item_append_relative(Evas_Object *obj, const char *letter, const void *item, const void *relative);
1509 EAPI void elm_index_item_prepend_relative(Evas_Object *obj, const char *letter, const void *item, const void *relative);
1510 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);
1511 EAPI void elm_index_item_del(Evas_Object *obj, const void *item);
1512 EAPI Elm_Index_Item *elm_index_item_find(Evas_Object *obj, const void *item);
1513 EAPI void elm_index_item_clear(Evas_Object *obj);
1514 EAPI void elm_index_item_go(Evas_Object *obj, int level);
1515 EAPI void *elm_index_item_data_get(const Elm_Index_Item *item);
1516 EAPI void elm_index_item_data_set(Elm_Index_Item *it, const void *data);
1517 EAPI const char *elm_index_item_letter_get(const Elm_Index_Item *item);
1518 EAPI void elm_index_button_image_invisible_set(Evas_Object *obj, Eina_Bool invisible);
1519 /* smart callbacks called:
1520 * "changed" - when the selected index item changes
1521 * "delay,changed" - when the selected index item changes, but after some small idle period
1522 * "selected" - when the user releases heir finger and selects an item
1525 typedef enum _Elm_Photocam_Zoom_Mode
1527 ELM_PHOTOCAM_ZOOM_MODE_MANUAL = 0,
1528 ELM_PHOTOCAM_ZOOM_MODE_AUTO_FIT,
1529 ELM_PHOTOCAM_ZOOM_MODE_AUTO_FILL,
1530 ELM_PHOTOCAM_ZOOM_MODE_LAST
1531 } Elm_Photocam_Zoom_Mode;
1532 EAPI Evas_Object *elm_photocam_add(Evas_Object *parent);
1533 EAPI int elm_photocam_file_set(Evas_Object *obj, const char *file);
1534 EAPI const char * elm_photocam_file_get(const Evas_Object *obj);
1535 EAPI void elm_photocam_zoom_set(Evas_Object *obj, double zoom);
1536 EAPI double elm_photocam_zoom_get(const Evas_Object *obj);
1537 EAPI void elm_photocam_zoom_mode_set(Evas_Object *obj, Elm_Photocam_Zoom_Mode mode);
1538 EAPI Elm_Photocam_Zoom_Mode elm_photocam_zoom_mode_get(const Evas_Object *obj);
1539 EAPI void elm_photocam_image_size_get(const Evas_Object *obj, int *w, int *h);
1540 EAPI void elm_photocam_region_get(const Evas_Object *obj, int *x, int *y, int *w, int *h);
1541 EAPI void elm_photocam_image_region_show(Evas_Object *obj, int x, int y, int w, int h);
1542 EAPI void elm_photocam_image_region_bring_in(Evas_Object *obj, int x, int y, int w, int h);
1543 EAPI void elm_photocam_paused_set(Evas_Object *obj, Eina_Bool paused);
1544 EAPI Eina_Bool elm_photocam_paused_get(const Evas_Object *obj);
1545 EAPI Evas_Object *elm_photocam_internal_image_get(const Evas_Object *obj);
1546 EAPI void elm_photocam_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
1547 EAPI void elm_photocam_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce);
1549 /* smart callbacks called:
1550 * "clicked" - when image clicked
1551 * "press" - when mouse/finger held down initially on image
1552 * "longpressed" - when mouse/finger held for long time on image
1553 * "clicked,double" - when mouse/finger double-clicked
1554 * "load" - when photo load begins
1555 * "loaded" - when photo load done
1556 * "load,details" - when detailed image load begins
1557 * "loaded,details" - when detailed image load done
1558 * "zoom,start" - when zooming started
1559 * "zoom,stop" - when zooming stopped
1560 * "zoom,change" - when auto zoom mode changed zoom level
1561 * "scroll - the content has been scrolled (moved)
1562 * "scroll,anim,start" - scrolling animation has started
1563 * "scroll,anim,stop" - scrolling animation has stopped
1564 * "scroll,drag,start" - dragging the contents around has started
1565 * "scroll,drag,stop" - dragging the contents around has stopped
1568 typedef enum _Elm_Map_Zoom_Mode
1570 ELM_MAP_ZOOM_MODE_MANUAL,
1571 ELM_MAP_ZOOM_MODE_AUTO_FIT,
1572 ELM_MAP_ZOOM_MODE_AUTO_FILL,
1573 ELM_MAP_ZOOM_MODE_LAST
1574 } Elm_Map_Zoom_Mode;
1576 typedef enum _Elm_Map_Sources
1578 ELM_MAP_SOURCE_MAPNIK,
1579 ELM_MAP_SOURCE_OSMARENDER,
1580 ELM_MAP_SOURCE_CYCLEMAP,
1581 ELM_MAP_SOURCE_MAPLINT,
1582 ELM_MAP_SOURCE_DECARTA,
1583 ELM_MAP_SOURCE_CUSTOM_1,
1584 ELM_MAP_SOURCE_CUSTOM_2,
1585 ELM_MAP_SOURCE_CUSTOM_3,
1586 ELM_MAP_SOURCE_CUSTOM_4,
1587 ELM_MAP_SOURCE_CUSTOM_5,
1588 ELM_MAP_SOURCE_CUSTOM_6,
1592 typedef struct _Elm_Map_Marker Elm_Map_Marker;
1593 typedef struct _Elm_Map_Marker_Class Elm_Map_Marker_Class;
1594 typedef struct _Elm_Map_Group_Class Elm_Map_Group_Class;
1595 typedef Evas_Object *(*ElmMapMarkerGetFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data);
1596 typedef void (*ElmMapMarkerDelFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data, Evas_Object *o);
1597 typedef Evas_Object *(*ElmMapMarkerIconGetFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data);
1598 typedef Evas_Object *(*ElmMapGroupIconGetFunc) (Evas_Object *obj, void *data);
1599 typedef char *(*ElmMapSourceURLFunc) (void *data, int x, int y, int zoom);
1601 EAPI Evas_Object *elm_map_add(Evas_Object *parent);
1602 EAPI void elm_map_zoom_set(Evas_Object *obj, int zoom);
1603 EAPI double elm_map_zoom_get(const Evas_Object *obj);
1604 EAPI void elm_map_zoom_mode_set(Evas_Object *obj, Elm_Map_Zoom_Mode mode);
1605 EAPI Elm_Map_Zoom_Mode elm_map_zoom_mode_get(const Evas_Object *obj);
1606 EAPI void elm_map_geo_region_get(const Evas_Object *obj, double *lon, double *lat);
1607 EAPI void elm_map_geo_region_bring_in(Evas_Object *obj, double lon, double lat);
1608 EAPI void elm_map_geo_region_show(Evas_Object *obj, double lon, double lat);
1609 EAPI void elm_map_paused_set(Evas_Object *obj, Eina_Bool paused);
1610 EAPI Eina_Bool elm_map_paused_get(const Evas_Object *obj);
1611 EAPI void elm_map_paused_markers_set(Evas_Object *obj, Eina_Bool paused);
1612 EAPI Eina_Bool elm_map_paused_markers_get(const Evas_Object *obj);
1613 EAPI void elm_map_utils_convert_coord_into_geo(const Evas_Object *obj, int x, int y, int size, double *lon, double *lat);
1614 EAPI void elm_map_utils_convert_geo_into_coord(const Evas_Object *obj, double lon, double lat, int size, int *x, int *y);
1615 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);
1616 EAPI void elm_map_max_marker_per_group_set(Evas_Object *obj, int max);
1617 EAPI void elm_map_marker_remove(Elm_Map_Marker *marker);
1618 EAPI void elm_map_marker_bring_in(Elm_Map_Marker *marker);
1619 EAPI void elm_map_marker_show(Elm_Map_Marker *marker);
1620 EAPI void elm_map_markers_list_show(Eina_List *markers);
1621 EAPI Evas_Object *elm_map_marker_object_get(Elm_Map_Marker *marker);
1622 EAPI void elm_map_marker_update(Elm_Map_Marker *marker);
1623 EAPI void elm_map_bubbles_close(Evas_Object *obj);
1625 EAPI Elm_Map_Group_Class * elm_map_group_class_new(Evas_Object *obj);
1626 EAPI void elm_map_group_class_style_set(Elm_Map_Group_Class *clas, const char *style);
1627 EAPI void elm_map_group_class_icon_cb_set(Elm_Map_Group_Class *clas, ElmMapGroupIconGetFunc icon_get);
1628 EAPI void elm_map_group_class_data_set(Elm_Map_Group_Class *clas, void *data);
1629 EAPI void elm_map_group_class_zoom_displayed_set(Elm_Map_Group_Class *clas, int zoom);
1630 EAPI void elm_map_group_class_zoom_grouped_set(Elm_Map_Group_Class *clas, int zoom);
1631 EAPI void elm_map_group_class_hide_set(Evas_Object *obj, Elm_Map_Group_Class *clas, Eina_Bool hide);
1633 EAPI Elm_Map_Marker_Class * elm_map_marker_class_new(Evas_Object *obj);
1634 EAPI void elm_map_marker_class_style_set(Elm_Map_Marker_Class *clas, const char *style);
1635 EAPI void elm_map_marker_class_icon_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerIconGetFunc icon_get);
1636 EAPI void elm_map_marker_class_get_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerGetFunc get);
1637 EAPI void elm_map_marker_class_del_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerDelFunc del);
1639 EAPI void elm_map_source_set(Evas_Object *obj, Elm_Map_Sources source);
1640 EAPI Elm_Map_Sources elm_map_source_get(const Evas_Object *obj);
1641 EAPI void elm_map_source_custom_api_set(Elm_Map_Sources source, const char *label,
1642 int zoom_min, int zoom_max, ElmMapSourceURLFunc url_cb);
1643 EAPI int elm_map_source_zoom_min_get(Elm_Map_Sources source);
1644 EAPI int elm_map_source_zoom_max_get(Elm_Map_Sources source);
1645 EAPI const char *elm_map_source_name_get(Elm_Map_Sources source);
1646 /* smart callbacks called:
1647 * "clicked" - when image clicked
1648 * "press" - when mouse/finger held down initially on image
1649 * "longpressed" - when mouse/finger held for long time on image
1650 * "clicked,double" - when mouse/finger double-clicked
1651 * "load,details" - when detailed image load begins
1652 * "loaded,details" - when detailed image load done
1653 * "zoom,start" - when zooming started
1654 * "zoom,stop" - when zooming stopped
1655 * "zoom,change" - when auto zoom mode changed zoom level
1656 * "scroll - the content has been scrolled (moved)
1657 * "scroll,anim,start" - scrolling animation has started
1658 * "scroll,anim,stop" - scrolling animation has stopped
1659 * "scroll,drag,start" - dragging the contents around has started
1660 * "scroll,drag,stop" - dragging the contents around has stopped
1663 typedef enum _Elm_Panel_Orient
1665 ELM_PANEL_ORIENT_TOP,
1666 ELM_PANEL_ORIENT_BOTTOM,
1667 ELM_PANEL_ORIENT_LEFT,
1668 ELM_PANEL_ORIENT_RIGHT,
1670 EAPI Evas_Object *elm_panel_add(Evas_Object *parent);
1671 EAPI void elm_panel_orient_set(Evas_Object *obj, Elm_Panel_Orient orient);
1672 EAPI Elm_Panel_Orient elm_panel_orient_get(Evas_Object *obj);
1673 EAPI void elm_panel_content_set(Evas_Object *obj, Evas_Object *content);
1674 EAPI Evas_Object *elm_panel_content_unset(Evas_Object *obj);
1675 EAPI void elm_panel_hidden_set(Evas_Object *obj, Eina_Bool hidden);
1676 EAPI Eina_Bool elm_panel_hidden_get(Evas_Object *obj);
1677 EAPI void elm_panel_toggle(Evas_Object *obj);
1683 * Update the minimun height of the bar in the theme. No minimun should be set in the vertical theme
1684 * Add events (move, start ...)
1686 EAPI Evas_Object *elm_panes_add(Evas_Object *parent);
1687 EAPI void elm_panes_content_left_set(Evas_Object *obj, Evas_Object *content);
1688 EAPI void elm_panes_content_right_set(Evas_Object *obj, Evas_Object *content);
1689 EAPI Evas_Object *elm_panes_content_left_get(const Evas_Object *obj);
1690 EAPI Evas_Object *elm_panes_content_right_get(const Evas_Object *obj);
1691 EAPI Evas_Object *elm_panes_content_left_unset(Evas_Object *obj);
1692 EAPI Evas_Object *elm_panes_content_right_unset(Evas_Object *obj);
1693 EAPI double elm_panes_content_left_size_get(const Evas_Object *obj);
1694 EAPI void elm_panes_content_left_size_set(Evas_Object *obj, double size);
1695 EAPI void elm_panes_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
1696 EAPI Eina_Bool elm_panes_horizontal_get(const Evas_Object *obj);
1697 EAPI void elm_panes_fixed_set(Evas_Object *obj, Eina_Bool fixed);
1698 EAPI Eina_Bool elm_panes_fixed_get(const Evas_Object *obj);
1700 typedef enum _Elm_Flip_Mode
1702 ELM_FLIP_ROTATE_Y_CENTER_AXIS,
1703 ELM_FLIP_ROTATE_X_CENTER_AXIS,
1704 ELM_FLIP_ROTATE_XZ_CENTER_AXIS,
1705 ELM_FLIP_ROTATE_YZ_CENTER_AXIS,
1707 ELM_FLIP_CUBE_RIGHT,
1712 EAPI Evas_Object *elm_flip_add(Evas_Object *parent);
1713 EAPI void elm_flip_content_front_set(Evas_Object *obj, Evas_Object *content);
1714 EAPI void elm_flip_content_back_set(Evas_Object *obj, Evas_Object *content);
1715 EAPI Evas_Object *elm_flip_content_front_get(const Evas_Object *obj);
1716 EAPI Evas_Object *elm_flip_content_back_get(const Evas_Object *obj);
1717 EAPI Eina_Bool elm_flip_front_get(const Evas_Object *obj);
1718 EAPI void elm_flip_perspective_set(Evas_Object *obj, Evas_Coord foc, Evas_Coord x, Evas_Coord y);
1719 EAPI void elm_flip_go(Evas_Object *obj, Elm_Flip_Mode mode);
1720 /* smart callbacks called:
1721 * "animate,done" - when a flip animation is finished
1724 EAPI Evas_Object *elm_scrolled_entry_add(Evas_Object *parent);
1725 EAPI void elm_scrolled_entry_single_line_set(Evas_Object *obj, Eina_Bool single_line);
1726 EAPI Eina_Bool elm_scrolled_entry_single_line_get(const Evas_Object *obj);
1727 EAPI void elm_scrolled_entry_password_set(Evas_Object *obj, Eina_Bool password);
1728 EAPI Eina_Bool elm_scrolled_entry_password_get(const Evas_Object *obj);
1729 EAPI void elm_scrolled_entry_entry_set(Evas_Object *obj, const char *entry);
1730 EAPI const char *elm_scrolled_entry_entry_get(const Evas_Object *obj);
1731 EAPI const char *elm_scrolled_entry_selection_get(const Evas_Object *obj);
1732 EAPI void elm_scrolled_entry_entry_insert(Evas_Object *obj, const char *entry);
1733 EAPI void elm_scrolled_entry_line_wrap_set(Evas_Object *obj, Eina_Bool wrap);
1734 EAPI void elm_scrolled_entry_line_char_wrap_set(Evas_Object *obj, Eina_Bool wrap);
1735 EAPI void elm_scrolled_entry_editable_set(Evas_Object *obj, Eina_Bool editable);
1736 EAPI Eina_Bool elm_scrolled_entry_editable_get(const Evas_Object *obj);
1737 EAPI void elm_scrolled_entry_select_none(Evas_Object *obj);
1738 EAPI void elm_scrolled_entry_select_all(Evas_Object *obj);
1739 EAPI Eina_Bool elm_scrolled_entry_cursor_next(Evas_Object *obj);
1740 EAPI Eina_Bool elm_scrolled_entry_cursor_prev(Evas_Object *obj);
1741 EAPI Eina_Bool elm_scrolled_entry_cursor_up(Evas_Object *obj);
1742 EAPI Eina_Bool elm_scrolled_entry_cursor_down(Evas_Object *obj);
1743 EAPI void elm_scrolled_entry_cursor_begin_set(Evas_Object *obj);
1744 EAPI void elm_scrolled_entry_cursor_end_set(Evas_Object *obj);
1745 EAPI void elm_scrolled_entry_cursor_line_begin_set(Evas_Object *obj);
1746 EAPI void elm_scrolled_entry_cursor_line_end_set(Evas_Object *obj);
1747 EAPI void elm_scrolled_entry_cursor_selection_begin(Evas_Object *obj);
1748 EAPI void elm_scrolled_entry_cursor_selection_end(Evas_Object *obj);
1749 EAPI Eina_Bool elm_scrolled_entry_cursor_is_format_get(const Evas_Object *obj);
1750 EAPI Eina_Bool elm_scrolled_entry_cursor_is_visible_format_get(const Evas_Object *obj);
1751 EAPI const char *elm_scrolled_entry_cursor_content_get(const Evas_Object *obj);
1752 EAPI void elm_scrolled_entry_selection_cut(Evas_Object *obj);
1753 EAPI void elm_scrolled_entry_selection_copy(Evas_Object *obj);
1754 EAPI void elm_scrolled_entry_selection_paste(Evas_Object *obj);
1755 EAPI void elm_scrolled_entry_context_menu_clear(Evas_Object *obj);
1756 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);
1757 EAPI void elm_scrolled_entry_context_menu_disabled_set(Evas_Object *obj, Eina_Bool disabled);
1758 EAPI Eina_Bool elm_scrolled_entry_context_menu_disabled_get(const Evas_Object *obj);
1759 EAPI void elm_scrolled_entry_scrollbar_policy_set(Evas_Object *obj, Elm_Scroller_Policy h, Elm_Scroller_Policy v);
1760 EAPI void elm_scrolled_entry_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
1761 EAPI void elm_scrolled_entry_maximum_bytes_set(Evas_Object *obj, int max_no_of_bytes);
1762 EINA_DEPRECATED EAPI void elm_scrolled_entry_password_show_last_character_set(Evas_Object *obj, Eina_Bool show_last_character);
1764 EAPI void elm_scrolled_entry_input_panel_enabled_set(Evas_Object *obj, Eina_Bool enabled);
1765 EAPI void elm_scrolled_entry_input_panel_layout_set(Evas_Object *obj, Elm_Input_Panel_Layout layout);
1766 EAPI Ecore_IMF_Context *elm_scrolled_entry_imf_context_get(Evas_Object *obj);
1767 EAPI void elm_scrolled_entry_autocapitalization_set(Evas_Object *obj, Eina_Bool autocap);
1768 EAPI void elm_scrolled_entry_autoperiod_set(Evas_Object *obj, Eina_Bool autoperiod);
1770 EAPI Evas_Object *elm_conformant_add(Evas_Object *parent);
1771 EAPI void elm_conformant_content_set(Evas_Object *obj, Evas_Object *content);
1772 EAPI Evas_Object *elm_conformant_content_unset(Evas_Object *obj);
1775 EAPI Evas_Object *elm_mapbuf_add(Evas_Object *parent);
1776 EAPI void elm_mapbuf_content_set(Evas_Object *obj, Evas_Object *content);
1777 EAPI Evas_Object *elm_mapbuf_content_unset(Evas_Object *obj);
1778 EAPI void elm_mapbuf_enabled_set(Evas_Object *obj, Eina_Bool enabled);
1779 EAPI Eina_Bool elm_mapbuf_enabled_get(const Evas_Object *obj);
1780 EAPI void elm_mapbuf_smooth_set(Evas_Object *obj, Eina_Bool smooth);
1781 EAPI Eina_Bool elm_mapbuf_smooth_get(const Evas_Object *obj);
1782 EAPI void elm_mapbuf_alpha_set(Evas_Object *obj, Eina_Bool alpha);
1783 EAPI Eina_Bool elm_mapbuf_alpha_get(const Evas_Object *obj);
1788 ELM_ANIMATOR_CURVE_LINEAR,
1789 ELM_ANIMATOR_CURVE_IN_OUT,
1790 ELM_ANIMATOR_CURVE_IN,
1791 ELM_ANIMATOR_CURVE_OUT
1792 } Elm_Animator_Curve_Style;
1793 typedef struct _Elm_Animator Elm_Animator;
1795 * Called back per loop of an elementary animators cycle
1796 * @param data user-data given to elm_animator_operation_callback_set()
1797 * @param animator the animator being run
1798 * @param double the position in the animation
1800 typedef void (*Elm_Animator_Operation_Cb) (void *data, Elm_Animator *animator, double frame);
1802 * Called back when an elementary animator finishes
1803 * @param data user-data given to elm_animator_completion_callback_set()
1805 typedef void (*Elm_Animator_Completion_Cb) (void *data);
1807 EAPI Elm_Animator* elm_animator_add(Evas_Object *parent);
1808 EAPI void elm_animator_del(Elm_Animator *animator);
1809 EAPI void elm_animator_duration_set(Elm_Animator *animator, double duration);
1810 EAPI void elm_animator_operation_callback_set(Elm_Animator *animator, Elm_Animator_Operation_Cb func, void *data);
1811 EAPI void elm_animator_completion_callback_set(Elm_Animator *animator, Elm_Animator_Completion_Cb func, void *data);
1812 EAPI void elm_animator_stop(Elm_Animator *animator);
1813 EAPI void elm_animator_repeat_set(Elm_Animator *animator, unsigned int repeat_cnt);
1814 EAPI void elm_animator_animate(Elm_Animator *animator);
1815 EAPI void elm_animator_curve_style_set(Elm_Animator *animator, Elm_Animator_Curve_Style cs);
1816 EAPI void elm_animator_auto_reverse_set(Elm_Animator *animator, Eina_Bool reverse);
1817 EAPI Elm_Animator_Curve_Style elm_animator_curve_style_get(const Elm_Animator *animator) EINA_ARG_NONNULL(1);
1818 EAPI Eina_Bool elm_animator_auto_reverse_get(const Elm_Animator *animator) EINA_ARG_NONNULL(1);
1819 EAPI Eina_Bool elm_animator_operating_get(const Elm_Animator *animator) EINA_ARG_NONNULL(1);
1820 EAPI unsigned int elm_animator_repeat_get(const Elm_Animator *animator);
1821 EAPI void elm_animator_pause(Elm_Animator *animator);
1822 EAPI void elm_animator_resume(Elm_Animator *animator);
1827 ELM_CALENDAR_UNIQUE,
1829 ELM_CALENDAR_WEEKLY,
1830 ELM_CALENDAR_MONTHLY,
1831 ELM_CALENDAR_ANNUALLY
1832 } Elm_Calendar_Mark_Repeat;
1833 typedef struct _Elm_Calendar_Mark Elm_Calendar_Mark;
1835 EAPI Evas_Object *elm_calendar_add(Evas_Object *parent);
1836 EAPI const char **elm_calendar_weekdays_names_get(const Evas_Object *obj);
1837 EAPI void elm_calendar_weekdays_names_set(Evas_Object *obj, const char *weekdays[]);
1838 EAPI double elm_calendar_interval_get(const Evas_Object *obj);
1839 EAPI void elm_calendar_interval_set(Evas_Object *obj, double interval);
1840 EAPI void elm_calendar_min_max_year_get(const Evas_Object *obj, int *min, int *max);
1841 EAPI void elm_calendar_min_max_year_set(Evas_Object *obj, int min, int max);
1842 EAPI Eina_Bool elm_calendar_day_selection_enabled_get(const Evas_Object *obj);
1843 EAPI void elm_calendar_day_selection_enabled_set(Evas_Object *obj, Eina_Bool enabled);
1844 EAPI Eina_Bool elm_calendar_selected_time_get(const Evas_Object *obj, struct tm *selected_time);
1845 EAPI void elm_calendar_selected_time_set(Evas_Object *obj, struct tm *selected_time);
1846 EAPI void elm_calendar_format_function_set(Evas_Object *obj, char * (*format_function) (struct tm *stime));
1847 EAPI Elm_Calendar_Mark *elm_calendar_mark_add(Evas_Object *obj, const char *mark_type, struct tm *mark_time, Elm_Calendar_Mark_Repeat repeat);
1848 EAPI void elm_calendar_mark_del(Elm_Calendar_Mark *mark);
1849 EAPI void elm_calendar_marks_clear(Evas_Object *obj);
1850 EAPI const Eina_List *elm_calendar_marks_get(const Evas_Object *obj);
1851 EAPI void elm_calendar_marks_draw(Evas_Object *obj);
1852 EAPI void elm_calendar_text_weekday_color_set(const Evas_Object *obj, int pos);
1853 EAPI void elm_calendar_text_saturday_color_set(const Evas_Object *obj, int pos);
1854 EAPI void elm_calendar_text_sunday_color_set(const Evas_Object *obj, int pos);
1856 typedef struct _Picker_Item Elm_Picker_Item;
1857 EAPI Evas_Object *elm_picker_add(Evas_Object *parent);
1858 EAPI void elm_picker_next(Evas_Object *obj);
1859 EAPI void elm_picker_prev(Evas_Object *obj);
1860 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);
1861 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);
1862 EAPI const Eina_List *elm_picker_items_get(Evas_Object *obj);
1863 EAPI Elm_Picker_Item *elm_picker_first_item_get(Evas_Object *obj);
1864 EAPI Elm_Picker_Item *elm_picker_last_item_get(Evas_Object *obj);
1865 EAPI Elm_Picker_Item *elm_picker_selected_item_get(Evas_Object *obj);
1866 EAPI void elm_picker_item_selected_set(Elm_Picker_Item *item);
1867 EAPI void elm_picker_item_del(Elm_Picker_Item *item);
1868 EAPI const char *elm_picker_item_label_get(Elm_Picker_Item *item);
1869 EAPI void elm_picker_item_label_set(Elm_Picker_Item *item, const char *label);
1870 EAPI Elm_Picker_Item *elm_picker_item_prev(Elm_Picker_Item *item);
1871 EAPI Elm_Picker_Item *elm_picker_item_next(Elm_Picker_Item *item);
1872 /* smart callback called:
1873 * "changed" - when picker selected item is changed
1874 * "overflowed" - when picker item is changed to first item from last item
1875 * "underflowed" - when picker item is changed to last item from first item.
1877 /* available styles:
1883 typedef struct _Discpicker_Item Elm_Discpicker_Item;
1884 EAPI Evas_Object *elm_discpicker_add(Evas_Object *parent);
1885 EAPI void elm_discpicker_row_height_set(Evas_Object *obj, unsigned int row_height);
1886 EAPI void elm_discpicker_next(Evas_Object *obj);
1887 EAPI void elm_discpicker_prev(Evas_Object *obj);
1888 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);
1889 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);
1890 EAPI const Eina_List *elm_discpicker_items_get(Evas_Object *obj);
1891 EAPI Elm_Discpicker_Item *elm_discpicker_first_item_get(Evas_Object *obj);
1892 EAPI Elm_Discpicker_Item *elm_discpicker_last_item_get(Evas_Object *obj);
1893 EAPI Elm_Discpicker_Item *elm_discpicker_selected_item_get(Evas_Object *obj);
1894 EAPI void elm_discpicker_item_selected_set(Elm_Discpicker_Item *item);
1895 EAPI void elm_discpicker_item_del(Elm_Discpicker_Item *item);
1896 EAPI const char *elm_discpicker_item_label_get(Elm_Discpicker_Item *item);
1897 EAPI void elm_discpicker_item_label_set(Elm_Discpicker_Item *item, const char *label);
1898 EAPI Elm_Discpicker_Item *elm_discpicker_item_prev(Elm_Discpicker_Item *item);
1899 EAPI Elm_Discpicker_Item *elm_discpicker_item_next(Elm_Discpicker_Item *item);
1900 EAPI void *elm_discpicker_item_data_get(Elm_Discpicker_Item *item);
1901 EAPI void elm_discpicker_item_data_set(Elm_Discpicker_Item *item, void *data);
1902 EAPI Eina_Bool elm_discpicker_item_disabled_get(Elm_Discpicker_Item *item);
1903 EAPI void elm_discpicker_item_disabled_set(Elm_Discpicker_Item *item, Eina_Bool disabled);
1904 /* smart callbacks called:
1905 * "selected" - when discpicker selected item is changed
1906 * "overflowed" - when discpicker item is changed to first item from last item
1907 * "underflowed" - when discpicker item is changed to last item from first item.
1909 /* available styles:
1913 EAPI Evas_Object *elm_timepicker_add(Evas_Object *parent);
1914 EAPI void elm_timepicker_time_set(Evas_Object *obj, int hrs, int min, int sec);
1915 EAPI void elm_timepicker_time_get(Evas_Object *obj, int *hrs, int *min, int *sec);
1916 EAPI void elm_timepicker_show_am_pm_set(Evas_Object *obj, Eina_Bool am_pm);
1917 EAPI void elm_timepicker_show_seconds_set(Evas_Object *obj, Eina_Bool seconds);
1918 /* smart callback called:
1919 * "changed" - when timepicker selected item is changed
1921 /* available styles:
1925 EAPI Evas_Object *elm_datepicker_add(Evas_Object *parent);
1926 EAPI void elm_datepicker_date_set(Evas_Object *obj, int year, int month, int day);
1927 EAPI void elm_datepicker_date_get(const Evas_Object *obj, int *year, int *month, int *day);
1928 EAPI void elm_datepicker_date_min_set(Evas_Object *obj, int year, int month, int day); // Not implemented
1929 EAPI void elm_datepicker_date_min_get(const Evas_Object *obj, int *year, int *month, int *day);
1930 EAPI void elm_datepicker_date_max_set(Evas_Object *obj, int year, int month, int day); // Not implemented
1931 EAPI void elm_datepicker_date_max_get(const Evas_Object *obj, int *year, int *month, int *day);
1932 EAPI void elm_datepicker_date_format_set(Evas_Object *obj, const char *fmt);
1933 EAPI const char *elm_datepicker_date_format_get(const Evas_Object *obj);
1934 /* smart callback called:
1935 * "changed" - when datepicker selected item is changed
1937 /* available styles:
1942 typedef enum _Elm_Datefield_Layout
1944 ELM_DATEFIELD_LAYOUT_TIME,
1945 ELM_DATEFIELD_LAYOUT_DATE,
1946 ELM_DATEFIELD_LAYOUT_DATEANDTIME
1947 } Elm_Datefield_Layout;
1949 EAPI Evas_Object *elm_datefield_add(Evas_Object *parent);
1950 EAPI void elm_datefield_layout_set(Evas_Object *obj, Elm_Datefield_Layout layout);
1951 EAPI Elm_Datefield_Layout elm_datefield_layout_get(const Evas_Object *obj);
1952 EAPI void elm_datefield_date_set(Evas_Object *obj, int year, int month, int day, int hour, int min);
1953 EAPI void elm_datefield_date_get(const Evas_Object *obj, int *year, int *month, int *day, int *hour, int *min);
1954 EAPI Eina_Bool elm_datefield_date_max_set(Evas_Object *obj, int year, int month, int day);
1955 EAPI void elm_datefield_date_max_get(const Evas_Object *obj, int *year, int *month, int *day);
1956 EAPI Eina_Bool elm_datefield_date_min_set(Evas_Object *obj, int year, int month, int day);
1957 EAPI void elm_datefield_date_min_get(const Evas_Object *obj, int *year, int *month, int *day);
1958 EAPI void elm_datefield_time_mode_set(Evas_Object *obj, Eina_Bool mode);
1959 EAPI Eina_Bool elm_datefield_time_mode_get(const Evas_Object *obj);
1960 EAPI void elm_datefield_date_format_set(Evas_Object *obj, const char *fmt);
1961 EAPI const char *elm_datefield_date_format_get(const Evas_Object *obj);
1962 EAPI void elm_datefield_input_panel_state_callback_add(Evas_Object *obj, void (*pEventCallbackFunc) (void *data, Evas_Object *obj, int value), void *data);
1963 EAPI void elm_datefield_input_panel_state_callback_del(Evas_Object *obj, void (*pEventCallbackFunc) (void *data, Evas_Object *obj, int value));
1964 /* smart callbacks called:
1965 * "changed" - when datefield entry is changed, this signal is sent.
1969 EINA_DEPRECATED EAPI Evas_Object *elm_titlebar_add(Evas_Object *parent);
1970 EINA_DEPRECATED EAPI void elm_titlebar_label_set(Evas_Object *obj, const char *label);
1971 EINA_DEPRECATED EAPI const char *elm_titlebar_label_get(Evas_Object *obj);
1972 EINA_DEPRECATED EAPI void elm_titlebar_icon_set(Evas_Object *obj, Evas_Object *icon);
1973 EINA_DEPRECATED EAPI Evas_Object *elm_titlebar_icon_get(Evas_Object *obj);
1974 EINA_DEPRECATED EAPI void elm_titlebar_end_set(Evas_Object *obj, Evas_Object *end);
1975 EINA_DEPRECATED EAPI Evas_Object *elm_titlebar_end_get(Evas_Object *obj);
1978 typedef enum _Elm_Popup_Response
1980 ELM_POPUP_RESPONSE_NONE = -1,
1981 ELM_POPUP_RESPONSE_TIMEOUT = -2,
1982 ELM_POPUP_RESPONSE_OK = -3,
1983 ELM_POPUP_RESPONSE_CANCEL = -4,
1984 ELM_POPUP_RESPONSE_CLOSE = -5
1985 } Elm_Popup_Response;
1987 typedef enum _Elm_Popup_Mode
1989 ELM_POPUP_TYPE_NONE = 0,
1990 ELM_POPUP_TYPE_ALERT = (1 << 0)
1993 typedef enum _Elm_Popup_Orient
1995 ELM_POPUP_ORIENT_TOP,
1996 ELM_POPUP_ORIENT_CENTER,
1997 ELM_POPUP_ORIENT_BOTTOM,
1998 ELM_POPUP_ORIENT_LEFT,
1999 ELM_POPUP_ORIENT_RIGHT,
2000 ELM_POPUP_ORIENT_TOP_LEFT,
2001 ELM_POPUP_ORIENT_TOP_RIGHT,
2002 ELM_POPUP_ORIENT_BOTTOM_LEFT,
2003 ELM_POPUP_ORIENT_BOTTOM_RIGHT
2006 /* smart callbacks called:
2007 * "response" - when ever popup is closed, this signal is sent with appropriate response id.".
2010 EAPI Evas_Object *elm_popup_add(Evas_Object *parent);
2011 EAPI void elm_popup_desc_set(Evas_Object *obj, const char *text);
2012 EAPI const char *elm_popup_desc_get(Evas_Object *obj);
2013 EAPI void elm_popup_title_label_set(Evas_Object *obj, const char *text);
2014 EAPI const char *elm_popup_title_label_get(Evas_Object *obj);
2015 EAPI void elm_popup_title_icon_set(Evas_Object *obj, Evas_Object *icon);
2016 EAPI Evas_Object *elm_popup_title_icon_get(Evas_Object *obj);
2017 EAPI void elm_popup_content_set(Evas_Object *obj, Evas_Object *content);
2018 EAPI Evas_Object* elm_popup_content_get(Evas_Object *obj);
2019 EAPI void elm_popup_buttons_add(Evas_Object *obj,int no_of_buttons, char *first_button_text, ...);
2020 EAPI Evas_Object* elm_popup_with_buttons_add(Evas_Object *parent, char *title, char *desc_text,int no_of_buttons, char *first_button_text, ... );
2021 EAPI void elm_popup_timeout_set(Evas_Object *obj, int timeout);
2022 EAPI void elm_popup_mode_set(Evas_Object *obj, Elm_Popup_Mode mode);
2023 EAPI void elm_popup_response(Evas_Object *obj, int response_id);
2024 EAPI void elm_popup_orient_set(Evas_Object *obj, Elm_Popup_Orient orient);
2025 EINA_DEPRECATED EAPI void elm_popup_rotation_set(Evas_Object *obj, int rot_angle);
2026 EAPI int elm_popup_run(Evas_Object *obj);
2027 /* Contextual Popup */
2028 typedef struct _Ctxpopup_Item Elm_Ctxpopup_Item;
2030 typedef enum _Ctxpopup_Arrow_Direction
2032 ELM_CTXPOPUP_ARROW_DOWN,
2033 ELM_CTXPOPUP_ARROW_RIGHT,
2034 ELM_CTXPOPUP_ARROW_LEFT,
2035 ELM_CTXPOPUP_ARROW_UP,
2036 } Elm_Ctxpopup_Arrow;
2038 EAPI Evas_Object *elm_ctxpopup_add(Evas_Object *parent);
2039 EAPI void elm_ctxpopup_horizontal_set(Evas_Object *obj, Eina_Bool horizontal);
2040 EAPI Eina_Bool elm_ctxpopup_horizontal_get(Evas_Object *obj);
2041 EAPI void elm_ctxpopup_item_icon_set(Elm_Ctxpopup_Item *item, Evas_Object *icon);
2042 EAPI void elm_ctxpopup_item_label_set(Elm_Ctxpopup_Item *item, const char *label);
2043 EINA_DEPRECATED EAPI Elm_Ctxpopup_Item *elm_ctxpopup_label_add(Evas_Object *obj, const char *label, Evas_Smart_Cb func, void *data);
2044 EINA_DEPRECATED EAPI Elm_Ctxpopup_Item *elm_ctxpopup_icon_add(Evas_Object *obj, Evas_Object *icon, Evas_Smart_Cb func, void *data);
2045 EAPI Elm_Ctxpopup_Item *elm_ctxpopup_item_add(Evas_Object *obj, Evas_Object *icon, const char* label, Evas_Smart_Cb func, void *data);
2046 EAPI void elm_ctxpopup_item_del(Elm_Ctxpopup_Item *item);
2047 EAPI void elm_ctxpopup_item_disabled_set(Elm_Ctxpopup_Item *item, Eina_Bool disabled);
2048 EAPI void elm_ctxpopup_clear(Evas_Object *obj);
2049 EAPI const char *elm_ctxpopup_item_label_get(Elm_Ctxpopup_Item *item);
2050 EAPI Evas_Object *elm_ctxpopup_item_icon_get(Elm_Ctxpopup_Item *item);
2051 EAPI void elm_ctxpopup_scroller_disabled_set(Evas_Object *obj, Eina_Bool disabled);
2052 EAPI void elm_ctxpopup_screen_dimmed_disabled_set(Evas_Object *obj, Eina_Bool disabled);
2053 EAPI void elm_ctxpopup_button_append(Evas_Object *obj, const char *label, Evas_Smart_Cb func, const void *data);
2054 EAPI void elm_ctxpopup_arrow_priority_set(Evas_Object *obj, Elm_Ctxpopup_Arrow first, Elm_Ctxpopup_Arrow second, Elm_Ctxpopup_Arrow third, Elm_Ctxpopup_Arrow fourth);
2055 EAPI void elm_ctxpopup_content_set(Evas_Object *obj, Evas_Object *content);
2056 EAPI Evas_Object *elm_ctxpopup_content_unset(Evas_Object *obj);
2057 EAPI void elm_ctxpopup_position_forced_set(Evas_Object *obj, Eina_Bool forced);
2058 EAPI Eina_Bool elm_ctxpopup_position_forced_get(Evas_Object *obj);
2059 EAPI void elm_ctxpopup_area_set(Evas_Object *obj, Evas_Object *rect);
2062 typedef enum _Elm_Tab_Move_Type
2064 ELM_TAB_MOVE_LEFT = 0,
2065 ELM_TAB_MOVE_RIGHT = 1
2066 } Elm_Tab_Move_Type;
2068 typedef enum _Elm_Tab_Mode_Type
2070 ELM_TAB_PORTRAIT_2 = 2,
2071 ELM_TAB_PORTRAIT_3 = 3,
2072 ELM_TAB_PORTRAIT_4 = 4,
2073 ELM_TAB_LANDSCAPE_2 = 12,
2074 ELM_TAB_LANDSCAPE_3 = 13,
2075 ELM_TAB_LANDSCAPE_4 = 14,
2076 ELM_TAB_LANDSCAPE_5 = 15,
2077 } Elm_Tab_Mode_Type;
2079 typedef struct _Elm_Tab_Item Elm_Tab_Item;
2081 EINA_DEPRECATED EAPI Evas_Object *elm_tab_add(Evas_Object *parent);
2082 EINA_DEPRECATED EAPI void elm_tab_set(Evas_Object *obj, int mode);
2083 EINA_DEPRECATED 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);
2084 EINA_DEPRECATED EAPI void elm_tab_item_del(Elm_Tab_Item *item);
2085 EINA_DEPRECATED EAPI void elm_tab_item_select(Elm_Tab_Item *item);
2086 EINA_DEPRECATED EAPI Evas_Object *elm_tab_item_icon_get(Elm_Tab_Item *item);
2087 EINA_DEPRECATED EAPI const char *elm_tab_item_label_get(Elm_Tab_Item *item);
2088 EINA_DEPRECATED EAPI void elm_tab_item_label_set(Elm_Tab_Item *item, const char *label);
2089 EINA_DEPRECATED EAPI void elm_tab_item_badge_set(Elm_Tab_Item *item, const int badge);
2090 EINA_DEPRECATED EAPI Elm_Tab_Item *elm_tab_selected_item_get(Evas_Object *obj);
2091 EINA_DEPRECATED EAPI Elm_Tab_Item *elm_tab_first_item_get(Evas_Object *obj);
2092 EINA_DEPRECATED EAPI Elm_Tab_Item *elm_tab_last_item_get(Evas_Object *obj);
2093 EINA_DEPRECATED EAPI Eina_List *elm_tab_items_get(Evas_Object *obj);
2094 EINA_DEPRECATED EAPI Elm_Tab_Item *elm_tab_item_prev(Elm_Tab_Item *item);
2095 EINA_DEPRECATED EAPI Elm_Tab_Item *elm_tab_item_next(Elm_Tab_Item *item);
2096 EINA_DEPRECATED EAPI void elm_tab_move(Evas_Object *obj, int direction);
2097 EINA_DEPRECATED EAPI void elm_tab_edit_disable_set(Evas_Object *obj, Eina_Bool disable);
2098 EINA_DEPRECATED EAPI Eina_Bool elm_tab_edit_disable_get(Evas_Object *obj);
2103 ELM_TRANSIT_TWEEN_MODE_LINEAR,
2104 ELM_TRANSIT_TWEEN_MODE_SINUSODIAL,
2105 ELM_TRANSIT_TWEEN_MODE_DECELERATE,
2106 ELM_TRANSIT_TWEEN_MODE_ACCELERATE
2107 } Elm_Transit_Tween_Mode;
2109 typedef struct _transit Elm_Transit;
2110 typedef struct _effect Elm_Effect;
2112 EAPI Elm_Transit *elm_transit_add(Evas_Object *parent);
2113 EAPI void elm_transit_del(Elm_Transit *transit);
2114 EAPI void elm_transit_run(Elm_Transit *transit, double duration);
2115 EAPI void elm_transit_stop(Elm_Transit *transit);
2116 EAPI void elm_transit_completion_callback_set(Elm_Transit *transit, void (*op)(void *data,Elm_Transit* transit), void *data);
2117 EAPI void elm_transit_repeat_set(Elm_Transit *transit, unsigned int repeat);
2118 EAPI void elm_transit_auto_reverse_set(Elm_Transit *transit, Eina_Bool reverse);
2119 EAPI void elm_transit_tween_mode_set(Elm_Transit *transit, Elm_Transit_Tween_Mode tween_mode);
2120 EAPI void elm_transit_event_block_disabled_set(Elm_Transit *transit, Eina_Bool disabled);
2121 EAPI Eina_Bool elm_transit_fx_insert(Elm_Transit *transit, Elm_Effect *effect);
2122 EAPI void elm_transit_fx_clear(Elm_Transit *transit);
2123 EAPI Eina_Bool elm_transit_event_block_disabled_get(const Elm_Transit *transit) EINA_ARG_NONNULL(1);
2124 EAPI void elm_transit_pause(Elm_Transit *transit);
2125 EAPI void elm_transit_resume(Elm_Transit *transit);
2126 EAPI Elm_Transit_Tween_Mode elm_transit_tween_mode_get(const Elm_Transit *transit) EINA_ARG_NONNULL(1);
2127 EINA_DEPRECATED EAPI void elm_transit_curve_style_set(Elm_Transit *transit, Elm_Animator_Curve_Style cs);
2129 /* Translation FX */
2130 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);
2133 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);
2136 EAPI Elm_Effect *elm_fx_zoom_add(Evas_Object *obj, float from_rate, float to_rate);
2144 EAPI Elm_Effect *elm_fx_flip_add( Evas_Object *front, Evas_Object *back, Elm_Fx_Flip_Axis axis, Eina_Bool cw);
2147 EAPI Elm_Effect *elm_fx_blend_add(Evas_Object *before, Evas_Object *after);
2150 EAPI Elm_Effect *elm_fx_fade_add(Evas_Object *before, Evas_Object *after);
2153 EAPI Elm_Effect *elm_fx_rotation_add(Evas_Object *obj, float from_degree, float to_degree, Eina_Bool cw);
2156 EAPI Elm_Effect *elm_fx_rotation3d_add(Evas_Object *obj, float from_degree, float to_degree, float* axis_dir, float* axis_pos);
2159 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);
2165 ELM_FX_WIPE_DIR_LEFT,
2166 ELM_FX_WIPE_DIR_RIGHT,
2167 ELM_FX_WIPE_DIR_DOWN
2172 ELM_FX_WIPE_TYPE_HIDE,
2173 ELM_FX_WIPE_TYPE_SHOW
2175 EAPI Elm_Effect *elm_fx_wipe_add(Evas_Object *obj, Elm_Fx_Wipe_Type type, Elm_Fx_Wipe_Dir dir);
2177 /* ResizableFlip Fx */
2178 EAPI Elm_Effect *elm_fx_resizable_flip_add(Evas_Object *front, Evas_Object *back, Elm_Fx_Flip_Axis axis, Eina_Bool cw);
2180 /* ImageAnimation Fx */
2181 EAPI Elm_Effect *elm_fx_image_animation_add(Evas_Object *icon, const char** images, unsigned int img_cnt);
2186 ELM_NAVIGATIONBAR_FUNCTION_BUTTON1,
2187 ELM_NAVIGATIONBAR_FUNCTION_BUTTON2,
2188 ELM_NAVIGATIONBAR_FUNCTION_BUTTON3,
2189 ELM_NAVIGATIONBAR_BACK_BUTTON
2190 } Elm_Navi_Button_Type;
2192 EAPI Evas_Object *elm_navigationbar_add(Evas_Object *parent);
2193 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);
2194 EAPI void elm_navigationbar_pop(Evas_Object *obj);
2195 EAPI void elm_navigationbar_to_content_pop(Evas_Object *obj, Evas_Object *content);
2196 EAPI void elm_navigationbar_title_label_set(Evas_Object *obj, Evas_Object *content, const char *title);
2197 EAPI const char *elm_navigationbar_title_label_get(Evas_Object *obj, Evas_Object *content);
2198 EAPI void elm_navigationbar_title_object_add(Evas_Object *obj, Evas_Object *content, Evas_Object *title_obj);
2199 EAPI Eina_List *elm_navigationbar_title_object_list_get(Evas_Object *obj, Evas_Object *content);
2200 EAPI Evas_Object *elm_navigationbar_content_top_get(Evas_Object *obj);
2201 EAPI Evas_Object *elm_navigationbar_content_bottom_get(Evas_Object *obj);
2202 EAPI void elm_navigationbar_hidden_set(Evas_Object *obj, Eina_Bool hidden);
2203 EAPI void elm_navigationbar_title_button_set(Evas_Object *obj, Evas_Object *content, Evas_Object *button, Elm_Navi_Button_Type button_type);
2204 EAPI Evas_Object *elm_navigationbar_title_button_get(Evas_Object *obj, Evas_Object *content, Elm_Navi_Button_Type button_type);
2205 EAPI const char *elm_navigationbar_subtitle_label_get(Evas_Object *obj, Evas_Object *content);
2206 EAPI void elm_navigationbar_subtitle_label_set(Evas_Object *obj, Evas_Object *content, const char *subtitle);
2207 EAPI void elm_navigationbar_title_object_list_unset(Evas_Object *obj, Evas_Object *content, Eina_List **list);
2208 EAPI void elm_navigationbar_animation_disable_set(Evas_Object *obj, Eina_Bool disable);
2213 ELM_NAVIGATIONBAR_EX_BACK_BUTTON,
2214 ELM_NAVIGATIONBAR_EX_FUNCTION_BUTTON1,
2215 ELM_NAVIGATIONBAR_EX_FUNCTION_BUTTON2,
2216 ELM_NAVIGATIONBAR_EX_FUNCTION_BUTTON3,
2217 ELM_NAVIGATIONBAR_EX_MAX
2218 } Elm_Navi_ex_Button_Type;
2219 typedef struct _Elm_Navigationbar_ex_Item Elm_Navigationbar_ex_Item;
2221 EAPI Evas_Object *elm_navigationbar_ex_add(Evas_Object *parent);
2222 EAPI Elm_Navigationbar_ex_Item *elm_navigationbar_ex_item_push(Evas_Object *obj, Evas_Object *content, const char *item_style);
2223 EAPI void elm_navigationbar_ex_item_pop(Evas_Object *obj);
2224 EAPI void elm_navigationbar_ex_item_promote(Elm_Navigationbar_ex_Item* item);
2225 EAPI void elm_navigationbar_ex_to_item_pop(Elm_Navigationbar_ex_Item* item);
2226 EAPI void elm_navigationbar_ex_item_title_label_set(Elm_Navigationbar_ex_Item *item, const char *title);
2227 EAPI const char *elm_navigationbar_ex_item_title_label_get(Elm_Navigationbar_ex_Item* item);
2228 EAPI Elm_Navigationbar_ex_Item *elm_navigationbar_ex_item_top_get(const Evas_Object *obj);
2229 EAPI Elm_Navigationbar_ex_Item *elm_navigationbar_ex_item_bottom_get(const Evas_Object *obj);
2230 EAPI void elm_navigationbar_ex_item_title_button_set(Elm_Navigationbar_ex_Item* item, char *btn_label, Evas_Object *icon, int button_type, Evas_Smart_Cb func, const void *data);
2231 EAPI Evas_Object *elm_navigationbar_ex_item_title_button_get(Elm_Navigationbar_ex_Item* item, int button_type);
2232 EAPI void elm_navigationbar_ex_item_title_object_set(Elm_Navigationbar_ex_Item* item, Evas_Object *title_obj);
2233 EAPI Evas_Object *elm_navigationbar_ex_item_title_object_unset(Elm_Navigationbar_ex_Item* item);
2234 EAPI void elm_navigationbar_ex_item_title_hidden_set(Elm_Navigationbar_ex_Item* item, Eina_Bool hidden);
2235 EAPI Evas_Object *elm_navigationbar_ex_item_title_object_get(Elm_Navigationbar_ex_Item* item);
2236 EAPI const char *elm_navigationbar_ex_item_subtitle_label_get(Elm_Navigationbar_ex_Item* item);
2237 EAPI void elm_navigationbar_ex_item_subtitle_label_set( Elm_Navigationbar_ex_Item* item, const char *subtitle);
2238 EAPI void elm_navigationbar_ex_item_style_set(Elm_Navigationbar_ex_Item* item, const char* item_style);
2239 EAPI const char *elm_navigationbar_ex_item_style_get(Elm_Navigationbar_ex_Item* item);
2240 EAPI Evas_Object *elm_navigationbar_ex_item_content_unset(Elm_Navigationbar_ex_Item* item);
2241 EAPI Evas_Object *elm_navigationbar_ex_item_content_get(Elm_Navigationbar_ex_Item* item);
2242 EAPI void elm_navigationbar_ex_delete_on_pop_set(Evas_Object *obj, Eina_Bool del_on_pop);
2243 EAPI Evas_Object *elm_navigationbar_ex_item_icon_get(Elm_Navigationbar_ex_Item* item);
2244 EAPI void elm_navigationbar_ex_item_icon_set(Elm_Navigationbar_ex_Item* item, Evas_Object *icon);
2245 EAPI Evas_Object *elm_navigationbar_ex_item_title_button_unset(Elm_Navigationbar_ex_Item* item, int button_type);
2246 EAPI void elm_navigationbar_ex_animation_disable_set(Evas_Object *obj, Eina_Bool disable);
2250 #define TAB_BAR_SYSTEM_ICON_CONTACT "elm/icon/tabbar_contact/default"
2251 #define TAB_BAR_SYSTEM_ICON_GROUP "elm/icon/tabbar_group/default"
2252 #define TAB_BAR_SYSTEM_ICON_SONG "elm/icon/tabbar_song/default"
2253 #define TAB_BAR_SYSTEM_ICON_FAVORITES "elm/icon/tabbar_favorites/default"
2254 #define TAB_BAR_SYSTEM_ICON_SEARCH "elm/icon/tabbar_search/default"
2255 #define TAB_BAR_SYSTEM_ICON_MESSAGE "elm/icon/tabbar_message/default"
2256 #define TAB_BAR_SYSTEM_ICON_SETTING "elm/icon/tabbar_setting/default"
2258 EINA_DEPRECATED EAPI Evas_Object *elm_tabbar_add(Evas_Object *parent);
2259 EINA_DEPRECATED EAPI Elm_Tab_Item *elm_tabbar_item_add(Evas_Object *obj, const char *icon_path, const char *label, Evas_Object *view);
2260 EINA_DEPRECATED EAPI Evas_Object *elm_tabbar_item_icon_get(Elm_Tab_Item *it);
2261 EINA_DEPRECATED EAPI const char *elm_tabbar_item_label_get(Elm_Tab_Item *it);
2262 EINA_DEPRECATED EAPI void elm_tabbar_item_label_set(Elm_Tab_Item *it, const char *label);
2263 EINA_DEPRECATED EAPI void elm_tabbar_item_select(Elm_Tab_Item *it);
2264 EINA_DEPRECATED EAPI void elm_tabbar_edit_start(Evas_Object *obj);
2265 EINA_DEPRECATED EAPI void elm_tabbar_item_visible_set(Elm_Tab_Item *it, Eina_Bool bar);
2267 /* smart callbacks called:
2268 * "clicked" - when item clicked
2272 #define CONTROLBAR_SYSTEM_ICON_ALBUMS "controlbar_albums"
2273 #define CONTROLBAR_SYSTEM_ICON_ARTISTS "controlbar_artists"
2274 #define CONTROLBAR_SYSTEM_ICON_SONGS "controlbar_songs"
2275 #define CONTROLBAR_SYSTEM_ICON_PLAYLIST "controlbar_playlist"
2276 #define CONTROLBAR_SYSTEM_ICON_MORE "controlbar_more"
2277 #define CONTROLBAR_SYSTEM_ICON_CONTACTS "controlbar_contacts"
2278 #define CONTROLBAR_SYSTEM_ICON_DIALER "controlbar_dialer"
2279 #define CONTROLBAR_SYSTEM_ICON_FAVORITES "controlbar_favorites"
2280 #define CONTROLBAR_SYSTEM_ICON_LOGS "controlbar_logs"
2282 typedef enum _Elm_Controlbar_Mode_Type
2284 ELM_CONTROLBAR_MODE_DEFAULT = 0,
2285 ELM_CONTROLBAR_MODE_TRANSLUCENCE,
2286 ELM_CONTROLBAR_MODE_TRANSPARENCY,
2287 ELM_CONTROLBAR_MODE_LARGE,
2288 ELM_CONTROLBAR_MODE_SMALL,
2289 ELM_CONTROLBAR_MODE_LEFT,
2290 ELM_CONTROLBAR_MODE_RIGHT
2291 } Elm_Controlbar_Mode_Type;
2293 typedef struct _Elm_Controlbar_Item Elm_Controlbar_Item;
2295 EAPI Evas_Object *elm_controlbar_add(Evas_Object *parent);
2296 EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_append(Evas_Object *obj, const char *icon_path, const char *label, Evas_Object *view);
2297 EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_prepend(Evas_Object *obj, const char *icon_path, const char *label, Evas_Object *view);
2298 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);
2299 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);
2300 EAPI Elm_Controlbar_Item *elm_controlbar_tool_item_append(Evas_Object *obj, const char *icon_path, const char *label, void (*func) (void *data, Evas_Object *obj, void *event_info), void *data);
2301 EAPI Elm_Controlbar_Item *elm_controlbar_tool_item_prepend(Evas_Object *obj, const char *icon_path, const char *label, void (*func) (void *data, Evas_Object *obj, void *event_info), void *data);
2302 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) (void *data, Evas_Object *obj, void *event_info), void *data);
2303 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) (void *data, Evas_Object *obj, void *event_info), void *data);
2304 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_append(Evas_Object *obj, Evas_Object *obj_item, const int sel);
2305 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_prepend(Evas_Object *obj, Evas_Object *obj_item, const int sel);
2306 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_insert_before(Evas_Object *obj, Elm_Controlbar_Item *before, Evas_Object *obj_item, const int sel);
2307 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_insert_after(Evas_Object *obj, Elm_Controlbar_Item *after, Evas_Object *obj_item, const int sel);
2308 EAPI void elm_controlbar_item_del(Elm_Controlbar_Item *it);
2309 EAPI void elm_controlbar_item_select(Elm_Controlbar_Item *it);
2310 EAPI void elm_controlbar_item_visible_set(Elm_Controlbar_Item *it, Eina_Bool bar);
2311 EAPI Eina_Bool elm_controlbar_item_visible_get(Elm_Controlbar_Item * it);
2312 EAPI void elm_controlbar_item_disable_set(Elm_Controlbar_Item * it, Eina_Bool disable);
2313 EAPI void elm_controlbar_item_icon_set(Elm_Controlbar_Item *it, const char *icon_path);
2314 EAPI Evas_Object *elm_controlbar_item_icon_get(Elm_Controlbar_Item *it);
2315 EAPI void elm_controlbar_item_label_set(Elm_Controlbar_Item *it, const char *label);
2316 EAPI const char *elm_controlbar_item_label_get(Elm_Controlbar_Item *it);
2317 EAPI Elm_Controlbar_Item *elm_controlbar_selected_item_get(Evas_Object *obj);
2318 EAPI Elm_Controlbar_Item *elm_controlbar_first_item_get(Evas_Object *obj);
2319 EAPI Elm_Controlbar_Item *elm_controlbar_last_item_get(Evas_Object *obj);
2320 EAPI Eina_List *elm_controlbar_items_get(Evas_Object *obj);
2321 EAPI Elm_Controlbar_Item *elm_controlbar_item_prev(Elm_Controlbar_Item *it);
2322 EAPI Elm_Controlbar_Item *elm_controlbar_item_next(Elm_Controlbar_Item *it);
2323 EAPI void elm_controlbar_item_view_set(Elm_Controlbar_Item *it, Evas_Object * view);
2324 EAPI Evas_Object *elm_controlbar_item_view_get(Elm_Controlbar_Item *it);
2325 EAPI void elm_controlbar_mode_set(Evas_Object *obj, int mode);
2326 EAPI void elm_controlbar_alpha_set(Evas_Object *obj, int alpha);
2327 EAPI void elm_controlbar_item_auto_align_set(Evas_Object *obj, Eina_Bool auto_align);
2328 EAPI void elm_controlbar_vertical_set(Evas_Object *obj, Eina_Bool vertical);
2329 /*======= Please don't use this APIs =======*/
2330 EAPI void elm_controlbar_edit_start(Evas_Object *obj);
2331 EAPI void elm_controlbar_item_editable_set(Elm_Controlbar_Item *it, Eina_Bool editable);
2332 EAPI void elm_controlbar_view_set(Evas_Object *obj, Evas_Object *view);
2333 EAPI void elm_controlbar_animation_set(Evas_Object *obj, void (*func) (void *data, Evas_Object *obj, void *event_info), void *data);
2334 EAPI void elm_controlbar_item_animation_set(Evas_Object *obj, Eina_Bool auto_animation, Eina_Bool selected_animation);
2335 EAPI void elm_controlbar_view_animation_set(Evas_Object *obj, const char *hide, const char *show);
2336 /*======= Just for test =======*/
2339 /* diskcontroller */
2340 typedef struct _Elm_Diskcontroller_Item Elm_Diskcontroller_Item;
2342 EAPI Evas_Object *elm_diskcontroller_add(Evas_Object *parent);
2343 EAPI void elm_diskcontroller_round_set(Evas_Object *obj, Eina_Bool round);
2344 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);
2345 EAPI void elm_diskcontroller_item_del(Elm_Diskcontroller_Item *it);
2346 EAPI const char *elm_diskcontroller_item_label_get(Elm_Diskcontroller_Item *it);
2347 EAPI void elm_diskcontroller_item_label_set(Elm_Diskcontroller_Item *it, const char *label);
2348 EAPI void elm_diskcontroller_item_focus_set(Elm_Diskcontroller_Item *it);
2349 /* smart callbacks called:
2350 * "stop" - when scroller stop
2354 EAPI Evas_Object *elm_searchbar_add(Evas_Object *parent);
2355 EAPI void elm_searchbar_text_set(Evas_Object *obj, const char *entry);
2356 EAPI const char *elm_searchbar_text_get(Evas_Object *obj);
2357 EAPI Evas_Object *elm_searchbar_entry_get(Evas_Object *obj);
2358 EAPI void elm_searchbar_cancel_button_animation_set(Evas_Object *obj, Eina_Bool cancel_btn_ani_flag);
2359 EAPI void elm_searchbar_cancel_button_set(Evas_Object *obj, Eina_Bool visible);
2360 EAPI void elm_searchbar_clear(Evas_Object *obj);
2361 EAPI void elm_searchbar_boundary_rect_set(Evas_Object *obj, Eina_Bool boundary);
2364 typedef enum _Elm_Actionsheet_Button_Type
2366 ELM_ACTIONSHEET_BT_NORMAL = 0,
2367 ELM_ACTIONSHEET_BT_CANCEL,
2368 ELM_ACTIONSHEET_BT_DESTRUCTIVE
2369 } Elm_Actionsheet_Button_Type;
2371 EINA_DEPRECATED EAPI Evas_Object *elm_actionsheet_add(Evas_Object *parent);
2372 EINA_DEPRECATED EAPI void elm_actionsheet_title_set(Evas_Object *obj, const char *title);
2373 EINA_DEPRECATED 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);
2374 EINA_DEPRECATED EAPI int elm_actionsheet_button_title_get(Evas_Object *obj, const int index, char **title);
2377 EINA_DEPRECATED EAPI Evas_Object *elm_colorpicker_add(Evas_Object *parent);
2378 EINA_DEPRECATED EAPI void elm_colorpicker_color_set(Evas_Object *obj, int r, int g , int b);
2379 EINA_DEPRECATED EAPI void elm_colorpicker_color_get(Evas_Object *obj, int *r, int *g , int *b);
2380 /* smart callbacks called:
2381 * "changed" - when color is changed
2385 EAPI Evas_Object *elm_colorselector_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2386 EAPI void elm_colorselector_color_set(Evas_Object *obj, int r, int g , int b, int a) EINA_ARG_NONNULL(1);
2387 EAPI void elm_colorselector_color_get(const Evas_Object *obj, int *r, int *g , int *b, int *a) EINA_ARG_NONNULL(1);
2388 /* smart callbacks called:
2389 * "changed" - when the color value changes
2393 typedef struct _Colorpalette_Color Elm_Colorpalette_Color;
2395 struct _Colorpalette_Color
2397 unsigned int r, g, b;
2400 EAPI Evas_Object *elm_colorpalette_add(Evas_Object *parent);
2401 EAPI void elm_colorpalette_color_set(Evas_Object *obj, int color_num, Elm_Colorpalette_Color *color);
2402 EAPI void elm_colorpalette_row_column_set(Evas_Object *obj, int row, int col);
2403 /* smart callbacks called:
2404 * "clicked" - when image clicked
2408 EAPI Evas_Object *elm_editfield_add(Evas_Object *parent);
2409 EAPI void elm_editfield_label_set(Evas_Object *obj, const char *label);
2410 EAPI const char *elm_editfield_label_get(Evas_Object *obj);
2411 EAPI void elm_editfield_guide_text_set(Evas_Object *obj, const char *text);
2412 EAPI const char *elm_editfield_guide_text_get(Evas_Object *obj);
2413 EAPI Evas_Object *elm_editfield_entry_get(Evas_Object *obj);
2414 // EAPI Evas_Object *elm_editfield_clear_button_show(Evas_Object *obj, Eina_Bool show);
2415 EAPI void elm_editfield_right_icon_set(Evas_Object *obj, Evas_Object *icon);
2416 EAPI Evas_Object *elm_editfield_right_icon_get(Evas_Object *obj);
2417 EAPI void elm_editfield_left_icon_set(Evas_Object *obj, Evas_Object *icon);
2418 EAPI Evas_Object *elm_editfield_left_icon_get(Evas_Object *obj);
2419 EAPI void elm_editfield_entry_single_line_set(Evas_Object *obj, Eina_Bool single_line);
2420 EAPI Eina_Bool elm_editfield_entry_single_line_get(Evas_Object *obj);
2421 EAPI void elm_editfield_eraser_set(Evas_Object *obj, Eina_Bool visible);
2422 EAPI Eina_Bool elm_editfield_eraser_get(Evas_Object *obj);
2423 /* smart callbacks called:
2424 * "clicked" - when an editfield is clicked
2425 * "unfocused" - when an editfield is unfocused
2438 typedef struct _Elm_Softkey_Item Elm_Softkey_Item;
2439 EINA_DEPRECATED EAPI Evas_Object *elm_softkey_add(Evas_Object *parent);
2440 EINA_DEPRECATED 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);
2441 EINA_DEPRECATED EAPI void elm_softkey_button_del(Evas_Object *obj, Elm_Softkey_Type type);
2442 EINA_DEPRECATED EAPI void elm_softkey_button_show(Evas_Object *obj, Elm_Softkey_Type type);
2443 EINA_DEPRECATED EAPI void elm_softkey_button_hide(Evas_Object *obj, Elm_Softkey_Type type);
2445 EINA_DEPRECATED 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);
2446 EINA_DEPRECATED EAPI int elm_softkey_panel_del(Evas_Object *obj);
2447 EINA_DEPRECATED EAPI int elm_softkey_panel_close(Evas_Object *obj);
2448 EINA_DEPRECATED EAPI int elm_softkey_panel_open(Evas_Object *obj);
2450 EINA_DEPRECATED EAPI void elm_softkey_item_icon_set(Elm_Softkey_Item *item, Evas_Object *icon);
2451 EINA_DEPRECATED EAPI Evas_Object *elm_softkey_item_icon_get(Elm_Softkey_Item * item);
2452 EINA_DEPRECATED EAPI void elm_softkey_item_label_set(Elm_Softkey_Item *item, const char *label);
2453 EINA_DEPRECATED EAPI const char *elm_softkey_item_label_get(Elm_Softkey_Item * item);
2454 EINA_DEPRECATED EAPI Eina_Bool elm_softkey_item_disabled_get(Elm_Softkey_Item *item);
2455 EINA_DEPRECATED EAPI void elm_softkey_item_disabled_set(Elm_Softkey_Item *item, Eina_Bool disabled);
2456 EINA_DEPRECATED EAPI void elm_softkey_item_callback_set(Elm_Softkey_Item* item, void (*func)(void *data, Evas_Object *obj, void *event_info), const void *data );
2457 /* smart callback called:
2458 * "clicked" - the user clicked the button, event_info: Softkey item
2459 * "press" - the user press the button, event_info: Softkey item
2460 * "panel,show" - when the panel is shown
2461 * "panel,hide" - when the panel is hidden
2465 EINA_DEPRECATED EAPI Evas_Object *elm_gridbox_add(Evas_Object *parent);
2466 EINA_DEPRECATED EAPI void elm_gridbox_padding_set(Evas_Object *obj, Evas_Coord horizontal, Evas_Coord vertical);
2467 EINA_DEPRECATED EAPI void elm_gridbox_item_size_set(Evas_Object *obj, Evas_Coord h_itemsize, Evas_Coord v_itemsize);
2468 EINA_DEPRECATED EAPI void elm_gridbox_pack(Evas_Object *obj, Evas_Object *subobj);
2469 EINA_DEPRECATED EAPI Eina_Bool elm_gridbox_unpack(Evas_Object *obj, Evas_Object *subobj);
2470 EINA_DEPRECATED EAPI Eina_List *elm_gridbox_children_get(Evas_Object *obj);
2471 EINA_DEPRECATED EAPI void elm_gridbox_homogenous_padding_set(Evas_Object *obj, Eina_Bool homogenous);
2474 typedef enum _Elm_Actionslider_Indicator_Pos
2476 ELM_ACTIONSLIDER_INDICATOR_LEFT,
2477 ELM_ACTIONSLIDER_INDICATOR_RIGHT,
2478 ELM_ACTIONSLIDER_INDICATOR_CENTER
2479 } Elm_Actionslider_Indicator_Pos;
2481 typedef enum _Elm_Actionslider_Magnet_Pos
2483 ELM_ACTIONSLIDER_MAGNET_LEFT,
2484 ELM_ACTIONSLIDER_MAGNET_RIGHT,
2485 ELM_ACTIONSLIDER_MAGNET_BOTH,
2486 ELM_ACTIONSLIDER_MAGNET_CENTER
2487 } Elm_Actionslider_Magnet_Pos;
2489 typedef enum _Elm_Actionslider_Label_Pos
2491 ELM_ACTIONSLIDER_LABEL_LEFT,
2492 ELM_ACTIONSLIDER_LABEL_RIGHT,
2493 ELM_ACTIONSLIDER_LABEL_CENTER,
2494 ELM_ACTIONSLIDER_LABEL_BUTTON
2495 } Elm_Actionslider_Label_Pos;
2497 EAPI Evas_Object *elm_actionslider_add(Evas_Object *parent);
2498 EAPI void elm_actionslider_indicator_pos_set(Evas_Object *obj, Elm_Actionslider_Indicator_Pos pos);
2499 EAPI void elm_actionslider_magnet_pos_set(Evas_Object *obj, Elm_Actionslider_Magnet_Pos pos);
2500 EAPI void elm_actionslider_label_set(Evas_Object *obj, Elm_Actionslider_Label_Pos pos, const char *label);
2501 EAPI void elm_actionslider_hold(Evas_Object *obj, Eina_Bool flag);
2502 /* smart callbacks called:
2503 * "indicator,position" - when a button reaches to the special position like "left", "right" and "center".
2507 struct _Elm_Gallery_Item
2509 Evas_Object *parent;
2514 Evas_Coord x, y, w, h;
2516 Eina_Bool on_hold : 1;
2517 Eina_Bool on_show : 1;
2518 Eina_Bool on_highquality : 1;
2520 typedef struct _Elm_Gallery_Item Elm_Gallery_Item;
2521 EINA_DEPRECATED EAPI Evas_Object *elm_gallery_add(Evas_Object *parent);
2522 EINA_DEPRECATED EAPI Eina_Bool elm_gallery_data_set(Evas_Object *obj, Eina_List *list);
2523 EINA_DEPRECATED EAPI Elm_Gallery_Item *elm_gallery_item_append(Evas_Object *obj, const char *photo_file);
2524 EINA_DEPRECATED EAPI Elm_Gallery_Item *elm_gallery_item_prepend(Evas_Object *obj, const char *photo_file);
2525 EINA_DEPRECATED EAPI void elm_gallery_item_del(Elm_Gallery_Item *it);
2526 EINA_DEPRECATED EAPI const char *elm_gallery_item_file_get(Elm_Gallery_Item *it);
2527 EINA_DEPRECATED EAPI void elm_gallery_item_show(Elm_Gallery_Item *it);
2528 EINA_DEPRECATED EAPI Eina_List *elm_gallery_item_list_get(Evas_Object *obj);
2529 EINA_DEPRECATED EAPI void elm_gallery_set_type(Evas_Object *obj,int type);
2530 EINA_DEPRECATED EAPI void elm_gallery_set_max_count(Evas_Object *obj,int max_value);
2532 /* Sliding Drawer */
2533 typedef enum _Elm_SlidingDrawer_Pos
2535 ELM_SLIDINGDRAWER_BOTTOM,
2536 ELM_SLIDINGDRAWER_LEFT,
2537 ELM_SLIDINGDRAWER_RIGHT,
2538 ELM_SLIDINGDRAWER_TOP
2539 } Elm_SlidingDrawer_Pos;
2541 typedef struct _Elm_SlidingDrawer_Drag_Value
2544 } Elm_SlidingDrawer_Drag_Value;
2546 EAPI Evas_Object *elm_slidingdrawer_add(Evas_Object *parent);
2547 EAPI void elm_slidingdrawer_content_set (Evas_Object *obj, Evas_Object *content);
2548 EAPI Evas_Object *elm_slidingdrawer_content_unset(Evas_Object *obj);
2549 EAPI void elm_slidingdrawer_pos_set(Evas_Object *obj, Elm_SlidingDrawer_Pos pos);
2550 EAPI void elm_slidingdrawer_max_drag_value_set(Evas_Object *obj, double dw, double dh);
2551 EAPI void elm_slidingdrawer_drag_value_set(Evas_Object *obj, double dx, double dy);
2553 /* multibuttonentry */
2554 typedef struct _Multibuttonentry_Item Elm_Multibuttonentry_Item;
2555 EAPI Evas_Object *elm_multibuttonentry_add(Evas_Object *parent);
2556 EAPI const char *elm_multibuttonentry_label_get(Evas_Object *obj);
2557 EAPI void elm_multibuttonentry_label_set(Evas_Object *obj, const char *label);
2558 EAPI Evas_Object *elm_multibuttonentry_entry_get(Evas_Object *obj);
2559 EAPI const char * elm_multibuttonentry_guide_text_get(Evas_Object *obj);
2560 EAPI void elm_multibuttonentry_guide_text_set(Evas_Object *obj, const char *guidetext);
2561 EAPI int elm_multibuttonentry_contracted_state_get(Evas_Object *obj);
2562 EAPI void elm_multibuttonentry_contracted_state_set(Evas_Object *obj, int contracted);
2563 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_start(Evas_Object *obj, const char *label, void *data);
2564 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_end(Evas_Object *obj, const char *label, void *data);
2565 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_before(Evas_Object *obj, const char *label, Elm_Multibuttonentry_Item *before, void *data);
2566 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_after(Evas_Object *obj, const char *label, Elm_Multibuttonentry_Item *after, void *data);
2567 EAPI const Eina_List *elm_multibuttonentry_items_get(Evas_Object *obj);
2568 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_first_get(Evas_Object *obj);
2569 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_last_get(Evas_Object *obj);
2570 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_selected_get(Evas_Object *obj);
2571 EAPI void elm_multibuttonentry_item_selected_set(Elm_Multibuttonentry_Item *item);
2572 EAPI void elm_multibuttonentry_item_unselect_all(Evas_Object *obj);
2573 EAPI void elm_multibuttonentry_item_del(Elm_Multibuttonentry_Item *item);
2574 EAPI void elm_multibuttonentry_items_del(Evas_Object *obj);
2575 EAPI const char *elm_multibuttonentry_item_label_get(Elm_Multibuttonentry_Item *item);
2576 EAPI void elm_multibuttonentry_item_label_set(Elm_Multibuttonentry_Item *item, const char *str);
2577 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_prev(Elm_Multibuttonentry_Item *item);
2578 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_next(Elm_Multibuttonentry_Item *item);
2579 EAPI void *elm_multibuttonentry_item_data_get(Elm_Multibuttonentry_Item *item);
2580 EAPI void elm_multibuttonentry_item_data_set(Elm_Multibuttonentry_Item *item, void *data);
2581 /* smart callback called:
2582 * "selected" - This signal is emitted when the selected item of multibuttonentry is changed.
2583 * "added" - This signal is emitted when a new multibuttonentry item is added.
2584 * "deleted" - This signal is emitted when a multibuttonentry item is deleted.
2585 * "expanded" - This signal is emitted when a multibuttonentry is expanded.
2586 * "contracted" - This signal is emitted when a multibuttonentry is contracted.
2587 * "contracted,state,changed" - This signal is emitted when the contracted state of multibuttonentry is changed.
2589 /* available styles:
2594 typedef struct _Stackedicon_Item Elm_Stackedicon_Item;
2595 EAPI Evas_Object *elm_stackedicon_add(Evas_Object *parent);
2596 EAPI Elm_Stackedicon_Item *elm_stackedicon_item_append(Evas_Object *obj, const char *path);
2597 EAPI Elm_Stackedicon_Item *elm_stackedicon_item_prepend(Evas_Object *obj, const char *path);
2598 EAPI void elm_stackedicon_item_del(Elm_Stackedicon_Item *it);
2599 EAPI Eina_List *elm_stackedicon_item_list_get(Evas_Object *obj);
2600 /* smart callback called:
2601 * "expanded" - This signal is emitted when a stackedicon is expanded.
2602 * "clicked" - This signal is emitted when a stackedicon is clicked.
2604 /* available styles:
2609 typedef struct _Dialogue_Item Dialogue_Item;
2611 typedef enum _Elm_Dialoguegourp_Item_Style
2613 ELM_DIALOGUEGROUP_ITEM_STYLE_DEFAULT = 0,
2614 ELM_DIALOGUEGROUP_ITEM_STYLE_EDITFIELD = (1 << 0),
2615 ELM_DIALOGUEGROUP_ITEM_STYLE_EDITFIELD_WITH_TITLE = (1 << 1),
2616 ELM_DIALOGUEGROUP_ITEM_STYLE_EDIT_TITLE = (1 << 2),
2617 ELM_DIALOGUEGROUP_ITEM_STYLE_HIDDEN = (1 << 3),
2618 ELM_DIALOGUEGROUP_ITEM_STYLE_DATAVIEW = (1 << 4),
2619 ELM_DIALOGUEGROUP_ITEM_STYLE_NO_BG = (1 << 5),
2620 ELM_DIALOGUEGROUP_ITEM_STYLE_SUB = (1 << 6),
2621 ELM_DIALOGUEGROUP_ITEM_STYLE_LAST = (1 << 7)
2622 } Elm_Dialoguegroup_Item_Style;
2624 EAPI Evas_Object *elm_dialoguegroup_add(Evas_Object *parent);
2625 EAPI Dialogue_Item *elm_dialoguegroup_append(Evas_Object *obj, Evas_Object *subobj, Elm_Dialoguegroup_Item_Style style);
2626 EAPI Dialogue_Item *elm_dialoguegroup_prepend(Evas_Object *obj, Evas_Object *subobj, Elm_Dialoguegroup_Item_Style style);
2627 EAPI Dialogue_Item *elm_dialoguegroup_insert_after(Evas_Object *obj, Evas_Object *subobj, Dialogue_Item *after, Elm_Dialoguegroup_Item_Style style);
2628 EAPI Dialogue_Item *elm_dialoguegroup_insert_before(Evas_Object *obj, Evas_Object *subobj, Dialogue_Item *before, Elm_Dialoguegroup_Item_Style style);
2629 EAPI void elm_dialoguegroup_remove(Dialogue_Item *item);
2630 EAPI void elm_dialoguegroup_remove_all(Evas_Object *obj);
2631 EAPI void elm_dialoguegroup_title_set(Evas_Object *obj, const char *title);
2632 EAPI const char *elm_dialoguegroup_title_get(Evas_Object *obj);
2633 EAPI void elm_dialoguegroup_press_effect_set(Dialogue_Item *item, Eina_Bool press);
2634 EAPI Eina_Bool elm_dialoguegroup_press_effect_get(Dialogue_Item *item);
2635 EAPI Evas_Object *elm_dialoguegroup_item_content_get(Dialogue_Item *item);
2636 EAPI void elm_dialoguegroup_item_style_set(Dialogue_Item *item, Elm_Dialoguegroup_Item_Style style);
2637 EAPI Elm_Dialoguegroup_Item_Style elm_dialoguegroup_item_style_get(Dialogue_Item *item);
2638 EAPI void elm_dialoguegroup_item_disabled_set(Dialogue_Item *item, Eina_Bool disabled);
2639 EAPI Eina_Bool elm_dialoguegroup_item_disabled_get(Dialogue_Item *item);
2641 /* AutoCompleteView */
2642 typedef Eina_Bool (*elmautocompleteview_matchfunction) (Evas_Object *obj, char *text, Evas_Object *list, void *data);
2643 EAPI Evas_Object *elm_autocompleteview_add(Evas_Object *parent);
2644 EAPI Evas_Object *elm_autocompleteview_entry_get(Evas_Object *obj);
2645 EAPI Evas_Object *elm_autocompleteview_editfield_get(Evas_Object *obj);
2646 EAPI void elm_autocompleteview_threshold_set(Evas_Object *obj, int threshold);
2647 EAPI int elm_autocompleteview_threshold_get(Evas_Object *obj);
2648 EAPI void elm_autocompleteview_data_set(Evas_Object *obj, Eina_List *data_list);
2649 EAPI void elm_autocompleteview_match_func_set(Evas_Object *obj, elmautocompleteview_matchfunction func, void *data);
2650 EAPI void elm_autocompleteview_text_update(Evas_Object *obj, char *text);
2655 ELM_DAYSELECTOR_SUN,
2656 ELM_DAYSELECTOR_MON,
2657 ELM_DAYSELECTOR_TUE,
2658 ELM_DAYSELECTOR_WED,
2659 ELM_DAYSELECTOR_THU,
2660 ELM_DAYSELECTOR_FRI,
2662 } Elm_DaySelector_Day;
2664 EAPI Evas_Object *elm_dayselector_add(Evas_Object *parent);
2665 EAPI Eina_Bool elm_dayselector_check_state_get(Evas_Object *obj, Elm_DaySelector_Day day);
2666 EAPI void elm_dayselector_check_state_set(Evas_Object *obj, Elm_DaySelector_Day day, Eina_Bool checked);
2669 EAPI Evas_Object *elm_nocontents_add(Evas_Object *parent);
2670 EAPI void elm_nocontents_label_set(Evas_Object *obj, const char *label);
2671 EAPI const char *elm_nocontents_label_get(const Evas_Object *obj);
2672 EAPI void elm_nocontents_custom_set(const Evas_Object *obj, Evas_Object *custom);
2673 EAPI Evas_Object *elm_nocontents_custom_get(const Evas_Object *obj);
2678 ELM_TICKERNOTI_DEFAULT,
2679 ELM_TICKERNOTI_DETAILVIEW
2680 } Elm_Tickernoti_Mode;
2682 EAPI Evas_Object *elm_tickernoti_add (Evas_Object *parent);
2683 EAPI void elm_tickernoti_icon_set (const Evas_Object *obj, Evas_Object *icon);
2684 EAPI Evas_Object *elm_tickernoti_icon_get (const Evas_Object *obj);
2685 EAPI void elm_tickernoti_label_set (Evas_Object *obj, const char *label);
2686 EAPI const char *elm_tickernoti_label_get (const Evas_Object *obj);
2687 EAPI void elm_tickernoti_detailview_label_set (Evas_Object *obj, const char *label);
2688 EAPI const char *elm_tickernoti_detailview_label_get (const Evas_Object *obj);
2689 EAPI void elm_tickernoti_detailview_button_set (const Evas_Object *obj, Evas_Object *button);
2690 EAPI Evas_Object *elm_tickernoti_detailview_button_get (const Evas_Object *obj);
2691 EAPI void elm_tickernoti_detailview_icon_set (const Evas_Object *obj, Evas_Object *icon);
2692 EAPI Evas_Object *elm_tickernoti_detailview_icon_get (const Evas_Object *obj);
2693 EAPI Evas_Object *elm_tickernoti_detailview_get (const Evas_Object *obj);
2694 EAPI int elm_tickernoti_rotation_get (const Evas_Object *obj);
2695 EAPI void elm_tickernoti_rotation_set (const Evas_Object *obj, int angle);
2696 EAPI void elm_tickernoti_mode_set (const Evas_Object *obj, Elm_Tickernoti_Mode mode);
2697 EAPI Elm_Tickernoti_Mode elm_tickernoti_mode_get (const Evas_Object *obj);
2700 typedef struct _Imageslider_Item Elm_Imageslider_Item;
2701 typedef void (*Elm_Imageslider_Cb)(void *data, Evas_Object *obj, void *event_info);
2702 EAPI Evas_Object *elm_imageslider_add(Evas_Object *parent);
2703 EAPI Elm_Imageslider_Item *elm_imageslider_item_append(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, void *data);
2704 EAPI Elm_Imageslider_Item *elm_imageslider_item_append_relative(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, unsigned int index, void *data);
2705 EAPI Elm_Imageslider_Item *elm_imageslider_item_prepend(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, void *data);
2706 EAPI void elm_imageslider_item_del(Elm_Imageslider_Item *it);
2707 EAPI Elm_Imageslider_Item *elm_imageslider_selected_item_get(Evas_Object *obj);
2708 EAPI Eina_Bool elm_imageslider_item_selected_get(Elm_Imageslider_Item *it);
2709 EAPI void elm_imageslider_item_selected_set(Elm_Imageslider_Item *it);
2710 EAPI const char *elm_imageslider_item_photo_file_get(Elm_Imageslider_Item *it);
2711 EAPI Elm_Imageslider_Item *elm_imageslider_item_prev(Elm_Imageslider_Item *it);
2712 EAPI Elm_Imageslider_Item *elm_imageslider_item_next(Elm_Imageslider_Item *it);
2713 EAPI void elm_imageslider_prev(Evas_Object *obj);
2714 EAPI void elm_imageslider_next(Evas_Object *obj);
2716 /* Selection Info */
2717 EAPI Evas_Object *elm_selectioninfo_add(Evas_Object *parent);
2718 EAPI void elm_selectioninfo_content_set(Evas_Object *obj, Evas_Object *content);
2719 EAPI void elm_selectioninfo_parent_set(Evas_Object *obj, Evas_Object *parent);
2720 EAPI void elm_selectioninfo_timeout_set(Evas_Object *obj, int timeout);
2721 EAPI void elm_selectioninfo_timer_init(Evas_Object *obj);
2722 EAPI void elm_selectioninfo_check_state_set(Evas_Object *obj, Eina_Bool *state, int count);
2723 EAPI int elm_selectioninfo_checked_count_get(Evas_Object *obj);
2724 EAPI void elm_selectioninfo_label_set(Evas_Object *obj, char* text);
2726 /* smart callback called:
2727 * "selectioninfo,timeout" - when time out
2728 * "selectioninfo,show" - when selectioninfo show
2729 * "selectioninfo,hide" - when selectioninfo hide
2733 typedef struct _Elm_Xml_Animator Elm_Xml_Animator;
2735 EINA_DEPRECATED EAPI Elm_Xml_Animator *elm_xml_animator_add(Evas_Object *obj);
2736 EINA_DEPRECATED EAPI Eina_Bool elm_xml_animator_file_set(Elm_Xml_Animator *xa, const char *file);
2737 EINA_DEPRECATED EAPI Eina_Bool elm_xml_animator_object_add(Elm_Xml_Animator *xa, Evas_Object *obj, const char *title, void (*end_func)(void *data, Evas_Object *obj), void *data);
2738 EINA_DEPRECATED EAPI void elm_xml_animator_object_del(Elm_Xml_Animator *xa, Evas_Object *obj);
2739 EINA_DEPRECATED EAPI void elm_xml_animator_del(Elm_Xml_Animator *xa);
2740 EINA_DEPRECATED EAPI void elm_xml_animator_run(Elm_Xml_Animator *xa);