3 * vim:ts=8:sw=3:sts=3:expandtab:cino=>5n-2f0^-2{2(0W1st0
10 * @brief Elementary's API
15 @ELM_UNIX_DEF@ ELM_UNIX
16 @ELM_WIN32_DEF@ ELM_WIN32
17 @ELM_WINCE_DEF@ ELM_WINCE
18 @ELM_EDBUS_DEF@ ELM_EDBUS
19 @ELM_EFREET_DEF@ ELM_EFREET
20 @ELM_ETHUMB_DEF@ ELM_ETHUMB
21 @ELM_DEBUG_DEF@ ELM_DEBUG
22 @ELM_ALLOCA_H_DEF@ ELM_ALLOCA_H
23 @ELM_LIBINTL_H_DEF@ ELM_LIBINTL_H
25 /* Standard headers for standard system calls etc. */
30 #include <sys/types.h>
33 #include <sys/param.h>
58 #if defined (ELM_WIN32) || defined (ELM_WINCE)
61 # define alloca _alloca
71 #include <Ecore_Evas.h>
72 #include <Ecore_File.h>
73 #include <Ecore_IMF.h>
83 # include <Efreet_Mime.h>
84 # include <Efreet_Trash.h>
88 # include <Ethumb_Client.h>
96 # ifdef ELEMENTARY_BUILD
98 # define EAPI __declspec(dllexport)
101 # endif /* ! DLL_EXPORT */
103 # define EAPI __declspec(dllimport)
104 # endif /* ! EFL_EVAS_BUILD */
108 # define EAPI __attribute__ ((visibility("default")))
115 #endif /* ! _WIN32 */
118 /* allow usage from c++ */
123 #define ELM_VERSION_MAJOR @VMAJ@
124 #define ELM_VERSION_MINOR @VMIN@
126 typedef struct _Elm_Version
134 EAPI extern Elm_Version *elm_version;
137 #define ELM_RECTS_INTERSECT(x, y, w, h, xx, yy, ww, hh) (((x) < ((xx) + (ww))) && ((y) < ((yy) + (hh))) && (((x) + (w)) > (xx)) && (((y) + (h)) > (yy)))
138 #define ELM_PI 3.14159265358979323846
141 * Defines couple of standard Evas_Object layers to be used
142 * with evas_object_layer_set().
144 * @note whenever extending with new values, try to keep some padding
145 * to siblings so there is room for further extensions.
147 typedef enum _Elm_Object_Layer
149 ELM_OBJECT_LAYER_BACKGROUND = EVAS_LAYER_MIN + 64, /**< where to place backgrounds */
150 ELM_OBJECT_LAYER_DEFAULT = 0, /**< Evas_Object default layer (and thus for Elementary) */
151 ELM_OBJECT_LAYER_FOCUS = EVAS_LAYER_MAX - 128, /**< where focus object visualization is */
152 ELM_OBJECT_LAYER_TOOLTIP = EVAS_LAYER_MAX - 64, /**< where to show tooltips */
153 ELM_OBJECT_LAYER_CURSOR = EVAS_LAYER_MAX - 32, /**< where to show cursors */
154 ELM_OBJECT_LAYER_LAST /**< last layer known by Elementary */
157 /**************************************************************************/
158 EAPI extern int ELM_ECORE_EVENT_ETHUMB_CONNECT;
162 * Emitted when policy value changed.
164 EAPI extern int ELM_EVENT_POLICY_CHANGED;
165 typedef struct _Elm_Event_Policy_Changed
170 } Elm_Event_Policy_Changed;
173 * Policy identifiers.
175 * @see elm_policy_set()
177 typedef enum _Elm_Policy
179 ELM_POLICY_QUIT, /**< when should quit application automatically.
180 * @see Elm_Policy_Quit.
185 typedef enum _Elm_Policy_Quit
187 ELM_POLICY_QUIT_NONE = 0, /**< never quit application automatically */
188 ELM_POLICY_QUIT_LAST_WINDOW_CLOSED /**< quit when last window is closed */
191 typedef enum _Elm_Focus_Direction
195 } Elm_Focus_Direction;
197 typedef enum _Elm_Text_Format
199 ELM_TEXT_FORMAT_PLAIN_UTF8,
200 ELM_TEXT_FORMAT_MARKUP_UTF8
204 * Called back when a widget's tooltip is activated and needs content.
205 * @param data user-data given to elm_object_tooltip_content_cb_set()
206 * @param obj owner widget.
208 typedef Evas_Object *(*Elm_Tooltip_Content_Cb) (void *data, Evas_Object *obj);
211 * Called back when a widget's item tooltip is activated and needs content.
212 * @param data user-data given to elm_object_tooltip_content_cb_set()
213 * @param obj owner widget.
214 * @param item context dependent item. As an example, if tooltip was
215 * set on Elm_List_Item, then it is of this type.
217 typedef Evas_Object *(*Elm_Tooltip_Item_Content_Cb) (void *data, Evas_Object *obj, void *item);
219 typedef Eina_Bool (*Elm_Event_Cb) (void *data, Evas_Object *obj, Evas_Object *src, Evas_Callback_Type type, void *event_info);
221 #ifndef ELM_LIB_QUICKLAUNCH
222 #define ELM_MAIN() int main(int argc, char **argv) {elm_init(argc, argv); return elm_main(argc, argv);}
224 #define ELM_MAIN() int main(int argc, char **argv) {return elm_quicklaunch_fallback(argc, argv);}
227 /**************************************************************************/
229 EAPI int elm_init(int argc, char **argv);
230 EAPI int elm_shutdown(void);
231 EAPI void elm_run(void);
232 EAPI void elm_exit(void);
234 EAPI void elm_quicklaunch_mode_set(Eina_Bool ql_on);
235 EAPI Eina_Bool elm_quicklaunch_mode_get(void);
236 EAPI int elm_quicklaunch_init(int argc, char **argv);
237 EAPI int elm_quicklaunch_sub_init(int argc, char **argv);
238 EAPI int elm_quicklaunch_sub_shutdown(void);
239 EAPI int elm_quicklaunch_shutdown(void);
240 EAPI void elm_quicklaunch_seed(void);
241 EAPI Eina_Bool elm_quicklaunch_prepare(int argc, char **argv);
242 EAPI Eina_Bool elm_quicklaunch_fork(int argc, char **argv, char *cwd, void (postfork_func) (void *data), void *postfork_data);
243 EAPI void elm_quicklaunch_cleanup(void);
244 EAPI int elm_quicklaunch_fallback(int argc, char **argv);
245 EAPI char *elm_quicklaunch_exe_path_get(const char *exe);
247 EAPI Eina_Bool elm_need_efreet(void);
248 EAPI Eina_Bool elm_need_e_dbus(void);
249 EAPI Eina_Bool elm_need_ethumb(void);
251 EAPI Eina_Bool elm_policy_set(unsigned int policy, int value);
252 EAPI int elm_policy_get(unsigned int policy);
254 EAPI void elm_all_flush(void);
255 EAPI int elm_cache_flush_interval_get(void);
256 EAPI void elm_cache_flush_interval_set(int size);
257 EAPI void elm_cache_flush_interval_all_set(int size);
258 EAPI Eina_Bool elm_cache_flush_enmabled_get(void);
259 EAPI void elm_cache_flush_enabled_set(Eina_Bool enabled);
260 EAPI void elm_cache_flush_enabled_all_set(Eina_Bool enabled);
261 EAPI int elm_font_cache_get(void);
262 EAPI void elm_font_cache_set(int size);
263 EAPI void elm_font_cache_all_set(int size);
264 EAPI int elm_image_cache_get(void);
265 EAPI void elm_image_cache_set(int size);
266 EAPI void elm_image_cache_all_set(int size);
267 EAPI int elm_edje_file_cache_get(void);
268 EAPI void elm_edje_file_cache_set(int size);
269 EAPI void elm_edje_file_cache_all_set(int size);
270 EAPI int elm_edje_collection_cache_get(void);
271 EAPI void elm_edje_collection_cache_set(int size);
272 EAPI void elm_edje_collection_cache_all_set(int size);
274 EAPI void elm_object_scale_set(Evas_Object *obj, double scale) EINA_ARG_NONNULL(1);
275 EAPI double elm_object_scale_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
276 EAPI void elm_object_style_set(Evas_Object *obj, const char *style) EINA_ARG_NONNULL(1);
277 EAPI const char *elm_object_style_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
278 EAPI void elm_object_disabled_set(Evas_Object *obj, Eina_Bool disabled) EINA_ARG_NONNULL(1);
279 EAPI Eina_Bool elm_object_disabled_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
281 EAPI Eina_Bool elm_object_widget_check(const Evas_Object *obj) EINA_ARG_NONNULL(1);
282 EAPI Evas_Object *elm_object_parent_widget_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
283 EAPI Evas_Object *elm_object_top_widget_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
284 EAPI const char *elm_object_widget_type_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
286 EAPI double elm_scale_get(void);
287 EAPI void elm_scale_set(double scale);
288 EAPI void elm_scale_all_set(double scale);
290 EAPI Eina_Bool elm_config_save(void);
291 EAPI void elm_config_reload(void);
293 EAPI const char *elm_profile_current_get(void);
294 EAPI const char *elm_profile_dir_get(const char *profile, Eina_Bool is_user);
295 EAPI void elm_profile_dir_free(const char *p_dir);
296 EAPI Eina_List *elm_profile_list_get(void);
297 EAPI void elm_profile_list_free(Eina_List *l);
298 EAPI void elm_profile_set(const char *profile);
299 EAPI void elm_profile_all_set(const char *profile);
301 EAPI const char *elm_engine_current_get(void);
302 EAPI void elm_engine_set(const char *engine);
304 typedef struct _Elm_Text_Class
310 typedef struct _Elm_Font_Overlay
312 const char *text_class;
317 typedef struct _Elm_Font_Properties
321 } Elm_Font_Properties;
323 EAPI const Eina_List *elm_text_classes_list_get(void);
324 EAPI void elm_text_classes_list_free(const Eina_List *list);
326 EAPI const Eina_List *elm_font_overlay_list_get(void);
327 EAPI void elm_font_overlay_set(const char *text_class, const char *font, Evas_Font_Size size);
328 EAPI void elm_font_overlay_unset(const char *text_class);
329 EAPI void elm_font_overlay_apply();
330 EAPI void elm_font_overlay_all_apply();
332 EAPI Elm_Font_Properties *elm_font_properties_get(const char *font) EINA_ARG_NONNULL(1);
333 EAPI void elm_font_properties_free(Elm_Font_Properties *efp) EINA_ARG_NONNULL(1);
334 EAPI const char *elm_font_fontconfig_name_get(const char *name, const char *style) EINA_ARG_NONNULL(1);
335 EAPI void elm_font_fontconfig_name_free(const char *name) EINA_ARG_NONNULL(1);
336 EAPI Eina_Hash *elm_font_available_hash_add(Eina_List *list);
337 EAPI void elm_font_available_hash_del(Eina_Hash *hash);
339 EAPI Evas_Coord elm_finger_size_get(void);
340 EAPI void elm_finger_size_set(Evas_Coord size);
341 EAPI void elm_finger_size_all_set(Evas_Coord size);
343 EAPI Eina_Bool elm_focus_highlight_enabled_get(void);
344 EAPI void elm_focus_highlight_enabled_set(Eina_Bool enable);
345 EAPI Eina_Bool elm_focus_highlight_animate_get(void);
346 EAPI void elm_focus_highlight_animate_set(Eina_Bool animate);
348 EAPI Eina_Bool elm_object_focus_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
349 EAPI void elm_object_focus(Evas_Object *obj) EINA_ARG_NONNULL(1);
350 EAPI void elm_object_unfocus(Evas_Object *obj) EINA_ARG_NONNULL(1);
351 EAPI void elm_object_focus_allow_set(Evas_Object *obj, Eina_Bool enable) EINA_ARG_NONNULL(1);
352 EAPI Eina_Bool elm_object_focus_allow_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
354 EAPI void elm_object_focus_custom_chain_set(Evas_Object *obj, Eina_List *objs) EINA_ARG_NONNULL(1);
355 EAPI void elm_object_focus_custom_chain_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
356 EAPI const Eina_List *elm_object_focus_custom_chain_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
357 EAPI void elm_object_focus_custom_chain_append(Evas_Object *obj, Evas_Object *child, Evas_Object *relative_child) EINA_ARG_NONNULL(1, 2);
358 EAPI void elm_object_focus_custom_chain_prepend(Evas_Object *obj, Evas_Object *child, Evas_Object *relative_child) EINA_ARG_NONNULL(1, 2);
359 EAPI void elm_object_focus_cycle(Evas_Object *obj, Elm_Focus_Direction dir) EINA_ARG_NONNULL(1);
360 EAPI void elm_object_focus_direction_go(Evas_Object *obj, int x, int y) EINA_ARG_NONNULL(1);
362 EAPI Eina_Bool elm_scroll_bounce_enabled_get(void);
363 EAPI void elm_scroll_bounce_enabled_set(Eina_Bool enabled);
364 EAPI void elm_scroll_bounce_enabled_all_set(Eina_Bool enabled);
365 EAPI double elm_scroll_bounce_friction_get(void);
366 EAPI void elm_scroll_bounce_friction_set(double friction);
367 EAPI void elm_scroll_bounce_friction_all_set(double friction);
368 EAPI double elm_scroll_page_scroll_friction_get(void);
369 EAPI void elm_scroll_page_scroll_friction_set(double friction);
370 EAPI void elm_scroll_page_scroll_friction_all_set(double friction);
371 EAPI double elm_scroll_bring_in_scroll_friction_get(void);
372 EAPI void elm_scroll_bring_in_scroll_friction_set(double friction);
373 EAPI void elm_scroll_bring_in_scroll_friction_all_set(double friction);
374 EAPI double elm_scroll_zoom_friction_get(void);
375 EAPI void elm_scroll_zoom_friction_set(double friction);
376 EAPI void elm_scroll_zoom_friction_all_set(double friction);
377 EAPI Eina_Bool elm_scroll_thumbscroll_enabled_get(void);
378 EAPI void elm_scroll_thumbscroll_enabled_set(Eina_Bool enabled);
379 EAPI void elm_scroll_thumbscroll_enabled_all_set(Eina_Bool enabled);
380 EAPI unsigned int elm_scroll_thumbscroll_threshold_get(void);
381 EAPI void elm_scroll_thumbscroll_threshold_set(unsigned int threshold);
382 EAPI void elm_scroll_thumbscroll_threshold_all_set(unsigned int threshold);
383 EAPI double elm_scroll_thumbscroll_momentum_threshold_get(void);
384 EAPI void elm_scroll_thumbscroll_momentum_threshold_set(double threshold);
385 EAPI void elm_scroll_thumbscroll_momentum_threshold_all_set(double threshold);
386 EAPI double elm_scroll_thumbscroll_friction_get(void);
387 EAPI void elm_scroll_thumbscroll_friction_set(double friction);
388 EAPI void elm_scroll_thumbscroll_friction_all_set(double friction);
389 EAPI double elm_scroll_thumbscroll_border_friction_get(void);
390 EAPI void elm_scroll_thumbscroll_border_friction_set(double friction);
391 EAPI void elm_scroll_thumbscroll_border_friction_all_set(double friction);
393 EAPI void elm_object_scroll_hold_push(Evas_Object *obj) EINA_ARG_NONNULL(1);
394 EAPI void elm_object_scroll_hold_pop(Evas_Object *obj) EINA_ARG_NONNULL(1);
395 EAPI void elm_object_scroll_freeze_push(Evas_Object *obj) EINA_ARG_NONNULL(1);
396 EAPI void elm_object_scroll_freeze_pop(Evas_Object *obj) EINA_ARG_NONNULL(1);
397 EAPI void elm_object_scroll_lock_x_set(Evas_Object *obj, Eina_Bool lock) EINA_ARG_NONNULL(1);
398 EAPI void elm_object_scroll_lock_y_set(Evas_Object *obj, Eina_Bool lock) EINA_ARG_NONNULL(1);
399 EAPI Eina_Bool elm_object_scroll_lock_x_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
400 EAPI Eina_Bool elm_object_scroll_lock_y_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
402 EAPI void elm_object_signal_emit(Evas_Object *obj, const char *emission, const char *source) EINA_ARG_NONNULL(1);
403 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) EINA_ARG_NONNULL(1, 4);
404 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)) EINA_ARG_NONNULL(1, 4);
406 EAPI void elm_object_event_callback_add(Evas_Object *obj, Elm_Event_Cb func, const void *data) EINA_ARG_NONNULL(1, 2);
407 EAPI void *elm_object_event_callback_del(Evas_Object *obj, Elm_Event_Cb func, const void *data) EINA_ARG_NONNULL(1, 2);
409 EAPI void elm_coords_finger_size_adjust(int times_w, Evas_Coord *w, int times_h, Evas_Coord *h);
411 EAPI double elm_longpress_timeout_get(void);
412 EAPI void elm_longpress_timeout_set(double longpress_timeout);
415 * don't use it unless you are sure
417 EAPI void elm_object_tree_dump(const Evas_Object *top);
418 EAPI void elm_object_tree_dot_dump(const Evas_Object *top, const char *file);
420 EAPI void elm_autocapitalization_allow_all_set(Eina_Bool autocap);
421 EAPI void elm_autoperiod_allow_all_set(Eina_Bool autoperiod);
424 typedef struct _Elm_Theme Elm_Theme;
426 EAPI Elm_Theme *elm_theme_new(void);
427 EAPI void elm_theme_free(Elm_Theme *th);
428 EAPI void elm_theme_copy(Elm_Theme *th, Elm_Theme *thdst);
429 EAPI void elm_theme_ref_set(Elm_Theme *th, Elm_Theme *thref);
430 EAPI Elm_Theme *elm_theme_ref_get(Elm_Theme *th);
431 EAPI Elm_Theme *elm_theme_default_get(void);
432 EAPI void elm_theme_overlay_add(Elm_Theme *th, const char *item);
433 EAPI void elm_theme_overlay_del(Elm_Theme *th, const char *item);
434 EAPI void elm_theme_extension_add(Elm_Theme *th, const char *item);
435 EAPI void elm_theme_extension_del(Elm_Theme *th, const char *item);
436 EAPI void elm_theme_set(Elm_Theme *th, const char *theme);
437 EAPI const char *elm_theme_get(Elm_Theme *th);
438 EAPI const Eina_List *elm_theme_list_get(const Elm_Theme *th);
439 EAPI char *elm_theme_list_item_path_get(const char *f, Eina_Bool *in_search_path);
440 EAPI void elm_theme_flush(Elm_Theme *th);
441 EAPI void elm_theme_full_flush(void);
443 EAPI void elm_theme_all_set(const char *theme);
445 EAPI Eina_List *elm_theme_name_available_list_new(void);
446 EAPI void elm_theme_name_available_list_free(Eina_List *list);
448 EAPI void elm_object_theme_set(Evas_Object *obj, Elm_Theme *th) EINA_ARG_NONNULL(1);
449 EAPI Elm_Theme *elm_object_theme_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
452 typedef enum _Elm_Win_Type
455 ELM_WIN_DIALOG_BASIC,
464 typedef enum _Elm_Win_Keyboard_Mode
466 ELM_WIN_KEYBOARD_UNKNOWN,
467 ELM_WIN_KEYBOARD_OFF,
469 ELM_WIN_KEYBOARD_ALPHA,
470 ELM_WIN_KEYBOARD_NUMERIC,
471 ELM_WIN_KEYBOARD_PIN,
472 ELM_WIN_KEYBOARD_PHONE_NUMBER,
473 ELM_WIN_KEYBOARD_HEX,
474 ELM_WIN_KEYBOARD_TERMINAL,
475 ELM_WIN_KEYBOARD_PASSWORD,
477 ELM_WIN_KEYBOARD_HOST,
478 ELM_WIN_KEYBOARD_FILE,
479 ELM_WIN_KEYBOARD_URL,
480 ELM_WIN_KEYBOARD_KEYPAD,
481 ELM_WIN_KEYBOARD_J2ME
482 } Elm_Win_Keyboard_Mode;
484 EAPI Evas_Object *elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type);
485 EAPI void elm_win_resize_object_add(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1);
486 EAPI void elm_win_resize_object_del(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1);
487 EAPI void elm_win_title_set(Evas_Object *obj, const char *title) EINA_ARG_NONNULL(1);
488 EAPI const char *elm_win_title_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
489 EAPI void elm_win_autodel_set(Evas_Object *obj, Eina_Bool autodel) EINA_ARG_NONNULL(1);
490 EAPI Eina_Bool elm_win_autodel_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
491 EAPI void elm_win_activate(Evas_Object *obj) EINA_ARG_NONNULL(1);
492 EAPI void elm_win_lower(Evas_Object *obj) EINA_ARG_NONNULL(1);
493 EAPI void elm_win_raise(Evas_Object *obj) EINA_ARG_NONNULL(1);
494 EAPI void elm_win_borderless_set(Evas_Object *obj, Eina_Bool borderless) EINA_ARG_NONNULL(1);
495 EAPI Eina_Bool elm_win_borderless_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
496 EAPI void elm_win_shaped_set(Evas_Object *obj, Eina_Bool shaped) EINA_ARG_NONNULL(1);
497 EAPI Eina_Bool elm_win_shaped_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
498 EAPI void elm_win_alpha_set(Evas_Object *obj, Eina_Bool alpha) EINA_ARG_NONNULL(1);
499 EAPI Eina_Bool elm_win_transparent_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
500 EAPI void elm_win_transparent_set(Evas_Object *obj, Eina_Bool transparent) EINA_ARG_NONNULL(1);
501 EAPI Eina_Bool elm_win_alpha_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
502 EAPI void elm_win_override_set(Evas_Object *obj, Eina_Bool override) EINA_ARG_NONNULL(1);
503 EAPI Eina_Bool elm_win_override_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
504 EAPI void elm_win_fullscreen_set(Evas_Object *obj, Eina_Bool fullscreen) EINA_ARG_NONNULL(1);
505 EAPI Eina_Bool elm_win_fullscreen_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
506 EAPI void elm_win_maximized_set(Evas_Object *obj, Eina_Bool maximized) EINA_ARG_NONNULL(1);
507 EAPI Eina_Bool elm_win_maximized_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
508 EAPI void elm_win_iconified_set(Evas_Object *obj, Eina_Bool iconified) EINA_ARG_NONNULL(1);
509 EAPI Eina_Bool elm_win_iconified_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
510 EAPI void elm_win_layer_set(Evas_Object *obj, int layer) EINA_ARG_NONNULL(1);
511 EAPI int elm_win_layer_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
512 EAPI void elm_win_rotation_set(Evas_Object *obj, int rotation) EINA_ARG_NONNULL(1);
513 EAPI void elm_win_rotation_with_resize_set(Evas_Object *obj, int rotation) EINA_ARG_NONNULL(1);
514 EAPI int elm_win_rotation_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
515 EAPI void elm_win_sticky_set(Evas_Object *obj, Eina_Bool sticky) EINA_ARG_NONNULL(1);
516 EAPI Eina_Bool elm_win_sticky_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
517 EAPI void elm_win_conformant_set(Evas_Object *obj, Eina_Bool conformant) EINA_ARG_NONNULL(1);
518 EAPI Eina_Bool elm_win_conformant_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
519 EAPI void elm_win_quickpanel_set(Evas_Object *obj, Eina_Bool quickpanel) EINA_ARG_NONNULL(1);
520 EAPI Eina_Bool elm_win_quickpanel_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
521 EAPI void elm_win_quickpanel_priority_major_set(Evas_Object *obj, int priority) EINA_ARG_NONNULL(1);
522 EAPI int elm_win_quickpanel_priority_major_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
523 EAPI void elm_win_quickpanel_priority_minor_set(Evas_Object *obj, int priority) EINA_ARG_NONNULL(1);
524 EAPI int elm_win_quickpanel_priority_minor_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
525 EAPI void elm_win_quickpanel_zone_set(Evas_Object *obj, int zone) EINA_ARG_NONNULL(1);
526 EAPI int elm_win_quickpanel_zone_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
527 EAPI void elm_win_focus_highlight_enabled_set(Evas_Object *obj, Eina_Bool enabled) EINA_ARG_NONNULL(1);
528 EAPI Eina_Bool elm_win_focus_highlight_enabled_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
529 EAPI void elm_win_focus_highlight_style_set(Evas_Object *obj, const char *style) EINA_ARG_NONNULL(1);
530 EAPI const char *elm_win_focus_highlight_style_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
531 EAPI void elm_win_indicator_state_set(Evas_Object *obj, int show_state);
532 EAPI int elm_win_indicator_state_get(Evas_Object *obj);
534 * ecore_x_icccm_hints_set -> accepts_focus (add to ecore_evas)
535 * ecore_x_icccm_hints_set -> window_group (add to ecore_evas)
536 * ecore_x_icccm_size_pos_hints_set -> request_pos (add to ecore_evas)
537 * ecore_x_icccm_client_leader_set -> l (add to ecore_evas)
538 * ecore_x_icccm_window_role_set -> role (add to ecore_evas)
539 * ecore_x_icccm_transient_for_set -> forwin (add to ecore_evas)
540 * ecore_x_netwm_window_type_set -> type (add to ecore_evas)
542 * (add to ecore_x) set netwm argb icon! (add to ecore_evas)
543 * (blank mouse, private mouse obj, defaultmouse)
546 EAPI void elm_win_keyboard_mode_set(Evas_Object *obj, Elm_Win_Keyboard_Mode mode) EINA_ARG_NONNULL(1);
547 EAPI Elm_Win_Keyboard_Mode elm_win_keyboard_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
548 EAPI void elm_win_keyboard_win_set(Evas_Object *obj, Eina_Bool is_keyboard) EINA_ARG_NONNULL(1);
549 EAPI Eina_Bool elm_win_keyboard_win_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
551 EAPI void elm_win_screen_position_get(const Evas_Object *obj, int *x, int *y) EINA_ARG_NONNULL(1);
553 EAPI Evas_Object *elm_win_inwin_add(Evas_Object *obj) EINA_ARG_NONNULL(1);
554 EAPI void elm_win_inwin_activate(Evas_Object *obj) EINA_ARG_NONNULL(1);
555 EAPI void elm_win_inwin_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
556 EAPI Evas_Object *elm_win_inwin_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
557 EAPI Evas_Object *elm_win_inwin_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
563 /* X specific calls - won't work on non-x engines (return 0) */
564 EAPI Ecore_X_Window elm_win_xwindow_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
565 /* smart callbacks called:
566 * "delete,request" - the user requested to delete the window
567 * "focus,in" - window got focus
568 * "focus,out" - window lost focus
569 * "moved" - window that holds the canvas was moved
573 typedef enum _Elm_Bg_Option
575 ELM_BG_OPTION_CENTER, /**< center the background */
576 ELM_BG_OPTION_SCALE, /**< scale the background retaining aspect ratio */
577 ELM_BG_OPTION_STRETCH, /**< stretch the background to fill */
578 ELM_BG_OPTION_TILE /**< tile background at its original size */
581 EAPI Evas_Object *elm_bg_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
582 EAPI void elm_bg_file_set(Evas_Object *obj, const char *file, const char *group) EINA_ARG_NONNULL(1);
583 EAPI void elm_bg_file_get(const Evas_Object *obj, const char **file, const char **group) EINA_ARG_NONNULL(1);
584 EAPI void elm_bg_option_set(Evas_Object *obj, Elm_Bg_Option option) EINA_ARG_NONNULL(1);
585 EAPI Elm_Bg_Option elm_bg_option_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
586 EAPI void elm_bg_color_set(Evas_Object *obj, int r, int g, int b) EINA_ARG_NONNULL(1);
587 EAPI void elm_bg_color_get(const Evas_Object *obj, int *r, int *g, int *b) EINA_ARG_NONNULL(1);
588 EAPI void elm_bg_overlay_set(Evas_Object *obj, Evas_Object *overlay) EINA_ARG_NONNULL(1);
589 EAPI Evas_Object *elm_bg_overlay_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
590 EAPI Evas_Object *elm_bg_overlay_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
591 EAPI void elm_bg_load_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h) EINA_ARG_NONNULL(1);
592 /* smart callbacks called:
596 typedef enum _Elm_Icon_Lookup_Order
598 ELM_ICON_LOOKUP_FDO_THEME, /**< icon look up order: freedesktop, theme */
599 ELM_ICON_LOOKUP_THEME_FDO, /**< icon look up order: theme, freedesktop */
600 ELM_ICON_LOOKUP_FDO, /**< icon look up order: freedesktop */
601 ELM_ICON_LOOKUP_THEME /**< icon look up order: theme */
602 } Elm_Icon_Lookup_Order;
604 EAPI Evas_Object *elm_icon_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
605 EAPI Eina_Bool elm_icon_file_set(Evas_Object *obj, const char *file, const char *group) EINA_ARG_NONNULL(1, 2);
606 EAPI void elm_icon_file_get(const Evas_Object *obj, const char **file, const char **group) EINA_ARG_NONNULL(1);
607 EAPI Eina_Bool elm_icon_standard_set(Evas_Object *obj, const char *name) EINA_ARG_NONNULL(1);
608 EAPI const char *elm_icon_standard_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
609 EAPI void elm_icon_smooth_set(Evas_Object *obj, Eina_Bool smooth) EINA_ARG_NONNULL(1);
610 EAPI Eina_Bool elm_icon_smooth_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
611 EAPI void elm_icon_no_scale_set(Evas_Object *obj, Eina_Bool no_scale) EINA_ARG_NONNULL(1);
612 EAPI Eina_Bool elm_icon_no_scale_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
613 EAPI void elm_icon_scale_set(Evas_Object *obj, Eina_Bool scale_up, Eina_Bool scale_down) EINA_ARG_NONNULL(1);
614 EAPI void elm_icon_scale_get(const Evas_Object *obj, Eina_Bool *scale_up, Eina_Bool *scale_down) EINA_ARG_NONNULL(1);
615 EAPI void elm_icon_fill_outside_set(Evas_Object *obj, Eina_Bool fill_outside) EINA_ARG_NONNULL(1);
616 EAPI Eina_Bool elm_icon_fill_outside_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
617 EAPI void elm_icon_prescale_set(Evas_Object *obj, int size) EINA_ARG_NONNULL(1);
618 EAPI int elm_icon_prescale_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
619 EAPI void elm_icon_order_lookup_set(Evas_Object *obj, Elm_Icon_Lookup_Order order) EINA_ARG_NONNULL(1);
620 EAPI Elm_Icon_Lookup_Order elm_icon_order_lookup_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
621 /* smart callbacks called:
622 * "clicked" - the user clicked the icon
626 typedef enum _Elm_Image_Orient
628 ELM_IMAGE_ORIENT_NONE,
629 ELM_IMAGE_ROTATE_90_CW,
630 ELM_IMAGE_ROTATE_180_CW,
631 ELM_IMAGE_ROTATE_90_CCW,
632 ELM_IMAGE_FLIP_HORIZONTAL,
633 ELM_IMAGE_FLIP_VERTICAL,
634 ELM_IMAGE_FLIP_TRANSPOSE,
635 ELM_IMAGE_FLIP_TRANSVERSE
637 EAPI Evas_Object *elm_image_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
638 EAPI Eina_Bool elm_image_file_set(Evas_Object *obj, const char *file, const char *group) EINA_ARG_NONNULL(1, 2);
639 EAPI void elm_image_file_get(const Evas_Object *obj, const char **file, const char **group) EINA_ARG_NONNULL(1);
640 EAPI void elm_image_smooth_set(Evas_Object *obj, Eina_Bool smooth) EINA_ARG_NONNULL(1);
641 EAPI Eina_Bool elm_image_smooth_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
642 EAPI void elm_image_object_size_get(const Evas_Object *obj, int *w, int *h) EINA_ARG_NONNULL(1);
643 EAPI void elm_image_no_scale_set(Evas_Object *obj, Eina_Bool no_scale) EINA_ARG_NONNULL(1);
644 EAPI Eina_Bool elm_image_no_scale_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
645 EAPI void elm_image_scale_set(Evas_Object *obj, Eina_Bool scale_up, Eina_Bool scale_down) EINA_ARG_NONNULL(1);
646 EAPI void elm_image_scale_get(const Evas_Object *obj, Eina_Bool *scale_up, Eina_Bool *scale_down) EINA_ARG_NONNULL(1);
647 EAPI void elm_image_fill_outside_set(Evas_Object *obj, Eina_Bool fill_outside) EINA_ARG_NONNULL(1);
648 EAPI Eina_Bool elm_image_fill_outside_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
649 EAPI void elm_image_prescale_set(Evas_Object *obj, int size) EINA_ARG_NONNULL(1);
650 EAPI int elm_image_prescale_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
651 EAPI void elm_image_orient_set(Evas_Object *obj, Elm_Image_Orient orient) EINA_ARG_NONNULL(1);
652 EAPI Elm_Image_Orient elm_image_orient_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
653 EAPI void elm_image_editable_set(Evas_Object *obj, Eina_Bool set) EINA_ARG_NONNULL(1);
654 EAPI Eina_Bool elm_image_editable_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
655 /* smart callbacks called:
656 * "clicked" - the user clicked the image
660 typedef struct _Elm_Box_Transition Elm_Box_Transition;
662 EAPI Evas_Object *elm_box_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
663 EAPI void elm_box_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) EINA_ARG_NONNULL(1);
664 EAPI Eina_Bool elm_box_horizontal_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
665 EAPI void elm_box_homogenous_set(Evas_Object *obj, Eina_Bool homogenous) EINA_ARG_NONNULL(1);
666 EAPI Eina_Bool elm_box_homogenous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
667 EAPI void elm_box_extended_mode_set(Evas_Object *obj, Eina_Bool extended) EINA_ARG_NONNULL(1);
668 EAPI Eina_Bool elm_box_extended_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
669 EAPI void elm_box_pack_start(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1);
670 EAPI void elm_box_pack_end(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1);
671 EAPI void elm_box_pack_before(Evas_Object *obj, Evas_Object *subobj, Evas_Object *before) EINA_ARG_NONNULL(1);
672 EAPI void elm_box_pack_after(Evas_Object *obj, Evas_Object *subobj, Evas_Object *after) EINA_ARG_NONNULL(1);
673 EAPI void elm_box_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
674 EAPI void elm_box_unpack(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1);
675 EAPI void elm_box_unpack_all(Evas_Object *obj) EINA_ARG_NONNULL(1);
676 EAPI const Eina_List *elm_box_children_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
677 EAPI void elm_box_padding_set(Evas_Object *obj, Evas_Coord horizontal, Evas_Coord vertical) EINA_ARG_NONNULL(1);
678 EAPI void elm_box_padding_get(const Evas_Object *obj, Evas_Coord *horizontal, Evas_Coord *vertical) EINA_ARG_NONNULL(1);
679 EAPI void elm_box_align_set(Evas_Object *obj, double horizontal, double vertical) EINA_ARG_NONNULL(1);
680 EAPI void elm_box_align_get(const Evas_Object *obj, double *horizontal, double *vertical) EINA_ARG_NONNULL(1);
682 EAPI void elm_box_layout_set(Evas_Object *obj, Evas_Object_Box_Layout cb, const void *data, void (*free_data)(void *data)) EINA_ARG_NONNULL(1);
683 EAPI void elm_box_layout_transition(Evas_Object *obj, Evas_Object_Box_Data *priv, void *data);
684 EAPI Elm_Box_Transition *elm_box_transition_new(const double duration, Evas_Object_Box_Layout start_layout, void *start_layout_data, void(*start_layout_free_data)(void *data), Evas_Object_Box_Layout end_layout, void *end_layout_data, void(*end_layout_free_data)(void *data), void(*transition_end_cb)(void *data), void *transition_end_data) EINA_ARG_NONNULL(2, 5);
685 EAPI void elm_box_transition_free(void *data);
686 /* smart callbacks called:
690 UIControlStateDefault,
691 UIControlStateHighlighted,
692 UIControlStateDisabled,
693 UIControlStateFocused,
694 UIControlStateReserved
698 EAPI Evas_Object *elm_button_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
699 EAPI void elm_button_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
700 EAPI void elm_button_label_set_for_state(Evas_Object *obj, const char *label, UIControlState state);
701 EAPI const char *elm_button_label_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
702 EAPI const char *elm_button_label_get_for_state(const Evas_Object *obj, UIControlState state);
703 EAPI void elm_button_icon_set(Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
704 EAPI Evas_Object *elm_button_icon_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
705 EAPI Evas_Object *elm_button_icon_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
706 EAPI void elm_button_autorepeat_set(Evas_Object *obj, Eina_Bool on) EINA_ARG_NONNULL(1);
707 EAPI Eina_Bool elm_button_autorepeat_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
708 EAPI void elm_button_autorepeat_initial_timeout_set(Evas_Object *obj, double t) EINA_ARG_NONNULL(1);
709 EAPI double elm_button_autorepeat_initial_timeout_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
710 EAPI void elm_button_autorepeat_gap_timeout_set(Evas_Object *obj, double t) EINA_ARG_NONNULL(1);
711 EAPI double elm_button_autorepeat_gap_timeout_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
716 * hoversel_vertical_entry
718 /* smart callbacks called:
719 * "clicked" - the user clicked the button
720 * "repeated" - the user pressed the button without releasing it
721 * "unpressed" - when the button is unpressed (released)
725 EAPI Evas_Object *elm_fileselector_button_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
726 EAPI void elm_fileselector_button_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
727 EAPI const char *elm_fileselector_button_label_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
728 EAPI void elm_fileselector_button_icon_set(Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
729 EAPI Evas_Object *elm_fileselector_button_icon_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
730 EAPI Evas_Object *elm_fileselector_button_icon_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
731 EAPI void elm_fileselector_button_window_title_set(Evas_Object *obj, const char *title) EINA_ARG_NONNULL(1);
732 EAPI const char *elm_fileselector_button_window_title_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
733 EAPI void elm_fileselector_button_window_size_set(Evas_Object *obj, Evas_Coord width, Evas_Coord height) EINA_ARG_NONNULL(1);
734 EAPI void elm_fileselector_button_window_size_get(const Evas_Object *obj, Evas_Coord *width, Evas_Coord *height) EINA_ARG_NONNULL(1);
735 EAPI void elm_fileselector_button_path_set(Evas_Object *obj, const char *path) EINA_ARG_NONNULL(1);
736 EAPI const char *elm_fileselector_button_path_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
737 EAPI void elm_fileselector_button_expandable_set(Evas_Object *obj, Eina_Bool value) EINA_ARG_NONNULL(1);
738 EAPI Eina_Bool elm_fileselector_button_expandable_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
739 EAPI void elm_fileselector_button_folder_only_set(Evas_Object *obj, Eina_Bool value) EINA_ARG_NONNULL(1);
740 EAPI Eina_Bool elm_fileselector_button_folder_only_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
741 EAPI void elm_fileselector_button_is_save_set(Evas_Object *obj, Eina_Bool value) EINA_ARG_NONNULL(1);
742 EAPI Eina_Bool elm_fileselector_button_is_save_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
743 EAPI void elm_fileselector_button_inwin_mode_set(Evas_Object *obj, Eina_Bool value) EINA_ARG_NONNULL(1);
744 EAPI Eina_Bool elm_fileselector_button_inwin_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
749 * hoversel_vertical_entry
751 /* smart callbacks called:
752 * "file,chosen" - the user has selected a path, whose string pointer comes
756 EAPI Evas_Object *elm_fileselector_entry_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
757 EAPI void elm_fileselector_entry_button_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
758 EAPI const char *elm_fileselector_entry_button_label_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
759 EAPI void elm_fileselector_entry_button_icon_set(Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
760 EAPI Evas_Object *elm_fileselector_entry_button_icon_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
761 EAPI Evas_Object *elm_fileselector_entry_button_icon_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
762 EAPI void elm_fileselector_entry_window_title_set(Evas_Object *obj, const char *title) EINA_ARG_NONNULL(1);
763 EAPI const char *elm_fileselector_entry_window_title_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
764 EAPI void elm_fileselector_entry_window_size_set(Evas_Object *obj, Evas_Coord width, Evas_Coord height) EINA_ARG_NONNULL(1);
765 EAPI void elm_fileselector_entry_window_size_get(const Evas_Object *obj, Evas_Coord *width, Evas_Coord *height) EINA_ARG_NONNULL(1);
766 EAPI void elm_fileselector_entry_path_set(Evas_Object *obj, const char *path) EINA_ARG_NONNULL(1);
767 EAPI const char *elm_fileselector_entry_path_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
768 EAPI void elm_fileselector_entry_expandable_set(Evas_Object *obj, Eina_Bool value) EINA_ARG_NONNULL(1);
769 EAPI Eina_Bool elm_fileselector_entry_expandable_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
770 EAPI void elm_fileselector_entry_folder_only_set(Evas_Object *obj, Eina_Bool value) EINA_ARG_NONNULL(1);
771 EAPI Eina_Bool elm_fileselector_entry_folder_only_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
772 EAPI void elm_fileselector_entry_is_save_set(Evas_Object *obj, Eina_Bool value) EINA_ARG_NONNULL(1);
773 EAPI Eina_Bool elm_fileselector_entry_is_save_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
774 EAPI void elm_fileselector_entry_inwin_mode_set(Evas_Object *obj, Eina_Bool value) EINA_ARG_NONNULL(1);
775 EAPI Eina_Bool elm_fileselector_entry_inwin_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
776 EAPI void elm_fileselector_entry_selected_set(Evas_Object *obj, const char *path) EINA_ARG_NONNULL(1);
777 EAPI const char *elm_fileselector_entry_selected_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
779 /* scroller policy */
780 typedef enum _Elm_Scroller_Policy
782 ELM_SCROLLER_POLICY_AUTO = 0,
783 ELM_SCROLLER_POLICY_ON,
784 ELM_SCROLLER_POLICY_OFF,
785 ELM_SCROLLER_POLICY_LAST
786 } Elm_Scroller_Policy;
788 EAPI Evas_Object *elm_scroller_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
789 EAPI void elm_scroller_content_set(Evas_Object *obj, Evas_Object *child) EINA_ARG_NONNULL(1);
790 EAPI Evas_Object *elm_scroller_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
791 EAPI Evas_Object *elm_scroller_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
792 EAPI void elm_scroller_custom_widget_base_theme_set(Evas_Object *obj, const char *widget, const char *base) EINA_ARG_NONNULL(1, 2, 3);
793 EAPI void elm_scroller_content_min_limit(Evas_Object *obj, Eina_Bool w, Eina_Bool h) EINA_ARG_NONNULL(1);
794 EAPI void elm_scroller_region_show(Evas_Object *obj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h) EINA_ARG_NONNULL(1);
795 EAPI void elm_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v) EINA_ARG_NONNULL(1);
796 EAPI void elm_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v) EINA_ARG_NONNULL(1);
797 EAPI void elm_scroller_region_get(const Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h) EINA_ARG_NONNULL(1);
798 EAPI void elm_scroller_child_size_get(const Evas_Object *obj, Evas_Coord *w, Evas_Coord *h) EINA_ARG_NONNULL(1);
799 EAPI void elm_scroller_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce) EINA_ARG_NONNULL(1);
800 EAPI void elm_scroller_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce) EINA_ARG_NONNULL(1);
801 EAPI void elm_scroller_page_relative_set(Evas_Object *obj, double h_pagerel, double v_pagerel) EINA_ARG_NONNULL(1);
802 EAPI void elm_scroller_page_size_set(Evas_Object *obj, Evas_Coord h_pagesize, Evas_Coord v_pagesize) EINA_ARG_NONNULL(1);
803 EAPI void elm_scroller_region_bring_in(Evas_Object *obj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h) EINA_ARG_NONNULL(1);
804 EAPI void elm_scroller_propagate_events_set(Evas_Object *obj, Eina_Bool propagation);
805 EAPI Eina_Bool elm_scroller_propagate_events_get(const Evas_Object *obj);
806 EINA_DEPRECATED EAPI void elm_scroller_page_move_set(Evas_Object *obj, Eina_Bool set);
808 /* smart callbacks called:
814 * "scroll,anim,start"
816 * "scroll,drag,start"
821 EAPI Evas_Object *elm_label_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
822 EAPI void elm_label_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
823 EAPI const char *elm_label_label_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
824 EAPI void elm_label_line_wrap_set(Evas_Object *obj, Eina_Bool wrap) EINA_ARG_NONNULL(1);
825 EAPI Eina_Bool elm_label_line_wrap_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
826 EAPI void elm_label_wrap_width_set(Evas_Object *obj, Evas_Coord w) EINA_ARG_NONNULL(1);
827 EAPI Evas_Coord elm_label_wrap_width_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
828 EAPI void elm_label_wrap_height_set(Evas_Object *obj, Evas_Coord h) EINA_ARG_NONNULL(1);
829 EAPI Evas_Coord elm_label_wrap_height_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
830 EAPI void elm_label_fontsize_set(Evas_Object *obj, int fontsize) EINA_ARG_NONNULL(1);
831 EAPI void elm_label_text_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a) EINA_ARG_NONNULL(1);
832 EAPI void elm_label_text_align_set(Evas_Object *obj, const char *alignmode) EINA_ARG_NONNULL(1);
833 EAPI void elm_label_background_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a) EINA_ARG_NONNULL(1);
834 EAPI void elm_label_ellipsis_set(Evas_Object *obj, Eina_Bool ellipsis) EINA_ARG_NONNULL(1);
835 EAPI void elm_label_wrap_mode_set(Evas_Object *obj, Eina_Bool wrapmode) EINA_ARG_NONNULL(1);
836 EAPI void elm_label_slide_set(Evas_Object *obj, Eina_Bool slide) EINA_ARG_NONNULL(1);
837 EAPI Eina_Bool elm_label_slide_get(Evas_Object *obj) EINA_ARG_NONNULL(1);
838 EAPI void elm_label_slide_duration_set(Evas_Object *obj, int duration) EINA_ARG_NONNULL(1);
839 EAPI int elm_label_slide_duration_get(Evas_Object *obj) EINA_ARG_NONNULL(1);
844 /* smart callbacks called:
848 EAPI Evas_Object *elm_toggle_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
849 EAPI void elm_toggle_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
850 EAPI const char *elm_toggle_label_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
851 EAPI void elm_toggle_icon_set(Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
852 EAPI Evas_Object *elm_toggle_icon_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
853 EAPI Evas_Object *elm_toggle_icon_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
854 EAPI void elm_toggle_states_labels_set(Evas_Object *obj, const char *onlabel, const char *offlabel) EINA_ARG_NONNULL(1);
855 EAPI void elm_toggle_states_labels_get(const Evas_Object *obj, const char **onlabel, const char **offlabel) EINA_ARG_NONNULL(1);
856 EAPI void elm_toggle_state_set(Evas_Object *obj, Eina_Bool state) EINA_ARG_NONNULL(1);
857 EAPI Eina_Bool elm_toggle_state_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
858 EAPI void elm_toggle_state_pointer_set(Evas_Object *obj, Eina_Bool *statep) EINA_ARG_NONNULL(1);
859 /* smart callbacks called:
860 * "changed" - the user toggled the state
864 EAPI Evas_Object *elm_frame_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
865 EAPI void elm_frame_label_set(Evas_Object *obj, const char *label); EINA_ARG_NONNULL(1)
866 EAPI const char *elm_frame_label_get(const Evas_Object *obj); EINA_ARG_NONNULL(1)
867 EAPI void elm_frame_content_set(Evas_Object *obj, Evas_Object *content); EINA_ARG_NONNULL(1)
868 EAPI Evas_Object *elm_frame_content_get(const Evas_Object *obj); EINA_ARG_NONNULL(1)
869 EAPI Evas_Object *elm_frame_content_unset(Evas_Object *obj); EINA_ARG_NONNULL(1)
879 /* smart callbacks called:
883 EAPI Evas_Object *elm_table_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
884 EAPI void elm_table_homogenous_set(Evas_Object *obj, Eina_Bool homogenous) EINA_ARG_NONNULL(1);
885 EAPI Eina_Bool elm_table_homogeneous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
886 EAPI void elm_table_padding_set(Evas_Object *obj, Evas_Coord horizontal, Evas_Coord vertical) EINA_ARG_NONNULL(1);
887 EAPI void elm_table_padding_get(const Evas_Object *obj, Evas_Coord *horizontal, Evas_Coord *vertical) EINA_ARG_NONNULL(1);
888 EAPI void elm_table_pack(Evas_Object *obj, Evas_Object *subobj, int x, int y, int w, int h) EINA_ARG_NONNULL(1);
889 EAPI void elm_table_unpack(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1);
890 EAPI void elm_table_clear(Evas_Object *obj, Eina_Bool clear) EINA_ARG_NONNULL(1);
893 typedef struct _Elm_Gengrid_Item_Class Elm_Gengrid_Item_Class;
894 typedef struct _Elm_Gengrid_Item_Class_Func Elm_Gengrid_Item_Class_Func;
895 typedef struct _Elm_Gengrid_Item Elm_Gengrid_Item; /**< Item of Elm_Gengrid. Sub-type of Elm_Widget_Item */
896 typedef char *(*GridItemLabelGetFunc) (void *data, Evas_Object *obj, const char *part);
897 typedef Evas_Object *(*GridItemIconGetFunc) (void *data, Evas_Object *obj, const char *part);
898 typedef Eina_Bool (*GridItemStateGetFunc) (void *data, Evas_Object *obj, const char *part);
899 typedef void (*GridItemDelFunc) (void *data, Evas_Object *obj);
901 struct _Elm_Gengrid_Item_Class
903 const char *item_style;
904 struct _Elm_Gengrid_Item_Class_Func {
905 GridItemLabelGetFunc label_get;
906 GridItemIconGetFunc icon_get;
907 GridItemStateGetFunc state_get;
912 EAPI Evas_Object *elm_gengrid_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
913 EAPI void elm_gengrid_item_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h) EINA_ARG_NONNULL(1);
914 EAPI void elm_gengrid_item_size_get(const Evas_Object *obj, Evas_Coord *w, Evas_Coord *h) EINA_ARG_NONNULL(1);
915 EAPI void elm_gengrid_align_set(Evas_Object *obj, double align_x, double align_y) EINA_ARG_NONNULL(1);
916 EAPI void elm_gengrid_align_get(const Evas_Object *obj, double *align_x, double *align_y) EINA_ARG_NONNULL(1);
918 EAPI void elm_gengrid_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select) EINA_ARG_NONNULL(1);
919 EAPI Eina_Bool elm_gengrid_always_select_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
920 EAPI void elm_gengrid_no_select_mode_set(Evas_Object *obj, Eina_Bool no_select) EINA_ARG_NONNULL(1);
921 EAPI Eina_Bool elm_gengrid_no_select_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
922 EAPI void elm_gengrid_multi_select_set(Evas_Object *obj, Eina_Bool multi) EINA_ARG_NONNULL(1);
923 EAPI Eina_Bool elm_gengrid_multi_select_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
924 EAPI void elm_gengrid_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce) EINA_ARG_NONNULL(1);
925 EAPI void elm_gengrid_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce) EINA_ARG_NONNULL(1);
926 EAPI void elm_gengrid_page_relative_set(Evas_Object *obj, double h_pagerel, double v_pagerel) EINA_ARG_NONNULL(1);
927 EAPI void elm_gengrid_page_size_set(Evas_Object *obj, Evas_Coord h_pagesize, Evas_Coord v_pagesize) EINA_ARG_NONNULL(1);
928 EAPI void elm_gengrid_horizontal_set(Evas_Object *obj, Eina_Bool setting) EINA_ARG_NONNULL(1);
930 EAPI Elm_Gengrid_Item *elm_gengrid_first_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
931 EAPI Elm_Gengrid_Item *elm_gengrid_last_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
933 EAPI Elm_Gengrid_Item *elm_gengrid_item_next_get(const Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
934 EAPI Elm_Gengrid_Item *elm_gengrid_item_prev_get(const Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
935 EAPI Evas_Object *elm_gengrid_item_gengrid_get(const Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
936 EAPI void elm_gengrid_item_del(Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
937 EAPI void elm_gengrid_item_update(Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
938 EAPI void *elm_gengrid_item_data_get(const Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
939 EAPI void elm_gengrid_item_data_set(Elm_Gengrid_Item *item, const void *data) EINA_ARG_NONNULL(1);
940 EAPI void elm_gengrid_item_pos_get(const Elm_Gengrid_Item *item, unsigned int *x, unsigned int *y) EINA_ARG_NONNULL(1);
941 EAPI void elm_gengrid_item_selected_set(Elm_Gengrid_Item *item, Eina_Bool selected) EINA_ARG_NONNULL(1);
942 EAPI Eina_Bool elm_gengrid_item_selected_get(const Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
943 EAPI const Evas_Object *elm_gengrid_item_object_get(const Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
944 EAPI void elm_gengrid_item_show(Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
945 EAPI void elm_gengrid_item_bring_in(Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
946 EAPI void elm_gengrid_item_disabled_set(Elm_Gengrid_Item *item, Eina_Bool disabled) EINA_ARG_NONNULL(1);
947 EAPI Eina_Bool elm_gengrid_item_disabled_get(const Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
949 EAPI void elm_gengrid_item_tooltip_text_set(Elm_Gengrid_Item *item, const char *text) EINA_ARG_NONNULL(1);
950 EAPI void elm_gengrid_item_tooltip_content_cb_set(Elm_Gengrid_Item *item, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb) EINA_ARG_NONNULL(1);
951 EAPI void elm_gengrid_item_tooltip_unset(Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
952 EAPI void elm_gengrid_item_tooltip_style_set(Elm_Gengrid_Item *item, const char *style) EINA_ARG_NONNULL(1);
953 EAPI const char *elm_gengrid_item_tooltip_style_get(const Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
954 EAPI void elm_gengrid_item_cursor_set(Elm_Gengrid_Item *item, const char *cursor) EINA_ARG_NONNULL(1);
955 EAPI const char *elm_gengrid_item_cursor_get(const Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
956 EAPI void elm_gengrid_item_cursor_unset(Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
957 EAPI void elm_gengrid_item_cursor_style_set(Elm_Gengrid_Item *item, const char *style) EINA_ARG_NONNULL(1);
958 EAPI const char *elm_gengrid_item_cursor_style_get(const Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
959 EAPI void elm_gengrid_item_cursor_engine_only_set(Elm_Gengrid_Item *item, Eina_Bool engine_only) EINA_ARG_NONNULL(1);
960 EAPI Eina_Bool elm_gengrid_item_cursor_engine_only_get(const Elm_Gengrid_Item *item) EINA_ARG_NONNULL(1);
962 EAPI void elm_gengrid_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
963 EAPI Elm_Gengrid_Item *elm_gengrid_selected_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
964 EAPI const Eina_List *elm_gengrid_selected_items_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
966 EAPI Elm_Gengrid_Item *elm_gengrid_item_append(Evas_Object *obj, const Elm_Gengrid_Item_Class *gic, const void *data, Evas_Smart_Cb func, const void *func_data) EINA_ARG_NONNULL(1);
967 EAPI Elm_Gengrid_Item *elm_gengrid_item_prepend(Evas_Object *obj, const Elm_Gengrid_Item_Class *gic, const void *data, Evas_Smart_Cb func, const void *func_data) EINA_ARG_NONNULL(1);
968 EAPI Elm_Gengrid_Item *elm_gengrid_item_insert_before(Evas_Object *obj, const Elm_Gengrid_Item_Class *gic, const void *data, Elm_Gengrid_Item *relative, Evas_Smart_Cb func, const void *func_data) EINA_ARG_NONNULL(1);
969 EAPI Elm_Gengrid_Item *elm_gengrid_item_insert_after(Evas_Object *obj, const Elm_Gengrid_Item_Class *gic, const void *data, Elm_Gengrid_Item *relative, Evas_Smart_Cb func, const void *func_data) EINA_ARG_NONNULL(1);
970 /* smart callbacks called:
972 * selected - User has selected a item.
973 * unselected - User has unselected a item.
974 * clicked - User has double-clicked a item.
975 * realized - An evas object for a item was built.
976 * unrealized - An evas object for a item was deleted.
977 * changed - An item has been added, removed, resized or moved,
978 * or gengrid has been resized or horizontal property has been changed.
979 * scroll - the content has been scrolled (moved).
980 * "scroll,drag,start" - dragging the contents around has started.
981 * "scroll,drag,stop" - dragging the contents around has stopped.
982 * drag - Gengrid is being dragged.
983 * "drag,start,up" - Gengrid has been dragged (not scrolled) up.
984 * "drag,start,down" - Gengrid has been dragged (not scrolled) down.
985 * "drag,start,left" - Gengrid has been dragged (not scrolled) left.
986 * "drag,start,rigth" - Gengrid has been dragged (nto scrolled) right.
987 * "drag,stop" - Gengrid is not being dragged.
991 typedef enum _Elm_Clock_Digedit
994 ELM_CLOCK_HOUR_DECIMAL = 1 << 0,
995 ELM_CLOCK_HOUR_UNIT = 1 << 1,
996 ELM_CLOCK_MIN_DECIMAL = 1 << 2,
997 ELM_CLOCK_MIN_UNIT = 1 << 3,
998 ELM_CLOCK_SEC_DECIMAL = 1 << 4,
999 ELM_CLOCK_SEC_UNIT = 1 << 5,
1000 ELM_CLOCK_ALL = (1 << 6) - 1
1001 } Elm_Clock_Digedit;
1003 EAPI Evas_Object *elm_clock_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1004 EAPI void elm_clock_time_set(Evas_Object *obj, int hrs, int min, int sec) EINA_ARG_NONNULL(1);
1005 EAPI void elm_clock_time_get(const Evas_Object *obj, int *hrs, int *min, int *sec) EINA_ARG_NONNULL(1);
1006 EAPI void elm_clock_edit_set(Evas_Object *obj, Eina_Bool edit) EINA_ARG_NONNULL(1);
1007 EAPI Eina_Bool elm_clock_edit_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1008 EAPI void elm_clock_digit_edit_set(Evas_Object *obj, Elm_Clock_Digedit digedit) EINA_ARG_NONNULL(1);
1009 EAPI Elm_Clock_Digedit elm_clock_digit_edit_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1010 EAPI void elm_clock_show_am_pm_set(Evas_Object *obj, Eina_Bool am_pm) EINA_ARG_NONNULL(1);
1011 EAPI Eina_Bool elm_clock_show_am_pm_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1012 EAPI void elm_clock_show_seconds_set(Evas_Object *obj, Eina_Bool seconds) EINA_ARG_NONNULL(1);
1013 EAPI Eina_Bool elm_clock_show_seconds_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1014 EAPI void elm_clock_interval_set(Evas_Object *obj, double interval) EINA_ARG_NONNULL(1);
1015 EAPI double elm_clock_interval_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1016 /* smart callbacks called:
1017 * "changed" - the user changed the time
1021 EAPI Evas_Object *elm_layout_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1022 EAPI Eina_Bool elm_layout_file_set(Evas_Object *obj, const char *file, const char *group) EINA_ARG_NONNULL(1);
1023 EAPI Eina_Bool elm_layout_theme_set(Evas_Object *obj, const char *clas, const char *group, const char *style) EINA_ARG_NONNULL(1);
1024 EAPI void elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content) EINA_ARG_NONNULL(1);
1025 EAPI const Evas_Object *elm_layout_content_get(const Evas_Object *obj, const char *swallow) EINA_ARG_NONNULL(1);
1026 EAPI Evas_Object *elm_layout_content_unset(Evas_Object *obj, const char *swallow) EINA_ARG_NONNULL(1);
1027 EAPI void elm_layout_text_set(Evas_Object *obj, const char *part, const char *text) EINA_ARG_NONNULL(1);
1028 EAPI const char *elm_layout_text_get(const Evas_Object *obj, const char *part) EINA_ARG_NONNULL(1);
1029 EAPI void elm_layout_box_append(Evas_Object *obj, const char *part, Evas_Object *child) EINA_ARG_NONNULL(1);
1030 EAPI void elm_layout_box_prepend(Evas_Object *obj, const char *part, Evas_Object *child) EINA_ARG_NONNULL(1);
1031 EAPI void elm_layout_box_insert_before(Evas_Object *obj, const char *part, Evas_Object *child, const Evas_Object *reference) EINA_ARG_NONNULL(1);
1032 EAPI void elm_layout_box_insert_at(Evas_Object *obj, const char *part, Evas_Object *child, unsigned int pos) EINA_ARG_NONNULL(1);
1033 EAPI Evas_Object *elm_layout_box_remove(Evas_Object *obj, const char *part, Evas_Object *child) EINA_ARG_NONNULL(1, 2, 3);
1034 EAPI void elm_layout_box_remove_all(Evas_Object *obj, const char *part, Eina_Bool clear) EINA_ARG_NONNULL(1, 2);
1035 EAPI void elm_layout_table_pack(Evas_Object *obj, const char *part, Evas_Object *child_obj, unsigned short col, unsigned short row, unsigned short colspan, unsigned short rowspan) EINA_ARG_NONNULL(1);
1036 EAPI Evas_Object *elm_layout_table_unpack(Evas_Object *obj, const char *part, Evas_Object *child_obj) EINA_ARG_NONNULL(1, 2, 3);
1037 EAPI void elm_layout_table_clear(Evas_Object *obj, const char *part, Eina_Bool clear) EINA_ARG_NONNULL(1, 2);
1038 EAPI Evas_Object *elm_layout_edje_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1039 EAPI void elm_layout_sizing_eval(Evas_Object *obj) EINA_ARG_NONNULL(1);
1040 EAPI Eina_Bool elm_layout_part_cursor_set(Evas_Object *obj, const char *part_name, const char *cursor) EINA_ARG_NONNULL(1, 2);
1041 EAPI const char *elm_layout_part_cursor_get(const Evas_Object *obj, const char *part_name) EINA_ARG_NONNULL(1, 2);
1042 EAPI void elm_layout_part_cursor_unset(Evas_Object *obj, const char *part_name) EINA_ARG_NONNULL(1, 2);
1043 EAPI Eina_Bool elm_layout_part_cursor_style_set(Evas_Object *obj, const char *part_name, const char *style) EINA_ARG_NONNULL(1, 2);
1044 EAPI const char *elm_layout_part_cursor_style_get(const Evas_Object *obj, const char *part_name) EINA_ARG_NONNULL(1, 2);
1045 EAPI Eina_Bool elm_layout_part_cursor_engine_only_set(Evas_Object *obj, const char *part_name, Eina_Bool engine_only) EINA_ARG_NONNULL(1, 2);
1046 EAPI Eina_Bool elm_layout_part_cursor_engine_only_get(const Evas_Object *obj, const char *part_name) EINA_ARG_NONNULL(1, 2);
1048 * @def elm_layout_icon_set
1049 * Convienience macro to set the icon object in a layout that follows the
1050 * Elementary naming convention for its parts.
1054 #define elm_layout_icon_set(_ly, _obj) \
1057 elm_layout_content_set((_ly), "elm.swallow.icon", (_obj)); \
1058 if ((_obj)) sig = "elm,state,icon,visible"; \
1059 else sig = "elm,state,icon,hidden"; \
1060 elm_object_signal_emit((_ly), sig, "elm"); \
1064 * @def elm_layout_icon_get
1065 * Convienience macro to get the icon object from a layout that follows the
1066 * Elementary naming convention for its parts.
1070 #define elm_layout_icon_get(_ly) \
1071 elm_layout_content_get((_ly), "elm.swallow.icon")
1074 * @def elm_layout_end_set
1075 * Convienience macro to set the end object in a layout that follows the
1076 * Elementary naming convention for its parts.
1080 #define elm_layout_end_set(_ly, _obj) \
1083 elm_layout_content_set((_ly), "elm.swallow.end", (_obj)); \
1084 if ((_obj)) sig = "elm,state,end,visible"; \
1085 else sig = "elm,state,end,hidden"; \
1086 elm_object_signal_emit((_ly), sig, "elm"); \
1090 * @def elm_layout_end_get
1091 * Convienience macro to get the end object in a layout that follows the
1092 * Elementary naming convention for its parts.
1096 #define elm_layout_end_get(_ly) \
1097 elm_layout_content_get((_ly), "elm.swallow.end")
1100 * @def elm_layout_label_set
1101 * Convienience macro to set the label in a layout that follows the
1102 * Elementary naming convention for its parts.
1106 #define elm_layout_label_set(_ly, _txt) \
1107 elm_layout_text_set((_ly), "elm.text", (_txt))
1110 * @def elm_layout_label_get
1111 * Convienience macro to get the label in a layout that follows the
1112 * Elementary naming convention for its parts.
1116 #define elm_layout_label_get(_ly) \
1117 elm_layout_text_get((_ly), "elm.text")
1119 /* smart callbacks called:
1123 typedef enum _Elm_Notify_Orient
1125 ELM_NOTIFY_ORIENT_TOP,
1126 ELM_NOTIFY_ORIENT_CENTER,
1127 ELM_NOTIFY_ORIENT_BOTTOM,
1128 ELM_NOTIFY_ORIENT_LEFT,
1129 ELM_NOTIFY_ORIENT_RIGHT,
1130 ELM_NOTIFY_ORIENT_TOP_LEFT,
1131 ELM_NOTIFY_ORIENT_TOP_RIGHT,
1132 ELM_NOTIFY_ORIENT_BOTTOM_LEFT,
1133 ELM_NOTIFY_ORIENT_BOTTOM_RIGHT,
1134 ELM_NOTIFY_ORIENT_LAST
1135 } Elm_Notify_Orient;
1136 EAPI Evas_Object *elm_notify_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1137 EAPI void elm_notify_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
1138 EAPI Evas_Object *elm_notify_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
1139 EAPI Evas_Object *elm_notify_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1140 EAPI void elm_notify_parent_set(Evas_Object *obj, Evas_Object *parent) EINA_ARG_NONNULL(1);
1141 EAPI Evas_Object *elm_notify_parent_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1142 EAPI void elm_notify_orient_set(Evas_Object *obj, Elm_Notify_Orient orient) EINA_ARG_NONNULL(1);
1143 EAPI Elm_Notify_Orient elm_notify_orient_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1144 EAPI void elm_notify_timeout_set(Evas_Object *obj, double timeout) EINA_ARG_NONNULL(1);
1145 EAPI double elm_notify_timeout_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1146 EAPI void elm_notify_repeat_events_set(Evas_Object *obj, Eina_Bool repeat) EINA_ARG_NONNULL(1);
1147 EAPI Eina_Bool elm_notify_repeat_events_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1148 /* smart callbacks called:
1149 * "timeout" - when timeout happens on notify and it's hidden
1150 * "block,clicked" - when it's hidden by a click outside of the notify's view
1154 typedef enum _Elm_Hover_Axis
1156 ELM_HOVER_AXIS_NONE,
1157 ELM_HOVER_AXIS_HORIZONTAL,
1158 ELM_HOVER_AXIS_VERTICAL,
1161 EAPI Evas_Object *elm_hover_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1162 EAPI void elm_hover_target_set(Evas_Object *obj, Evas_Object *target) EINA_ARG_NONNULL(1);
1163 EAPI Evas_Object *elm_hover_target_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1164 EAPI void elm_hover_parent_set(Evas_Object *obj, Evas_Object *parent) EINA_ARG_NONNULL(1);
1165 EAPI Evas_Object *elm_hover_parent_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1166 EAPI void elm_hover_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content) EINA_ARG_NONNULL(1);
1167 EAPI Evas_Object *elm_hover_content_get(const Evas_Object *obj, const char *swallow) EINA_ARG_NONNULL(1);
1168 EAPI Evas_Object *elm_hover_content_unset(Evas_Object *obj, const char *swallow) EINA_ARG_NONNULL(1);
1169 EAPI const char *elm_hover_best_content_location_get(const Evas_Object *obj, Elm_Hover_Axis pref_axis) EINA_ARG_NONNULL(1);
1170 /* available styles:
1176 /* smart callbacks called:
1177 * "clicked" - the user clicked the empty space in the hover to dismiss
1178 * "smart,changed" - a content object placed under the "smart"
1179 * policy was replaced to a new slot direction.
1183 typedef struct _Elm_Entry_Anchor_Info Elm_Entry_Anchor_Info;
1184 struct _Elm_Entry_Anchor_Info
1188 Evas_Coord x, y, w, h;
1190 typedef enum _Elm_Icon_Type
1197 typedef enum _Elm_Input_Panel_Layout
1199 ELM_INPUT_PANEL_LAYOUT_NORMAL, /**< Default 4x4 layout */
1200 ELM_INPUT_PANEL_LAYOUT_NUMBER, /**< Number layout */
1201 ELM_INPUT_PANEL_LAYOUT_EMAIL, /**< Email layout */
1202 ELM_INPUT_PANEL_LAYOUT_URL, /**< URL layout */
1203 ELM_INPUT_PANEL_LAYOUT_PHONENUMBER, /**< Phone Number layout */
1204 ELM_INPUT_PANEL_LAYOUT_IP, /**< IP layout */
1205 ELM_INPUT_PANEL_LAYOUT_MONTH, /**< Month layout */
1206 ELM_INPUT_PANEL_LAYOUT_NUMBERONLY, /**< Number Only layout */
1207 ELM_INPUT_PANEL_LAYOUT_CUSTOM_1 = 100, /* Reserved for future use */
1208 ELM_INPUT_PANEL_LAYOUT_CUSTOM_2,
1209 ELM_INPUT_PANEL_LAYOUT_CUSTOM_3,
1210 ELM_INPUT_PANEL_LAYOUT_CUSTOM_4,
1211 ELM_INPUT_PANEL_LAYOUT_CUSTOM_5,
1212 ELM_INPUT_PANEL_LAYOUT_CUSTOM_6,
1213 ELM_INPUT_PANEL_LAYOUT_CUSTOM_7,
1214 ELM_INPUT_PANEL_LAYOUT_CUSTOM_8,
1215 ELM_INPUT_PANEL_LAYOUT_CUSTOM_9,
1216 ELM_INPUT_PANEL_LAYOUT_CUSTOM_10
1217 } Elm_Input_Panel_Layout;
1219 typedef struct _Elm_Hoversel_Item Elm_Hoversel_Item; /**< Item of Elm_Hoversel. Sub-type of Elm_Widget_Item */
1221 EAPI Evas_Object *elm_entry_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1222 EAPI void elm_entry_single_line_set(Evas_Object *obj, Eina_Bool single_line) EINA_ARG_NONNULL(1);
1223 EAPI Eina_Bool elm_entry_single_line_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1224 EAPI void elm_entry_password_set(Evas_Object *obj, Eina_Bool password) EINA_ARG_NONNULL(1);
1225 EAPI Eina_Bool elm_entry_password_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1226 EAPI void elm_entry_entry_set(Evas_Object *obj, const char *entry) EINA_ARG_NONNULL(1);
1227 EAPI const char *elm_entry_entry_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1228 EAPI const char *elm_entry_selection_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1229 EAPI void elm_entry_entry_insert(Evas_Object *obj, const char *entry) EINA_ARG_NONNULL(1);
1230 EAPI void elm_entry_line_wrap_set(Evas_Object *obj, Eina_Bool wrap) EINA_ARG_NONNULL(1);
1231 EAPI void elm_entry_line_char_wrap_set(Evas_Object *obj, Eina_Bool wrap) EINA_ARG_NONNULL(1);
1232 EAPI void elm_entry_editable_set(Evas_Object *obj, Eina_Bool editable) EINA_ARG_NONNULL(1);
1233 EAPI Eina_Bool elm_entry_editable_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1234 EAPI void elm_entry_select_none(Evas_Object *obj) EINA_ARG_NONNULL(1);
1235 EAPI void elm_entry_select_all(Evas_Object *obj) EINA_ARG_NONNULL(1);
1236 EAPI Eina_Bool elm_entry_cursor_next(Evas_Object *obj) EINA_ARG_NONNULL(1);
1237 EAPI Eina_Bool elm_entry_cursor_prev(Evas_Object *obj) EINA_ARG_NONNULL(1);
1238 EAPI Eina_Bool elm_entry_cursor_up(Evas_Object *obj) EINA_ARG_NONNULL(1);
1239 EAPI Eina_Bool elm_entry_cursor_down(Evas_Object *obj) EINA_ARG_NONNULL(1);
1240 EAPI void elm_entry_cursor_begin_set(Evas_Object *obj) EINA_ARG_NONNULL(1);
1241 EAPI void elm_entry_cursor_end_set(Evas_Object *obj) EINA_ARG_NONNULL(1);
1242 EAPI void elm_entry_cursor_line_begin_set(Evas_Object *obj) EINA_ARG_NONNULL(1);
1243 EAPI void elm_entry_cursor_line_end_set(Evas_Object *obj) EINA_ARG_NONNULL(1);
1244 EAPI void elm_entry_cursor_selection_begin(Evas_Object *obj) EINA_ARG_NONNULL(1);
1245 EAPI void elm_entry_cursor_selection_end(Evas_Object *obj) EINA_ARG_NONNULL(1);
1246 EAPI Eina_Bool elm_entry_cursor_is_format_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1247 EAPI Eina_Bool elm_entry_cursor_is_visible_format_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1248 EAPI const char *elm_entry_cursor_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1249 EAPI Eina_Bool elm_entry_cursor_geometry_get(const Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h) EINA_ARG_NONNULL(1);
1250 EAPI void elm_entry_selection_cut(Evas_Object *obj) EINA_ARG_NONNULL(1);
1251 EAPI void elm_entry_selection_copy(Evas_Object *obj) EINA_ARG_NONNULL(1);
1252 EAPI void elm_entry_selection_paste(Evas_Object *obj) EINA_ARG_NONNULL(1);
1253 EAPI void elm_entry_context_menu_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
1254 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) EINA_ARG_NONNULL(1);
1255 EAPI void elm_entry_context_menu_disabled_set(Evas_Object *obj, Eina_Bool disabled) EINA_ARG_NONNULL(1);
1256 EAPI Eina_Bool elm_entry_context_menu_disabled_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1257 EAPI void elm_entry_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
1258 EAPI void elm_entry_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
1259 EAPI void elm_entry_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
1260 EAPI void elm_entry_text_filter_append(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) EINA_ARG_NONNULL(1, 2);
1261 EAPI void elm_entry_text_filter_prepend(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) EINA_ARG_NONNULL(1, 2);
1262 EAPI void elm_entry_text_filter_remove(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) EINA_ARG_NONNULL(1, 2);
1263 EAPI char *elm_entry_markup_to_utf8(const char *s);
1264 EAPI char *elm_entry_utf8_to_markup(const char *s);
1265 EINA_DEPRECATED EAPI void elm_entry_wrap_width_set(Evas_Object *obj, Evas_Coord w);
1266 EINA_DEPRECATED EAPI Evas_Coord elm_entry_wrap_width_get(const Evas_Object *obj);
1267 EINA_DEPRECATED EAPI void elm_entry_fontsize_set(Evas_Object *obj, int fontsize);
1268 EINA_DEPRECATED EAPI void elm_entry_text_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a);
1269 EINA_DEPRECATED EAPI void elm_entry_text_align_set(Evas_Object *obj, const char *alignmode);
1270 EAPI void elm_entry_background_color_set(Evas_Object *obj, unsigned int r, unsigned int g, unsigned int b, unsigned int a);
1271 EINA_DEPRECATED EAPI void elm_entry_ellipsis_set(Evas_Object *obj, Eina_Bool ellipsis);
1272 EAPI void elm_entry_file_set(Evas_Object *obj, const char *file, Elm_Text_Format format) EINA_ARG_NONNULL(1);
1273 EAPI void elm_entry_file_get(const Evas_Object *obj, const char **file, Elm_Text_Format *format) EINA_ARG_NONNULL(1);
1274 EAPI void elm_entry_file_save(Evas_Object *obj) EINA_ARG_NONNULL(1);
1275 EAPI void elm_entry_autosave_set(Evas_Object *obj, Eina_Bool autosave) EINA_ARG_NONNULL(1);
1276 EAPI Eina_Bool elm_entry_autosave_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1277 EAPI void elm_entry_cnp_textonly_set(Evas_Object *obj, Eina_Bool textonly) EINA_ARG_NONNULL(1);
1278 EAPI Eina_Bool elm_entry_cnp_textonly_get(Evas_Object *obj) EINA_ARG_NONNULL(1);
1279 EAPI void elm_entry_autocapitalization_set(Evas_Object *obj, Eina_Bool autocap);
1280 EAPI void elm_entry_autoperiod_set(Evas_Object *obj, Eina_Bool autoperiod);
1281 EAPI void elm_entry_autoenable_returnkey_set(Evas_Object *obj, Eina_Bool on);
1282 EAPI void elm_entry_input_panel_enabled_set(Evas_Object *obj, Eina_Bool enabled);
1283 EAPI void elm_entry_input_panel_layout_set(Evas_Object *obj, Elm_Input_Panel_Layout layout);
1284 EAPI Ecore_IMF_Context *elm_entry_imf_context_get(Evas_Object *obj);
1285 EAPI void elm_entry_matchlist_set(Evas_Object *obj, Eina_List *match_list, Eina_Bool case_sensitive);
1286 EAPI Eina_Bool elm_entry_is_empty(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1287 EAPI void elm_entry_magnifier_type_set(Evas_Object *obj, int type) EINA_ARG_NONNULL(1);
1290 /* pre-made filters for entries */
1291 typedef struct _Elm_Entry_Filter_Limit_Size Elm_Entry_Filter_Limit_Size;
1292 struct _Elm_Entry_Filter_Limit_Size
1297 EAPI void elm_entry_filter_limit_size(void *data, Evas_Object *entry, char **text) EINA_ARG_NONNULL(1, 2, 3);
1298 typedef struct _Elm_Entry_Filter_Accept_Set Elm_Entry_Filter_Accept_Set;
1299 struct _Elm_Entry_Filter_Accept_Set
1301 const char *accepted;
1302 const char *rejected;
1304 EAPI void elm_entry_filter_accept_set(void *data, Evas_Object *entry, char **text) EINA_ARG_NONNULL(1, 3);
1305 /* smart callbacks called:
1306 * "changed" - the text content changed
1307 * "selection,start" - the user started selecting text
1308 * "selection,changed" - the user modified the selection size/location
1309 * "selection,cleared" - the user cleared the selection
1310 * "selection,paste" - the user requested a paste of text
1311 * "selection,copy" - the user copied the text
1312 * "selection,cut" - the user cut the text
1313 * "cursor,changed" - the cursor changed position
1314 * "anchor,clicked" - achor called was clicked | event_info = Elm_Entry_Anchor_Info
1315 * "activated" - when the enter key is pressed (useful for single line)
1316 * "press" - when finger/mouse is pressed down
1317 * "clicked" - when finger/mouse is pressed and released (without a drag etc.)
1318 * "clicked,double" - when finger/mouse is double-pressed
1319 * "longpressed" - the entry has been longpressed
1320 * "focused" - the entry has received keyboard focus
1321 * "unfocused" - keyboard focus is gone
1325 typedef struct _Elm_Entry_Anchorview_Info Elm_Entry_Anchorview_Info;
1326 struct _Elm_Entry_Anchorview_Info
1332 Evas_Coord x, y, w, h;
1333 } anchor, hover_parent;
1334 Eina_Bool hover_left : 1;
1335 Eina_Bool hover_right : 1;
1336 Eina_Bool hover_top : 1;
1337 Eina_Bool hover_bottom : 1;
1339 EAPI Evas_Object *elm_anchorview_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1340 EAPI void elm_anchorview_text_set(Evas_Object *obj, const char *text) EINA_ARG_NONNULL(1);
1341 EAPI const char *elm_anchorview_text_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1343 EAPI void elm_anchorview_hover_parent_set(Evas_Object *obj, Evas_Object *parent) EINA_ARG_NONNULL(1);
1344 EAPI Evas_Object *elm_anchorview_hover_parent_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1345 EAPI void elm_anchorview_hover_style_set(Evas_Object *obj, const char *style) EINA_ARG_NONNULL(1);
1346 EAPI const char *elm_anchorview_hover_style_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1347 EAPI void elm_anchorview_hover_end(Evas_Object *obj) EINA_ARG_NONNULL(1);
1348 EAPI void elm_anchorview_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce) EINA_ARG_NONNULL(1);
1349 EAPI void elm_anchorview_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce) EINA_ARG_NONNULL(1);
1350 EAPI void elm_anchorview_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorview, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
1351 EAPI void elm_anchorview_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorview, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
1352 EAPI void elm_anchorview_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorview, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
1353 /* smart callbacks called:
1354 * "anchor,clicked" - achor called was clicked | event_info = Elm_Entry_Anchorview_Info
1358 typedef struct _Elm_Entry_Anchorblock_Info Elm_Entry_Anchorblock_Info;
1359 struct _Elm_Entry_Anchorblock_Info
1365 Evas_Coord x, y, w, h;
1366 } anchor, hover_parent;
1367 Eina_Bool hover_left : 1;
1368 Eina_Bool hover_right : 1;
1369 Eina_Bool hover_top : 1;
1370 Eina_Bool hover_bottom : 1;
1372 EAPI Evas_Object *elm_anchorblock_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1373 EAPI void elm_anchorblock_text_set(Evas_Object *obj, const char *text) EINA_ARG_NONNULL(1);
1374 EAPI const char *elm_anchorblock_text_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1375 EAPI void elm_anchorblock_hover_parent_set(Evas_Object *obj, Evas_Object *parent) EINA_ARG_NONNULL(1);
1376 EAPI Evas_Object *elm_anchorblock_hover_parent_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1377 EAPI void elm_anchorblock_hover_style_set(Evas_Object *obj, const char *style) EINA_ARG_NONNULL(1);
1378 EAPI const char *elm_anchorblock_hover_style_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1379 EAPI void elm_anchorblock_hover_end(Evas_Object *obj) EINA_ARG_NONNULL(1);
1380 EAPI void elm_anchorblock_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorblock, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
1381 EAPI void elm_anchorblock_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorblock, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
1382 EAPI void elm_anchorblock_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *anchorblock, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
1383 /* smart callbacks called:
1384 * "anchor,clicked" - achor called was clicked | event_info = Elm_Entry_Anchorblock_Info
1388 EAPI Evas_Object *elm_bubble_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1389 EAPI void elm_bubble_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
1390 EAPI const char *elm_bubble_label_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1391 EAPI void elm_bubble_info_set(Evas_Object *obj, const char *info) EINA_ARG_NONNULL(1);
1392 EAPI const char *elm_bubble_info_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1394 EAPI void elm_bubble_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
1395 EAPI Evas_Object *elm_bubble_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1396 EAPI Evas_Object *elm_bubble_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
1397 EAPI void elm_bubble_icon_set(Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
1398 EAPI Evas_Object *elm_bubble_icon_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1399 EAPI Evas_Object *elm_bubble_icon_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
1400 EAPI void elm_bubble_sweep_layout_set(Evas_Object *obj, Evas_Object *sweep) EINA_ARG_NONNULL(1);
1401 EAPI Evas_Object *elm_bubble_sweep_layout_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
1402 EAPI void elm_bubble_corner_set(Evas_Object *obj, const char *corner) EINA_ARG_NONNULL(1, 2);
1403 EAPI const char *elm_bubble_corner_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1404 /* smart callbacks called:
1405 * "clicked" - the user clicked the bubble
1406 * "sweep,left,right" - when bubble is sweeped from left to right, this signal is sent.
1407 * "sweep,right,left" - when bubble is sweeped from right to left, this signal is sent.
1411 EAPI Evas_Object *elm_photo_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1412 EAPI Eina_Bool elm_photo_file_set(Evas_Object *obj, const char *file) EINA_ARG_NONNULL(1);
1413 EAPI void elm_photo_size_set(Evas_Object *obj, int size) EINA_ARG_NONNULL(1);
1414 EAPI void elm_photo_fill_inside_set(Evas_Object *obj, Eina_Bool fill) EINA_ARG_NONNULL(1);
1415 EAPI void elm_photo_editable_set(Evas_Object *obj, Eina_Bool set) EINA_ARG_NONNULL(1);
1416 /* smart callbacks called:
1417 * "clicked" - the user clicked the icon
1421 typedef enum _Elm_Thumb_Animation_Setting
1423 ELM_THUMB_ANIMATION_START = 0, /* Play animation once */
1424 ELM_THUMB_ANIMATION_LOOP, /* Keep playing animation until stop is requested */
1425 ELM_THUMB_ANIMATION_STOP,
1426 ELM_THUMB_ANIMATION_LAST
1427 } Elm_Thumb_Animation_Setting;
1429 EAPI Evas_Object *elm_thumb_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1430 EAPI void elm_thumb_reload(Evas_Object *obj) EINA_ARG_NONNULL(1);
1431 EAPI void elm_thumb_file_set(Evas_Object *obj, const char *file, const char *key) EINA_ARG_NONNULL(1);
1432 EAPI void elm_thumb_file_get(const Evas_Object *obj, const char **file, const char **key) EINA_ARG_NONNULL(1);
1433 EAPI void elm_thumb_path_get(const Evas_Object *obj, const char **file, const char **key) EINA_ARG_NONNULL(1);
1434 EAPI void elm_thumb_animate_set(Evas_Object *obj, Elm_Thumb_Animation_Setting s) EINA_ARG_NONNULL(1);
1435 EAPI Elm_Thumb_Animation_Setting elm_thumb_animate_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1436 EAPI void *elm_thumb_ethumb_client_get(void);
1437 EAPI Eina_Bool elm_thumb_ethumb_client_connected(void);
1438 EAPI Eina_Bool elm_thumb_editable_set(Evas_Object *obj, Eina_Bool edit) EINA_ARG_NONNULL(1);
1439 EAPI Eina_Bool elm_thumb_editable_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1440 /* available styles:
1444 * smart callbacks called:
1445 * "clicked" - the user clicked the thumb
1446 * "clicked,double" - the user double clicked the thumb
1447 * "press" - the user pressed the thumb
1448 * "generate,start" - the thumbnail generation started
1449 * "generate,stop" - the thumbnail generation stopped
1450 * "generate,error" - the thumbnail generation failed
1451 * "load,error" - the thumbnail image loading failed
1455 EAPI Evas_Object *elm_hoversel_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1456 EAPI void elm_hoversel_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) EINA_ARG_NONNULL(1);
1457 EAPI Eina_Bool elm_hoversel_horizontal_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1458 EAPI void elm_hoversel_hover_parent_set(Evas_Object *obj, Evas_Object *parent) EINA_ARG_NONNULL(1);
1459 EAPI Evas_Object *elm_hoversel_hover_parent_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1460 EAPI void elm_hoversel_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
1461 EAPI const char *elm_hoversel_label_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1462 EAPI void elm_hoversel_icon_set(Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
1463 EAPI Evas_Object *elm_hoversel_icon_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1464 EAPI Evas_Object *elm_hoversel_icon_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
1465 EAPI void elm_hoversel_hover_begin(Evas_Object *obj) EINA_ARG_NONNULL(1);
1466 EAPI void elm_hoversel_hover_end(Evas_Object *obj) EINA_ARG_NONNULL(1);
1467 EAPI Eina_Bool elm_hoversel_expanded_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1468 EAPI void elm_hoversel_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
1469 EAPI const Eina_List *elm_hoversel_items_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1470 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) EINA_ARG_NONNULL(1);
1471 EAPI void elm_hoversel_item_del(Elm_Hoversel_Item *item) EINA_ARG_NONNULL(1);
1472 EAPI void elm_hoversel_item_del_cb_set(Elm_Hoversel_Item *it, Evas_Smart_Cb func) EINA_ARG_NONNULL(1);
1473 EAPI void *elm_hoversel_item_data_get(const Elm_Hoversel_Item *it) EINA_ARG_NONNULL(1);
1474 EAPI const char *elm_hoversel_item_label_get(const Elm_Hoversel_Item *it) EINA_ARG_NONNULL(1);
1475 EAPI void elm_hoversel_item_icon_set(Elm_Hoversel_Item *it, const char *icon_file, const char *icon_group, Elm_Icon_Type icon_type) EINA_ARG_NONNULL(1);
1476 EAPI void elm_hoversel_item_icon_get(const Elm_Hoversel_Item *it, const char **icon_file, const char **icon_group, Elm_Icon_Type *icon_type) EINA_ARG_NONNULL(1);
1477 /* smart callbacks called:
1478 * "clicked" - the user clicked the hoversel button and popped up the sel
1479 * "selected" - an item in the hoversel list is selected
1480 * "dismissed" - the hover is dismissed
1484 typedef enum _Elm_Toolbar_Shrink_Mode
1486 ELM_TOOLBAR_SHRINK_NONE, /**< set toolbar minimun size to fit all the items */
1487 ELM_TOOLBAR_SHRINK_HIDE, /**< hide excess items */
1488 ELM_TOOLBAR_SHRINK_SCROLL, /**< allow accessing excess items through a scroller */
1489 ELM_TOOLBAR_SHRINK_MENU /**< inserts a button to pop up a menu with excess items */
1490 } Elm_Toolbar_Shrink_Mode;
1492 typedef struct _Elm_Toolbar_Item Elm_Toolbar_Item; /**< Item of Elm_Toolbar. Sub-type of Elm_Widget_Item */
1493 typedef struct _Elm_Toolbar_Item_State Elm_Toolbar_Item_State; /** State of a Elm_Toolbar_Item */
1495 EAPI Evas_Object *elm_toolbar_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1496 EAPI void elm_toolbar_icon_size_set(Evas_Object *obj, int icon_size) EINA_ARG_NONNULL(1);
1497 EAPI int elm_toolbar_icon_size_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1498 EAPI void elm_toolbar_icon_order_lookup_set(Evas_Object *obj, Elm_Icon_Lookup_Order order) EINA_ARG_NONNULL(1);
1499 EAPI Elm_Icon_Lookup_Order elm_toolbar_icon_order_lookup_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1500 EAPI void elm_toolbar_no_select_mode_set(Evas_Object *obj, Eina_Bool no_select) EINA_ARG_NONNULL(1);
1501 EAPI Eina_Bool elm_toolbar_no_select_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1502 EAPI Elm_Toolbar_Item *elm_toolbar_item_append(Evas_Object *obj, const char *icon, const char *label, Evas_Smart_Cb func, const void *data) EINA_ARG_NONNULL(1);
1503 EAPI Elm_Toolbar_Item *elm_toolbar_item_prepend(Evas_Object *obj, const char *icon, const char *label, Evas_Smart_Cb func, const void *data) EINA_ARG_NONNULL(1);
1504 EAPI Elm_Toolbar_Item *elm_toolbar_item_insert_before(Evas_Object *obj, Elm_Toolbar_Item *before, const char *icon, const char *label, Evas_Smart_Cb func, const void *data) EINA_ARG_NONNULL(1);
1505 EAPI Elm_Toolbar_Item *elm_toolbar_item_insert_after(Evas_Object *obj, Elm_Toolbar_Item *after, const char *icon, const char *label, Evas_Smart_Cb func, const void *data) EINA_ARG_NONNULL(1);
1506 EAPI Elm_Toolbar_Item *elm_toolbar_first_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1507 EAPI Elm_Toolbar_Item *elm_toolbar_last_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1508 EAPI Elm_Toolbar_Item *elm_toolbar_item_next_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1509 EAPI Elm_Toolbar_Item *elm_toolbar_item_prev_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1510 EAPI Evas_Object *elm_toolbar_item_toolbar_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1511 EAPI void elm_toolbar_item_priority_set(Elm_Toolbar_Item *item, int priority) EINA_ARG_NONNULL(1);
1512 EAPI int elm_toolbar_item_priority_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1513 EAPI const char *elm_toolbar_item_icon_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1514 EAPI const char *elm_toolbar_item_label_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1515 EAPI void elm_toolbar_item_label_set(Elm_Toolbar_Item *item, const char *label) EINA_ARG_NONNULL(1);
1516 EAPI void *elm_toolbar_item_data_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1517 EAPI void elm_toolbar_item_data_set(Elm_Toolbar_Item *item, const void *data) EINA_ARG_NONNULL(1);
1518 EAPI Elm_Toolbar_Item *elm_toolbar_item_find_by_label(const Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
1519 EAPI Eina_Bool elm_toolbar_item_selected_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1520 EAPI void elm_toolbar_item_selected_set(Elm_Toolbar_Item *item, Eina_Bool selected) EINA_ARG_NONNULL(1);
1521 EAPI Elm_Toolbar_Item *elm_toolbar_selected_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1522 EAPI void elm_toolbar_item_icon_set(Elm_Toolbar_Item *item, const char *icon) EINA_ARG_NONNULL(1);
1523 EAPI void elm_toolbar_item_del(Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1524 EAPI void elm_toolbar_item_del_cb_set(Elm_Toolbar_Item *item, Evas_Smart_Cb func) EINA_ARG_NONNULL(1);
1525 EAPI Eina_Bool elm_toolbar_item_disabled_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1526 EAPI void elm_toolbar_item_disabled_set(Elm_Toolbar_Item *item, Eina_Bool disabled) EINA_ARG_NONNULL(1);
1527 EAPI void elm_toolbar_item_separator_set(Elm_Toolbar_Item *item, Eina_Bool separator) EINA_ARG_NONNULL(1);
1528 EAPI Eina_Bool elm_toolbar_item_separator_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1529 EAPI void elm_toolbar_mode_shrink_set(Evas_Object *obj, Elm_Toolbar_Shrink_Mode shrink_mode) EINA_ARG_NONNULL(1);
1530 EAPI Elm_Toolbar_Shrink_Mode elm_toolbar_mode_shrink_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1531 EAPI void elm_toolbar_homogenous_set(Evas_Object *obj, Eina_Bool homogenous) EINA_ARG_NONNULL(1);
1532 EAPI Eina_Bool elm_toolbar_homogenous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1533 EAPI void elm_toolbar_menu_parent_set(Evas_Object *obj, Evas_Object *parent) EINA_ARG_NONNULL(1);
1534 EAPI Evas_Object *elm_toolbar_menu_parent_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1535 EAPI void elm_toolbar_align_set(Evas_Object *obj, double align) EINA_ARG_NONNULL(1);
1536 EAPI double elm_toolbar_align_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1537 EAPI void elm_toolbar_item_menu_set(Elm_Toolbar_Item *item, Eina_Bool menu) EINA_ARG_NONNULL(1);
1538 EAPI Evas_Object *elm_toolbar_item_menu_get(Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1539 EAPI Elm_Toolbar_Item_State *elm_toolbar_item_state_add(Elm_Toolbar_Item *item, const char *icon, const char *label, Evas_Smart_Cb func, const void *data) EINA_ARG_NONNULL(1);
1540 EAPI Eina_Bool elm_toolbar_item_state_del(Elm_Toolbar_Item *item, Elm_Toolbar_Item_State *state) EINA_ARG_NONNULL(1);
1541 EAPI Eina_Bool elm_toolbar_item_state_set(Elm_Toolbar_Item *it, Elm_Toolbar_Item_State *state) EINA_ARG_NONNULL(1);
1542 EAPI void elm_toolbar_item_state_unset(Elm_Toolbar_Item *it) EINA_ARG_NONNULL(1);
1543 EAPI Elm_Toolbar_Item_State *elm_toolbar_item_state_get(const Elm_Toolbar_Item *it) EINA_ARG_NONNULL(1);
1544 EAPI Elm_Toolbar_Item_State *elm_toolbar_item_state_next(Elm_Toolbar_Item *it) EINA_ARG_NONNULL(1);
1545 EAPI Elm_Toolbar_Item_State *elm_toolbar_item_state_prev(Elm_Toolbar_Item *it) EINA_ARG_NONNULL(1);
1546 EAPI void elm_toolbar_item_tooltip_text_set(Elm_Toolbar_Item *item, const char *text) EINA_ARG_NONNULL(1);
1547 EAPI void elm_toolbar_item_tooltip_content_cb_set(Elm_Toolbar_Item *item, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb) EINA_ARG_NONNULL(1);
1548 EAPI void elm_toolbar_item_tooltip_unset(Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1549 EAPI void elm_toolbar_item_tooltip_style_set(Elm_Toolbar_Item *item, const char *style) EINA_ARG_NONNULL(1);
1550 EAPI const char *elm_toolbar_item_tooltip_style_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1551 EAPI void elm_toolbar_item_cursor_set(Elm_Toolbar_Item *item, const char *cursor) EINA_ARG_NONNULL(1);
1552 EAPI const char *elm_toolbar_item_cursor_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1553 EAPI void elm_toolbar_item_cursor_unset(Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1554 EAPI void elm_toolbar_item_cursor_style_set(Elm_Toolbar_Item *item, const char *style) EINA_ARG_NONNULL(1);
1555 EAPI const char *elm_toolbar_item_cursor_style_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1556 EAPI void elm_toolbar_item_cursor_engine_only_set(Elm_Toolbar_Item *item, Eina_Bool engine_only) EINA_ARG_NONNULL(1);
1557 EAPI Eina_Bool elm_toolbar_item_cursor_engine_only_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
1558 /* smart callbacks called:
1559 * "clicked" - when the user clicks on a toolbar item and becomes selected
1561 /* available styles:
1563 * transparent (no background or shadow, just show the provided content)
1567 EAPI double elm_tooltip_delay_get(void);
1568 EAPI Eina_Bool elm_tooltip_delay_set(double delay);
1569 EAPI void elm_object_tooltip_show(Evas_Object *obj) EINA_ARG_NONNULL(1);
1570 EAPI void elm_object_tooltip_hide(Evas_Object *obj) EINA_ARG_NONNULL(1);
1571 EAPI void elm_object_tooltip_text_set(Evas_Object *obj, const char *text) EINA_ARG_NONNULL(1, 2);
1572 EAPI void elm_object_tooltip_content_cb_set(Evas_Object *obj, Elm_Tooltip_Content_Cb func, const void *data, Evas_Smart_Cb del_cb) EINA_ARG_NONNULL(1);
1573 EAPI void elm_object_tooltip_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
1574 EAPI void elm_object_tooltip_style_set(Evas_Object *obj, const char *style) EINA_ARG_NONNULL(1);
1575 EAPI const char *elm_object_tooltip_style_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1576 EAPI void elm_object_cursor_set(Evas_Object *obj, const char *cursor) EINA_ARG_NONNULL(1);
1577 EAPI const char *elm_object_cursor_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1578 EAPI void elm_object_cursor_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
1579 EAPI void elm_object_cursor_style_set(Evas_Object *obj, const char *style) EINA_ARG_NONNULL(1);
1580 EAPI const char *elm_object_cursor_style_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1581 EAPI void elm_object_cursor_engine_only_set(Evas_Object *obj, Eina_Bool engine_only) EINA_ARG_NONNULL(1);
1582 EAPI Eina_Bool elm_object_cursor_engine_only_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1585 EAPI int elm_cursor_engine_only_get(void);
1586 EAPI Eina_Bool elm_cursor_engine_only_set(int engine_only);
1589 typedef struct _Elm_Menu_Item Elm_Menu_Item; /**< Item of Elm_Menu. Sub-type of Elm_Widget_Item */
1590 EAPI Evas_Object *elm_menu_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1591 EAPI void elm_menu_parent_set(Evas_Object *obj, Evas_Object *parent) EINA_ARG_NONNULL(1);
1592 EAPI Evas_Object *elm_menu_parent_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1593 EAPI void elm_menu_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y) EINA_ARG_NONNULL(1);
1594 EAPI Evas_Object *elm_menu_object_get(const Elm_Menu_Item *it) EINA_ARG_NONNULL(1);
1595 EAPI Elm_Menu_Item *elm_menu_item_add(Evas_Object *obj, Elm_Menu_Item *parent, const char *icon, const char *label, Evas_Smart_Cb func, const void *data) EINA_ARG_NONNULL(1);
1596 EAPI void elm_menu_item_label_set(Elm_Menu_Item *item, const char *label) EINA_ARG_NONNULL(1);
1597 EAPI const char *elm_menu_item_label_get(const Elm_Menu_Item *item) EINA_ARG_NONNULL(1);
1598 EAPI void elm_menu_item_icon_set(Elm_Menu_Item *item, const char *icon) EINA_ARG_NONNULL(1, 2);
1599 EAPI const char *elm_menu_item_icon_get(const Elm_Menu_Item *item) EINA_ARG_NONNULL(1);
1600 EAPI const Evas_Object *elm_menu_item_object_icon_get(const Elm_Menu_Item *item) EINA_ARG_NONNULL(1);
1601 EAPI void elm_menu_item_disabled_set(Elm_Menu_Item *item, Eina_Bool disabled) EINA_ARG_NONNULL(1);
1602 EAPI Eina_Bool elm_menu_item_disabled_get(const Elm_Menu_Item *item) EINA_ARG_NONNULL(1);
1603 EAPI Elm_Menu_Item *elm_menu_item_separator_add(Evas_Object *obj, Elm_Menu_Item *parent) EINA_ARG_NONNULL(1);
1604 EAPI Eina_Bool elm_menu_item_is_separator(Elm_Menu_Item *item) EINA_ARG_NONNULL(1);
1605 EAPI void elm_menu_item_del(Elm_Menu_Item *item) EINA_ARG_NONNULL(1);
1606 EAPI void elm_menu_item_del_cb_set(Elm_Menu_Item *it, Evas_Smart_Cb func) EINA_ARG_NONNULL(1);
1607 EAPI void *elm_menu_item_data_get(const Elm_Menu_Item *it) EINA_ARG_NONNULL(1);
1608 EAPI void elm_menu_item_data_set(Elm_Menu_Item *item, const void *data) EINA_ARG_NONNULL(1);
1609 EAPI const Eina_List *elm_menu_item_subitems_get(const Elm_Menu_Item *item) EINA_ARG_NONNULL(1);
1610 /* smart callbacks called:
1611 * "clicked" - the user clicked the empty space in the menu to dismiss. event_info is NULL.
1615 typedef enum _Elm_List_Mode
1617 ELM_LIST_COMPRESS = 0,
1623 typedef struct _Elm_List_Item Elm_List_Item; /**< Item of Elm_List. Sub-type of Elm_Widget_Item */
1624 EAPI Evas_Object *elm_list_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1625 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) EINA_ARG_NONNULL(1);
1626 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) EINA_ARG_NONNULL(1);
1627 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) EINA_ARG_NONNULL(1, 2);
1628 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) EINA_ARG_NONNULL(1, 2);
1629 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) EINA_ARG_NONNULL(1);
1630 EAPI void elm_list_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
1631 EAPI void elm_list_go(Evas_Object *obj) EINA_ARG_NONNULL(1);
1632 EAPI void elm_list_multi_select_set(Evas_Object *obj, Eina_Bool multi) EINA_ARG_NONNULL(1);
1633 EAPI Eina_Bool elm_list_multi_select_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1634 EAPI void elm_list_mode_set(Evas_Object *obj, Elm_List_Mode mode) EINA_ARG_NONNULL(1);
1635 EAPI Elm_List_Mode elm_list_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1636 EAPI void elm_list_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) EINA_ARG_NONNULL(1);
1637 EAPI Eina_Bool elm_list_horizontal_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1638 EAPI void elm_list_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select) EINA_ARG_NONNULL(1);
1639 EAPI Eina_Bool elm_list_always_select_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1640 EAPI const Eina_List *elm_list_items_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1641 EAPI Elm_List_Item *elm_list_selected_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1642 EAPI const Eina_List *elm_list_selected_items_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1643 EAPI void elm_list_item_separator_set(Elm_List_Item *it, Eina_Bool setting) EINA_ARG_NONNULL(1);
1644 EAPI Eina_Bool elm_list_item_separator_get(const Elm_List_Item *it) EINA_ARG_NONNULL(1);
1645 EAPI void elm_list_item_selected_set(Elm_List_Item *item, Eina_Bool selected) EINA_ARG_NONNULL(1);
1646 EAPI Eina_Bool elm_list_item_selected_get(const Elm_List_Item *item) EINA_ARG_NONNULL(1);
1647 EAPI void elm_list_item_show(Elm_List_Item *item) EINA_ARG_NONNULL(1);
1648 EAPI void elm_list_item_bring_in(Elm_List_Item *item) EINA_ARG_NONNULL(1);
1649 EAPI void elm_list_item_del(Elm_List_Item *item) EINA_ARG_NONNULL(1);
1650 EAPI void elm_list_item_del_cb_set(Elm_List_Item *item, Evas_Smart_Cb func) EINA_ARG_NONNULL(1);
1651 EAPI void *elm_list_item_data_get(const Elm_List_Item *item) EINA_ARG_NONNULL(1);
1652 EAPI Evas_Object *elm_list_item_icon_get(const Elm_List_Item *item) EINA_ARG_NONNULL(1);
1653 EAPI void elm_list_item_icon_set(Elm_List_Item *item, Evas_Object *icon) EINA_ARG_NONNULL(1);
1654 EAPI Evas_Object *elm_list_item_end_get(const Elm_List_Item *item) EINA_ARG_NONNULL(1);
1655 EAPI void elm_list_item_end_set(Elm_List_Item *item, Evas_Object *end) EINA_ARG_NONNULL(1);
1656 EAPI Evas_Object *elm_list_item_base_get(const Elm_List_Item *item) EINA_ARG_NONNULL(1);
1657 EAPI const char *elm_list_item_label_get(const Elm_List_Item *item) EINA_ARG_NONNULL(1);
1658 EAPI void elm_list_item_label_set(Elm_List_Item *item, const char *text) EINA_ARG_NONNULL(1);
1659 EAPI Elm_List_Item *elm_list_item_prev(const Elm_List_Item *it) EINA_ARG_NONNULL(1);
1660 EAPI Elm_List_Item *elm_list_item_next(const Elm_List_Item *it) EINA_ARG_NONNULL(1);
1661 EAPI void elm_list_item_tooltip_text_set(Elm_List_Item *item, const char *text) EINA_ARG_NONNULL(1);
1662 EAPI void elm_list_item_tooltip_content_cb_set(Elm_List_Item *item, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb) EINA_ARG_NONNULL(1);
1663 EAPI void elm_list_item_tooltip_unset(Elm_List_Item *item) EINA_ARG_NONNULL(1);
1664 EAPI void elm_list_item_tooltip_style_set(Elm_List_Item *item, const char *style) EINA_ARG_NONNULL(1);
1665 EAPI const char *elm_list_item_tooltip_style_get(const Elm_List_Item *item) EINA_ARG_NONNULL(1);
1666 EAPI void elm_list_item_cursor_set(Elm_List_Item *item, const char *cursor) EINA_ARG_NONNULL(1);
1667 EAPI const char *elm_list_item_cursor_get(const Elm_List_Item *item) EINA_ARG_NONNULL(1);
1668 EAPI void elm_list_item_cursor_unset(Elm_List_Item *item) EINA_ARG_NONNULL(1);
1669 EAPI void elm_list_item_cursor_style_set(Elm_List_Item *item, const char *style) EINA_ARG_NONNULL(1);
1670 EAPI const char *elm_list_item_cursor_style_get(const Elm_List_Item *item) EINA_ARG_NONNULL(1);
1671 EAPI void elm_list_item_cursor_engine_only_set(Elm_List_Item *item, Eina_Bool engine_only) EINA_ARG_NONNULL(1);
1672 EAPI Eina_Bool elm_list_item_cursor_engine_only_get(const Elm_List_Item *item) EINA_ARG_NONNULL(1);
1673 EAPI void elm_list_item_disabled_set(Elm_List_Item *it, Eina_Bool disabled) EINA_ARG_NONNULL(1);
1674 EAPI Eina_Bool elm_list_item_disabled_get(const Elm_List_Item *it) EINA_ARG_NONNULL(1);
1675 EAPI void elm_list_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce) EINA_ARG_NONNULL(1);
1676 EAPI void elm_list_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce) EINA_ARG_NONNULL(1);
1677 EAPI void elm_list_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v) EINA_ARG_NONNULL(1);
1678 EAPI void elm_list_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v) EINA_ARG_NONNULL(1);
1679 /* smart callbacks called:
1680 * "clicked" - when the user double-clicked an item
1681 * "selected" - when the user selected an item
1682 * "unselected" - when the user selected an item
1683 * "longpressed" - an item in the hoversel list is long-pressed
1684 * "scroll,edge,top" - the list is scrolled until the top edge
1685 * "scroll,edge,bottom" - the list is scrolled until the bottom edge
1686 * "scroll,edge,left" - the list is scrolled until the left edge
1687 * "scroll,edge,right" - the list is scrolled until the right edge
1690 // FIXME: incomplete - carousel. don't use this until this comment is removed
1691 typedef struct _Elm_Carousel_Item Elm_Carousel_Item;
1692 EAPI Evas_Object *elm_carousel_add(Evas_Object *parent);
1693 EAPI Elm_Carousel_Item *elm_carousel_item_add(Evas_Object *obj, Evas_Object *icon, const char *label, Evas_Smart_Cb func, const void *data);
1694 EAPI void elm_carousel_item_del(Elm_Carousel_Item *item);
1695 EAPI void elm_carousel_item_select(Elm_Carousel_Item *item);
1696 /* smart callbacks called:
1697 * "clicked" - when the user clicks on a carousel item and becomes selected
1701 EAPI Evas_Object *elm_slider_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1702 EAPI void elm_slider_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
1703 EAPI const char *elm_slider_label_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1704 EAPI void elm_slider_icon_set(Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
1705 EAPI Evas_Object *elm_slider_icon_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
1706 EAPI Evas_Object *elm_slider_icon_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1707 EAPI void elm_slider_end_set(Evas_Object *obj, Evas_Object *end) EINA_ARG_NONNULL(1);
1708 EAPI Evas_Object *elm_slider_end_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
1709 EAPI Evas_Object *elm_slider_end_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1710 EAPI void elm_slider_span_size_set(Evas_Object *obj, Evas_Coord size) EINA_ARG_NONNULL(1);
1711 EAPI Evas_Coord elm_slider_span_size_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1712 EAPI void elm_slider_unit_format_set(Evas_Object *obj, const char *format) EINA_ARG_NONNULL(1);
1713 EAPI const char *elm_slider_unit_format_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1714 EAPI void elm_slider_indicator_format_set(Evas_Object *obj, const char *indicator) EINA_ARG_NONNULL(1);
1715 EAPI const char *elm_slider_indicator_format_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1716 EAPI void elm_slider_indicator_format_function_set(Evas_Object *obj, const char *(*func)(double val)) EINA_ARG_NONNULL(1);
1717 EAPI void elm_slider_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) EINA_ARG_NONNULL(1);
1718 EAPI Eina_Bool elm_slider_horizontal_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1719 EAPI void elm_slider_min_max_set(Evas_Object *obj, double min, double max) EINA_ARG_NONNULL(1);
1720 EAPI void elm_slider_min_max_get(const Evas_Object *obj, double *min, double *max) EINA_ARG_NONNULL(1);
1721 EAPI void elm_slider_value_set(Evas_Object *obj, double val) EINA_ARG_NONNULL(1);
1722 EAPI double elm_slider_value_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1723 EAPI void elm_slider_inverted_set(Evas_Object *obj, Eina_Bool inverted) EINA_ARG_NONNULL(1);
1724 EAPI Eina_Bool elm_slider_inverted_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1725 EAPI void elm_slider_indicator_show_set(Evas_Object *obj, Eina_Bool show) EINA_ARG_NONNULL(1);
1726 EAPI Eina_Bool elm_slider_indicator_show_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1727 /* smart callbacks called:
1728 * "changed" - Whenever the slider value is changed by the user.
1730 * "delay,changed" - A short time after the value is changed by the user.
1731 * This will be called only when the user stops dragging for a very short
1732 * period or when they release their finger/mouse, so it avoids possibly
1733 * expensive reactions to the value change.
1735 * "slider,drag,start" - dragging the slider indicator around has started
1737 * "slider,drag,stop" - dragging the slider indicator around has stopped
1741 typedef enum _Elm_Genlist_Item_Flags
1743 ELM_GENLIST_ITEM_NONE = 0,
1744 ELM_GENLIST_ITEM_SUBITEMS = (1 << 0),
1745 ELM_GENLIST_ITEM_GROUP = (1 << 1)
1746 } Elm_Genlist_Item_Flags;
1747 typedef struct _Elm_Genlist_Item_Class Elm_Genlist_Item_Class;
1748 typedef struct _Elm_Genlist_Item Elm_Genlist_Item; /**< Item of Elm_Genlist. Sub-type of Elm_Widget_Item */
1749 typedef struct _Elm_Genlist_Item_Class_Func Elm_Genlist_Item_Class_Func;
1750 typedef char *(*GenlistItemLabelGetFunc) (const void *data, Evas_Object *obj, const char *part);
1751 typedef Evas_Object *(*GenlistItemIconGetFunc) (const void *data, Evas_Object *obj, const char *part);
1752 typedef Eina_Bool (*GenlistItemStateGetFunc) (const void *data, Evas_Object *obj, const char *part);
1753 typedef void (*GenlistItemDelFunc) (const void *data, Evas_Object *obj);
1755 typedef struct _Elm_Genlist_Edit_Class Elm_Genlist_Edit_Class;
1756 typedef enum _Elm_Genlist_Edit_Mode
1758 ELM_GENLIST_EDIT_MODE_NONE = 0,
1759 ELM_GENLIST_EDIT_MODE_REORDER = (1 << 0),
1760 ELM_GENLIST_EDIT_MODE_INSERT = (1 << 1),
1761 ELM_GENLIST_EDIT_MODE_DELETE = (1 << 2),
1762 ELM_GENLIST_EDIT_MODE_SELECT = (1 << 3),
1763 ELM_GENLIST_EDIT_MODE_SELECTALL = (1 << 4)
1764 } Elm_Genlist_Edit_Mode;
1765 // TODO : below should be fixed!!!
1766 typedef char *(*GenlistItemLabelChangedFunc) (const void *data, Elm_Genlist_Item *it, const char *text, const int sub_text );
1767 typedef int (*GenlistItemEditModeGetFunc) (const void *data, Evas_Object *obj, const int enabled_edit_modes);
1768 typedef void (*GenlistInsertNewFunc) (Evas_Object *genlist, Elm_Genlist_Item *rel_item);
1769 typedef void (*GenlistItemSelectedFunc) (const void *data, Elm_Genlist_Item *it, Eina_Bool selected);
1770 typedef void (*GenlistSelectedFunc) (const void *data, Elm_Genlist_Item *it, Eina_Bool selected);
1771 typedef Eina_Bool (*GenlistMoveFunc) ( Evas_Object *genlist, Elm_Genlist_Item *item, Elm_Genlist_Item *rel_item, Eina_Bool move_after);
1772 typedef Eina_Bool (*GenlistRemoveItemFunc) (Evas_Object *genlist, Elm_Genlist_Item *rel_item);
1774 struct _Elm_Genlist_Item_Class
1776 const char *item_style;
1778 GenlistItemLabelGetFunc label_get;
1779 GenlistItemIconGetFunc icon_get;
1780 GenlistItemStateGetFunc state_get;
1781 GenlistItemDelFunc del;
1782 GenlistItemEditModeGetFunc editmode_get;
1783 GenlistItemLabelChangedFunc label_changed;
1787 struct _Elm_Genlist_Edit_Class
1789 GenlistRemoveItemFunc remove;
1790 GenlistInsertNewFunc insert_new;
1791 GenlistMoveFunc move;
1792 GenlistItemSelectedFunc item_selected;
1793 GenlistSelectedFunc selected;
1794 const char *item_style;
1795 const char *select_all_item_style;
1796 const void *select_all_data;
1798 EAPI Evas_Object *elm_genlist_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1799 EAPI void elm_genlist_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
1800 EAPI void elm_genlist_multi_select_set(Evas_Object *obj, Eina_Bool multi) EINA_ARG_NONNULL(1);
1801 EAPI Eina_Bool elm_genlist_multi_select_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1802 EAPI void elm_genlist_horizontal_mode_set(Evas_Object *obj, Elm_List_Mode mode) EINA_ARG_NONNULL(1);
1803 EAPI Elm_List_Mode elm_genlist_horizontal_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1804 EAPI void elm_genlist_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select) EINA_ARG_NONNULL(1);
1805 EAPI Eina_Bool elm_genlist_always_select_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1806 EAPI void elm_genlist_no_select_mode_set(Evas_Object *obj, Eina_Bool no_select) EINA_ARG_NONNULL(1);
1807 EAPI Eina_Bool elm_genlist_no_select_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1808 EAPI void elm_genlist_compress_mode_set(Evas_Object *obj, Eina_Bool compress) EINA_ARG_NONNULL(1);
1809 EAPI Eina_Bool elm_genlist_compress_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1810 EAPI void elm_genlist_height_for_width_mode_set(Evas_Object *obj, Eina_Bool height_for_width) EINA_ARG_NONNULL(1);
1811 EAPI Eina_Bool elm_genlist_height_for_width_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1812 EAPI void elm_genlist_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce) EINA_ARG_NONNULL(1);
1813 EAPI void elm_genlist_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce) EINA_ARG_NONNULL(1);
1814 EAPI void elm_genlist_homogeneous_set(Evas_Object *obj, Eina_Bool homogeneous) EINA_ARG_NONNULL(1);
1815 EAPI Eina_Bool elm_genlist_homogeneous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1816 EAPI void elm_genlist_block_count_set(Evas_Object *obj, int n) EINA_ARG_NONNULL(1);
1817 EAPI int elm_genlist_block_count_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1818 EAPI void elm_genlist_longpress_timeout_set(Evas_Object *obj, double timeout) EINA_ARG_NONNULL(1);
1819 EAPI double elm_genlist_longpress_timeout_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1820 /* operations to add items */
1821 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) EINA_ARG_NONNULL(1);
1822 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) EINA_ARG_NONNULL(1);
1823 EAPI Elm_Genlist_Item *elm_genlist_item_insert_before(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item *before, Elm_Genlist_Item_Flags flags, Evas_Smart_Cb func, const void *func_data) EINA_ARG_NONNULL(1, 5);
1824 EAPI Elm_Genlist_Item *elm_genlist_item_insert_after(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item *after, Elm_Genlist_Item_Flags flags, Evas_Smart_Cb func, const void *func_data) EINA_ARG_NONNULL(1, 5);
1825 /* operations to retrieve existing items */
1826 EAPI Elm_Genlist_Item *elm_genlist_selected_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1827 EAPI const Eina_List *elm_genlist_selected_items_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1828 EAPI Eina_List *elm_genlist_realized_items_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1829 EAPI Elm_Genlist_Item *elm_genlist_at_xy_item_get(const Evas_Object *obj, Evas_Coord x, Evas_Coord y, int *posret) EINA_ARG_NONNULL(1);
1830 EAPI Elm_Genlist_Item *elm_genlist_first_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1831 EAPI Elm_Genlist_Item *elm_genlist_last_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1832 EAPI void elm_genlist_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v) EINA_ARG_NONNULL(1);
1833 EAPI void elm_genlist_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v) EINA_ARG_NONNULL(1);
1834 /* available item styles:
1836 * default_style - The text part is a textblock
1838 * icon_top_text_bottom
1840 /* Genlist Item operation */
1841 EAPI Elm_Genlist_Item *elm_genlist_item_next_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1842 EAPI Elm_Genlist_Item *elm_genlist_item_prev_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1843 EAPI Evas_Object *elm_genlist_item_genlist_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1844 EAPI Elm_Genlist_Item *elm_genlist_item_parent_get(const Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
1845 EAPI void elm_genlist_item_subitems_clear(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1846 EAPI void elm_genlist_item_selected_set(Elm_Genlist_Item *item, Eina_Bool selected) EINA_ARG_NONNULL(1);
1847 EAPI Eina_Bool elm_genlist_item_selected_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1848 EAPI void elm_genlist_item_expanded_set(Elm_Genlist_Item *item, Eina_Bool expanded) EINA_ARG_NONNULL(1);
1849 EAPI Eina_Bool elm_genlist_item_expanded_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1850 EAPI int elm_genlist_item_expanded_depth_get(const Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
1851 EAPI void elm_genlist_item_disabled_set(Elm_Genlist_Item *item, Eina_Bool disabled) EINA_ARG_NONNULL(1);
1852 EAPI Eina_Bool elm_genlist_item_disabled_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1853 EAPI void elm_genlist_item_display_only_set(Elm_Genlist_Item *it, Eina_Bool display_only) EINA_ARG_NONNULL(1);
1854 EAPI Eina_Bool elm_genlist_item_display_only_get(const Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
1855 EAPI void elm_genlist_item_show(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1856 EAPI void elm_genlist_item_bring_in(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1857 EAPI void elm_genlist_item_top_show(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1858 EAPI void elm_genlist_item_top_bring_in(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1859 EAPI void elm_genlist_item_middle_show(Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
1860 EAPI void elm_genlist_item_middle_bring_in(Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
1861 EAPI void elm_genlist_item_del(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1862 EAPI void *elm_genlist_item_data_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1863 EAPI void elm_genlist_item_data_set(Elm_Genlist_Item *it, const void *data) EINA_ARG_NONNULL(1);
1864 EAPI void elm_genlist_item_icons_orphan(Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
1865 EAPI const Evas_Object *elm_genlist_item_object_get(const Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
1866 EAPI void elm_genlist_item_update(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1867 EAPI void elm_genlist_item_item_class_update(Elm_Genlist_Item *it, const Elm_Genlist_Item_Class *itc) EINA_ARG_NONNULL(1, 2);
1868 EAPI void elm_genlist_item_tooltip_text_set(Elm_Genlist_Item *item, const char *text) EINA_ARG_NONNULL(1);
1869 EAPI void elm_genlist_item_tooltip_content_cb_set(Elm_Genlist_Item *item, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb) EINA_ARG_NONNULL(1);
1870 EAPI void elm_genlist_item_tooltip_unset(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1871 EAPI void elm_genlist_item_tooltip_style_set(Elm_Genlist_Item *item, const char *style) EINA_ARG_NONNULL(1);
1872 EAPI const char *elm_genlist_item_tooltip_style_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1873 EAPI void elm_genlist_item_cursor_set(Elm_Genlist_Item *item, const char *cursor) EINA_ARG_NONNULL(1);
1874 EAPI const char *elm_genlist_item_cursor_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1875 EAPI void elm_genlist_item_cursor_unset(Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1876 EAPI void elm_genlist_item_cursor_style_set(Elm_Genlist_Item *item, const char *style) EINA_ARG_NONNULL(1);
1877 EAPI const char *elm_genlist_item_cursor_style_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1878 EAPI void elm_genlist_item_cursor_engine_only_set(Elm_Genlist_Item *item, Eina_Bool engine_only) EINA_ARG_NONNULL(1);
1879 EAPI Eina_Bool elm_genlist_item_cursor_engine_only_get(const Elm_Genlist_Item *item) EINA_ARG_NONNULL(1);
1881 EAPI void elm_genlist_edit_mode_set(Evas_Object *obj, int emode, Elm_Genlist_Edit_Class *ec);
1882 EAPI Eina_Bool elm_genlist_edit_mode_get(const Evas_Object *obj);
1883 EAPI void elm_genlist_edit_selected_items_del(Evas_Object *obj);
1884 EAPI Eina_List *elm_genlist_edit_selected_items_get(const Evas_Object *obj);
1885 EAPI void elm_genlist_edit_item_selected_set(Elm_Genlist_Item *it, Eina_Bool selected) EINA_ARG_NONNULL(1);
1886 EAPI Eina_Bool elm_genlist_edit_item_selected_get(const Elm_Genlist_Item *it) EINA_ARG_NONNULL(1);
1887 EAPI Evas_Object *elm_genlist_item_rename_mode_set(Elm_Genlist_Item *it, int emode);
1888 EAPI void elm_genlist_item_move_after(Elm_Genlist_Item *it, Elm_Genlist_Item *after );
1889 EAPI void elm_genlist_item_move_before(Elm_Genlist_Item *it, Elm_Genlist_Item *before);
1890 EAPI void elm_genlist_effect_set(const Evas_Object *obj, Eina_Bool emode);
1891 EAPI void elm_genlist_pinch_zoom_set(Evas_Object *obj, Eina_Bool emode);
1892 EAPI void elm_genlist_pinch_zoom_mode_set(Evas_Object *obj, Eina_Bool emode);
1893 EAPI Eina_Bool elm_genlist_pinch_zoom_mode_get(const Evas_Object *obj);
1894 EINA_DEPRECATED EAPI void elm_genlist_set_edit_mode(Evas_Object *obj, int emode, Elm_Genlist_Edit_Class *ec);
1895 EINA_DEPRECATED EAPI void elm_genlist_selected_items_del(Evas_Object *obj);
1896 EINA_DEPRECATED EAPI void elm_genlist_queue_exception_set(const Evas_Object *obj, Eina_Bool emode);
1899 EAPI Evas_Object *elm_check_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1900 EAPI void elm_check_label_set(Evas_Object *obj, const char *label); EINA_ARG_NONNULL(1)
1901 EAPI const char *elm_check_label_get(const Evas_Object *obj); EINA_ARG_NONNULL(1)
1902 EAPI void elm_check_icon_set(Evas_Object *obj, Evas_Object *icon); EINA_ARG_NONNULL(1)
1903 EAPI Evas_Object *elm_check_icon_get(const Evas_Object *obj); EINA_ARG_NONNULL(1)
1904 EAPI Evas_Object *elm_check_icon_unset(Evas_Object *obj); EINA_ARG_NONNULL(1)
1905 EAPI void elm_check_state_set(Evas_Object *obj, Eina_Bool state); EINA_ARG_NONNULL(1)
1906 EAPI Eina_Bool elm_check_state_get(const Evas_Object *obj); EINA_ARG_NONNULL(1)
1907 EAPI void elm_check_state_pointer_set(Evas_Object *obj, Eina_Bool *statep); EINA_ARG_NONNULL(1)
1910 EAPI Evas_Object *elm_radio_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1911 EAPI void elm_radio_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
1912 EAPI const char *elm_radio_label_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1913 EAPI void elm_radio_icon_set(Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
1914 EAPI Evas_Object *elm_radio_icon_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1915 EAPI Evas_Object *elm_radio_icon_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
1916 EAPI void elm_radio_group_add(Evas_Object *obj, Evas_Object *group) EINA_ARG_NONNULL(1);
1917 EAPI void elm_radio_state_value_set(Evas_Object *obj, int value) EINA_ARG_NONNULL(1);
1918 EAPI int elm_radio_state_value_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1919 EAPI void elm_radio_value_set(Evas_Object *obj, int value) EINA_ARG_NONNULL(1);
1920 EAPI int elm_radio_value_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1921 EAPI void elm_radio_value_pointer_set(Evas_Object *obj, int *valuep) EINA_ARG_NONNULL(1);
1923 /* SegmentControl */
1924 typedef struct _Elm_Segment_Item Elm_Segment_Item;
1925 EAPI Evas_Object *elm_segment_control_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1926 EAPI Elm_Segment_Item *elm_segment_control_item_add(Evas_Object *obj, Evas_Object *icon, const char *label) EINA_ARG_NONNULL(1);
1927 EAPI Elm_Segment_Item *elm_segment_control_item_insert_at(Evas_Object *obj, Evas_Object *icon, const char *label, int index) EINA_ARG_NONNULL(1);
1928 EAPI void elm_segment_control_item_del(Elm_Segment_Item *it) EINA_ARG_NONNULL(1);
1929 EAPI void elm_segment_control_item_del_at(Evas_Object *obj, int index) EINA_ARG_NONNULL(1);
1930 EAPI int elm_segment_control_item_count_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1931 EAPI Elm_Segment_Item *elm_segment_control_item_get(const Evas_Object *obj, int index) EINA_ARG_NONNULL(1);
1932 EAPI const char *elm_segment_control_item_label_get(Evas_Object *obj, int index) EINA_ARG_NONNULL(1);
1933 EAPI void elm_segment_control_item_label_set(Elm_Segment_Item* it, const char* label) EINA_ARG_NONNULL(1);
1934 EAPI Evas_Object *elm_segment_control_item_icon_get(const Evas_Object *obj, int index) EINA_ARG_NONNULL(1);
1935 EAPI void elm_segment_control_item_icon_set(Elm_Segment_Item *it, Evas_Object *icon) EINA_ARG_NONNULL(1);
1936 EAPI int elm_segment_control_item_index_get(const Elm_Segment_Item *it) EINA_ARG_NONNULL(1);
1937 EAPI Evas_Object *elm_segment_control_item_object_get(const Elm_Segment_Item *it) EINA_ARG_NONNULL(1);
1938 EAPI Elm_Segment_Item *elm_segment_control_item_selected_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1939 EAPI void elm_segment_control_item_selected_set(Elm_Segment_Item *it, Eina_Bool select) EINA_ARG_NONNULL(1);
1940 EINA_DEPRECATED EAPI int elm_segment_control_get_segment_count(Evas_Object *obj);
1941 EINA_DEPRECATED EAPI Elm_Segment_Item *elm_segment_control_selected_segment_get(const Evas_Object *obj, int *value);
1942 EINA_DEPRECATED EAPI Evas_Object *elm_segment_control_get_segment_icon_at(Evas_Object *obj, unsigned int index);
1943 EINA_DEPRECATED EAPI const char *elm_segment_control_get_segment_label_at(Evas_Object *obj, unsigned int index);
1944 EINA_DEPRECATED EAPI void elm_segment_control_delete_segment_at(Evas_Object *obj, unsigned int index, Eina_Bool animate);
1945 EINA_DEPRECATED EAPI void elm_segment_control_delete_segment(Evas_Object *obj, Elm_Segment_Item *item, Eina_Bool animate);
1946 EINA_DEPRECATED EAPI void elm_segment_control_insert_segment_at(Evas_Object *obj, Evas_Object *icon, const char *label, unsigned int index, Eina_Bool animate);
1947 EINA_DEPRECATED EAPI Elm_Segment_Item *elm_segment_control_add_segment(Evas_Object *obj, Evas_Object *icon, const char *label, Eina_Bool animate);
1948 EINA_DEPRECATED EAPI Evas_Object *elm_segment_control_item_label_object_set(Elm_Segment_Item *item, char *label);
1951 EAPI Evas_Object *elm_page_control_add(Evas_Object *parent);
1952 EAPI void elm_page_control_page_count_set(Evas_Object *obj, unsigned int page_count);
1953 EAPI void elm_page_control_page_id_set(Evas_Object *obj, unsigned int page_id);
1954 EAPI unsigned int elm_page_control_page_id_get(Evas_Object *obj);
1956 EAPI Evas_Object *elm_pager_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1957 EAPI void elm_pager_content_push(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
1958 EAPI void elm_pager_content_pop(Evas_Object *obj) EINA_ARG_NONNULL(1);
1959 EAPI void elm_pager_content_promote(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
1960 EAPI Evas_Object *elm_pager_content_bottom_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1961 EAPI Evas_Object *elm_pager_content_top_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1962 EAPI void elm_pager_to_content_pop(Evas_Object *obj, Evas_Object *content); EINA_ARG_NONNULL(1);
1963 EAPI void elm_pager_animation_disabled_set(Evas_Object *obj, Eina_Bool disable); EINA_ARG_NONNULL(1);
1965 /* available item styles:
1972 typedef struct _Elm_Slideshow_Item_Class Elm_Slideshow_Item_Class;
1973 typedef struct _Elm_Slideshow_Item_Class_Func Elm_Slideshow_Item_Class_Func;
1974 typedef struct _Elm_Slideshow_Item Elm_Slideshow_Item; /**< Item of Elm_Slideshow. Sub-type of Elm_Widget_Item */
1975 typedef Evas_Object *(*SlideshowItemGetFunc) (void *data, Evas_Object *obj);
1976 typedef void (*SlideshowItemDelFunc) (void *data, Evas_Object *obj);
1978 struct _Elm_Slideshow_Item_Class
1980 struct _Elm_Slideshow_Item_Class_Func {
1981 SlideshowItemGetFunc get;
1982 SlideshowItemDelFunc del;
1986 EAPI Evas_Object *elm_slideshow_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
1987 EAPI Elm_Slideshow_Item *elm_slideshow_item_add(Evas_Object *obj, const Elm_Slideshow_Item_Class *itc, const void *data) EINA_ARG_NONNULL(1);
1988 EAPI void elm_slideshow_show(Elm_Slideshow_Item *item) EINA_ARG_NONNULL(1);
1989 EAPI void elm_slideshow_next(Evas_Object *obj) EINA_ARG_NONNULL(1);
1990 EAPI void elm_slideshow_previous(Evas_Object *obj) EINA_ARG_NONNULL(1);
1991 EAPI const Eina_List *elm_slideshow_transitions_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1992 EAPI void elm_slideshow_transition_set(Evas_Object *obj, const char *transition) EINA_ARG_NONNULL(1);
1993 EAPI const char *elm_slideshow_transition_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1994 EAPI void elm_slideshow_timeout_set(Evas_Object *obj ,int timeout) EINA_ARG_NONNULL(1);
1995 EAPI int elm_slideshow_timeout_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1996 EAPI void elm_slideshow_loop_set(Evas_Object *obj, Eina_Bool loop) EINA_ARG_NONNULL(1);
1997 EAPI Eina_Bool elm_slideshow_loop_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
1998 EAPI void elm_slideshow_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
1999 EAPI const Eina_List *elm_slideshow_items_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2000 EAPI void elm_slideshow_item_del(Elm_Slideshow_Item *item) EINA_ARG_NONNULL(1);
2001 EAPI void *elm_slideshow_item_data_get(const Elm_Slideshow_Item *item) EINA_ARG_NONNULL(1);
2002 EAPI Elm_Slideshow_Item *elm_slideshow_item_current_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2003 EAPI Evas_Object* elm_slideshow_item_object_get(const Elm_Slideshow_Item* item) EINA_ARG_NONNULL(1);
2004 EAPI const char *elm_slideshow_layout_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2005 EAPI void elm_slideshow_layout_set(Evas_Object *obj, const char *layout) EINA_ARG_NONNULL(1);
2006 EAPI const Eina_List *elm_slideshow_layouts_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2009 typedef enum _Elm_Fileselector_Mode
2011 ELM_FILESELECTOR_LIST = 0,
2012 ELM_FILESELECTOR_GRID,
2013 ELM_FILESELECTOR_LAST
2014 } Elm_Fileselector_Mode;
2016 EAPI Evas_Object *elm_fileselector_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2017 EAPI void elm_fileselector_is_save_set(Evas_Object *obj, Eina_Bool is_save) EINA_ARG_NONNULL(1);
2018 EAPI Eina_Bool elm_fileselector_is_save_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2019 EAPI void elm_fileselector_folder_only_set(Evas_Object *obj, Eina_Bool only) EINA_ARG_NONNULL(1);
2020 EAPI Eina_Bool elm_fileselector_folder_only_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2021 EAPI void elm_fileselector_buttons_ok_cancel_set(Evas_Object *obj, Eina_Bool buttons) EINA_ARG_NONNULL(1);
2022 EAPI Eina_Bool elm_fileselector_buttons_ok_cancel_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2023 EAPI Eina_Bool elm_fileselector_expandable_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2024 EAPI void elm_fileselector_expandable_set(Evas_Object *obj, Eina_Bool expand) EINA_ARG_NONNULL(1);
2025 EAPI void elm_fileselector_path_set(Evas_Object *obj, const char *path) EINA_ARG_NONNULL(1);
2026 EAPI const char *elm_fileselector_path_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2027 EAPI const char *elm_fileselector_selected_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2028 EAPI Eina_Bool elm_fileselector_selected_set(Evas_Object *obj, const char *path) EINA_ARG_NONNULL(1);
2029 EAPI void elm_fileselector_mode_set(Evas_Object *obj, Elm_Fileselector_Mode mode) EINA_ARG_NONNULL(1);
2030 EAPI Elm_Fileselector_Mode elm_fileselector_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2031 /* smart callbacks called:
2032 * "selected" - the user click on a file
2033 * "directory,open" - the list is populate with a new content. event_info is a directory.
2034 * "done" - the user click on the ok or cancel buttons
2038 EAPI Evas_Object *elm_progressbar_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2039 EAPI void elm_progressbar_pulse_set(Evas_Object *obj, Eina_Bool pulse) EINA_ARG_NONNULL(1);
2040 EAPI Eina_Bool elm_progressbar_pulse_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2041 EAPI void elm_progressbar_pulse(Evas_Object *obj, Eina_Bool state) EINA_ARG_NONNULL(1);
2042 EAPI void elm_progressbar_value_set(Evas_Object *obj, double val) EINA_ARG_NONNULL(1);
2043 EAPI double elm_progressbar_value_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2044 EAPI void elm_progressbar_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
2045 EAPI const char *elm_progressbar_label_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2046 EAPI void elm_progressbar_icon_set(Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1);
2047 EAPI Evas_Object *elm_progressbar_icon_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2048 EAPI Evas_Object *elm_progressbar_icon_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
2049 EAPI void elm_progressbar_span_size_set(Evas_Object *obj, Evas_Coord size) EINA_ARG_NONNULL(1);
2050 EAPI Evas_Coord elm_progressbar_span_size_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2051 EAPI void elm_progressbar_unit_format_set(Evas_Object *obj, const char *format) EINA_ARG_NONNULL(1);
2052 EAPI const char *elm_progressbar_unit_format_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2053 EAPI void elm_progressbar_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) EINA_ARG_NONNULL(1);
2054 EAPI Eina_Bool elm_progressbar_horizontal_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2055 EAPI void elm_progressbar_inverted_set(Evas_Object *obj, Eina_Bool inverted) EINA_ARG_NONNULL(1);
2056 EAPI Eina_Bool elm_progressbar_inverted_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2057 /* smart callbacks called:
2059 /* available item styles:
2061 * wheel (simple style, no text, no progression, only pulse is available)
2065 EAPI Evas_Object *elm_separator_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2066 EAPI void elm_separator_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) EINA_ARG_NONNULL(1);
2067 EAPI Eina_Bool elm_separator_horizontal_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2068 /* smart callbacks called:
2072 EAPI Evas_Object *elm_spinner_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2073 EAPI void elm_spinner_label_format_set(Evas_Object *obj, const char *fmt) EINA_ARG_NONNULL(1);
2074 EAPI const char *elm_spinner_label_format_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2075 EAPI void elm_spinner_min_max_set(Evas_Object *obj, double min, double max) EINA_ARG_NONNULL(1);
2076 EAPI void elm_spinner_min_max_get(const Evas_Object *obj, double *min, double *max) EINA_ARG_NONNULL(1);
2077 EAPI void elm_spinner_step_set(Evas_Object *obj, double step) EINA_ARG_NONNULL(1);
2078 EAPI double elm_spinner_step_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2079 EAPI void elm_spinner_value_set(Evas_Object *obj, double val) EINA_ARG_NONNULL(1);
2080 EAPI double elm_spinner_value_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2081 EAPI void elm_spinner_wrap_set(Evas_Object *obj, Eina_Bool wrap) EINA_ARG_NONNULL(1);
2082 EAPI Eina_Bool elm_spinner_wrap_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2083 EAPI void elm_spinner_editable_set(Evas_Object *obj, Eina_Bool editable) EINA_ARG_NONNULL(1);
2084 EAPI Eina_Bool elm_spinner_editable_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2085 EAPI void elm_spinner_special_value_add(Evas_Object *obj, double value, const char *label) EINA_ARG_NONNULL(1);
2086 EAPI void elm_spinner_interval_set(Evas_Object *obj, double interval) EINA_ARG_NONNULL(1);
2087 EAPI double elm_spinner_interval_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2088 /* smart callbacks called:
2089 * "changed" - when the spinner value changes
2090 * "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).
2092 /* available item styles:
2094 * vertical (two up/down buttons at the right side and text left aligned)
2097 typedef struct _Elm_Index_Item Elm_Index_Item;
2098 EAPI Evas_Object *elm_index_add(Evas_Object *parent);
2099 EAPI void elm_index_active_set(Evas_Object *obj, Eina_Bool active);
2100 EAPI void elm_index_item_level_set(Evas_Object *obj, int level);
2101 EAPI int elm_index_item_level_get(const Evas_Object *obj);
2102 EAPI const void *elm_index_item_selected_get(const Evas_Object *obj, int level);
2103 EAPI void elm_index_item_append(Evas_Object *obj, const char *letter, const void *item);
2104 EAPI void elm_index_item_prepend(Evas_Object *obj, const char *letter, const void *item);
2105 EAPI void elm_index_item_append_relative(Evas_Object *obj, const char *letter, const void *item, const void *relative);
2106 EAPI void elm_index_item_prepend_relative(Evas_Object *obj, const char *letter, const void *item, const void *relative);
2107 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);
2108 EAPI void elm_index_item_del(Evas_Object *obj, const void *item);
2109 EAPI Elm_Index_Item *elm_index_item_find(Evas_Object *obj, const void *item);
2110 EAPI void elm_index_item_clear(Evas_Object *obj);
2111 EAPI void elm_index_item_go(Evas_Object *obj, int level);
2112 EAPI void *elm_index_item_data_get(const Elm_Index_Item *item);
2113 EAPI void elm_index_item_data_set(Elm_Index_Item *it, const void *data);
2114 EAPI const char *elm_index_item_letter_get(const Elm_Index_Item *item);
2115 EAPI void elm_index_button_image_invisible_set(Evas_Object *obj, Eina_Bool invisible);
2116 /* smart callbacks called:
2117 * "changed" - when the selected index item changes
2118 * "delay,changed" - when the selected index item changes, but after some small idle period
2119 * "selected" - when the user releases heir finger and selects an item
2123 typedef enum _Elm_Photocam_Zoom_Mode
2125 ELM_PHOTOCAM_ZOOM_MODE_MANUAL = 0,
2126 ELM_PHOTOCAM_ZOOM_MODE_AUTO_FIT,
2127 ELM_PHOTOCAM_ZOOM_MODE_AUTO_FILL,
2128 ELM_PHOTOCAM_ZOOM_MODE_LAST
2129 } Elm_Photocam_Zoom_Mode;
2131 EAPI Evas_Object *elm_photocam_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2132 EAPI Evas_Load_Error elm_photocam_file_set(Evas_Object *obj, const char *file) EINA_ARG_NONNULL(1);
2133 EAPI const char *elm_photocam_file_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2134 EAPI void elm_photocam_zoom_set(Evas_Object *obj, double zoom) EINA_ARG_NONNULL(1);
2135 EAPI double elm_photocam_zoom_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2136 EAPI void elm_photocam_zoom_mode_set(Evas_Object *obj, Elm_Photocam_Zoom_Mode mode) EINA_ARG_NONNULL(1);
2137 EAPI Elm_Photocam_Zoom_Mode elm_photocam_zoom_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2138 EAPI void elm_photocam_image_size_get(const Evas_Object *obj, int *w, int *h) EINA_ARG_NONNULL(1);
2139 EAPI void elm_photocam_region_get(const Evas_Object *obj, int *x, int *y, int *w, int *h) EINA_ARG_NONNULL(1);
2140 EAPI void elm_photocam_image_region_show(Evas_Object *obj, int x, int y, int w, int h) EINA_ARG_NONNULL(1);
2141 EAPI void elm_photocam_image_region_bring_in(Evas_Object *obj, int x, int y, int w, int h) EINA_ARG_NONNULL(1);
2142 EAPI void elm_photocam_paused_set(Evas_Object *obj, Eina_Bool paused) EINA_ARG_NONNULL(1);
2143 EAPI Eina_Bool elm_photocam_paused_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2144 EAPI Evas_Object *elm_photocam_internal_image_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2145 EAPI void elm_photocam_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce) EINA_ARG_NONNULL(1);
2146 EAPI void elm_photocam_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce) EINA_ARG_NONNULL(1);
2147 /* smart callbacks called:
2148 * "clicked" - when image clicked
2149 * "press" - when mouse/finger held down initially on image
2150 * "longpressed" - when mouse/finger held for long time on image
2151 * "clicked,double" - when mouse/finger double-clicked
2152 * "load" - when photo load begins
2153 * "loaded" - when photo load done
2154 * "load,details" - when detailed image load begins
2155 * "loaded,details" - when detailed image load done
2156 * "zoom,start" - when zooming started
2157 * "zoom,stop" - when zooming stopped
2158 * "zoom,change" - when auto zoom mode changed zoom level
2159 * "scroll - the content has been scrolled (moved)
2160 * "scroll,anim,start" - scrolling animation has started
2161 * "scroll,anim,stop" - scrolling animation has stopped
2162 * "scroll,drag,start" - dragging the contents around has started
2163 * "scroll,drag,stop" - dragging the contents around has stopped
2167 typedef enum _Elm_Map_Zoom_Mode
2169 ELM_MAP_ZOOM_MODE_MANUAL,
2170 ELM_MAP_ZOOM_MODE_AUTO_FIT,
2171 ELM_MAP_ZOOM_MODE_AUTO_FILL,
2172 ELM_MAP_ZOOM_MODE_LAST
2173 } Elm_Map_Zoom_Mode;
2175 typedef enum _Elm_Map_Sources
2177 ELM_MAP_SOURCE_MAPNIK,
2178 ELM_MAP_SOURCE_OSMARENDER,
2179 ELM_MAP_SOURCE_CYCLEMAP,
2180 ELM_MAP_SOURCE_MAPLINT,
2181 ELM_MAP_SOURCE_CUSTOM_1,
2182 ELM_MAP_SOURCE_CUSTOM_2,
2183 ELM_MAP_SOURCE_CUSTOM_3,
2184 ELM_MAP_SOURCE_CUSTOM_4,
2185 ELM_MAP_SOURCE_CUSTOM_5,
2186 ELM_MAP_SOURCE_CUSTOM_6,
2187 ELM_MAP_SOURCE_MODULE,
2191 typedef struct _Elm_Map_Marker Elm_Map_Marker;
2192 typedef struct _Elm_Map_Marker_Class Elm_Map_Marker_Class;
2193 typedef struct _Elm_Map_Group_Class Elm_Map_Group_Class;
2194 typedef Evas_Object *(*ElmMapMarkerGetFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data);
2195 typedef void (*ElmMapMarkerDelFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data, Evas_Object *o);
2196 typedef Evas_Object *(*ElmMapMarkerIconGetFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data);
2197 typedef Evas_Object *(*ElmMapGroupIconGetFunc) (Evas_Object *obj, void *data);
2198 typedef char *(*ElmMapSourceURLFunc) (Evas_Object *obj, int x, int y, int zoom);
2200 EAPI Evas_Object *elm_map_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2201 EAPI void elm_map_zoom_set(Evas_Object *obj, int zoom) EINA_ARG_NONNULL(1);
2202 EAPI double elm_map_zoom_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2203 EAPI void elm_map_zoom_mode_set(Evas_Object *obj, Elm_Map_Zoom_Mode mode) EINA_ARG_NONNULL(1);
2204 EAPI Elm_Map_Zoom_Mode elm_map_zoom_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2205 EAPI void elm_map_geo_region_get(const Evas_Object *obj, double *lon, double *lat) EINA_ARG_NONNULL(1);
2206 EAPI void elm_map_geo_region_bring_in(Evas_Object *obj, double lon, double lat) EINA_ARG_NONNULL(1);
2207 EAPI void elm_map_geo_region_show(Evas_Object *obj, double lon, double lat) EINA_ARG_NONNULL(1);
2208 EAPI void elm_map_paused_set(Evas_Object *obj, Eina_Bool paused) EINA_ARG_NONNULL(1);
2209 EAPI Eina_Bool elm_map_paused_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2210 EAPI void elm_map_paused_markers_set(Evas_Object *obj, Eina_Bool paused) EINA_ARG_NONNULL(1);
2211 EAPI Eina_Bool elm_map_paused_markers_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2212 EAPI void elm_map_utils_downloading_status_get(const Evas_Object *obj, int *try_num, int *finish_num) EINA_ARG_NONNULL(1, 2, 3);
2213 EAPI void elm_map_utils_convert_coord_into_geo(const Evas_Object *obj, int x, int y, int size, double *lon, double *lat);
2214 EAPI void elm_map_utils_convert_geo_into_coord(const Evas_Object *obj, double lon, double lat, int size, int *x, int *y);
2215 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) EINA_ARG_NONNULL(1, 4, 5);
2216 EAPI void elm_map_max_marker_per_group_set(Evas_Object *obj, int max) EINA_ARG_NONNULL(1);
2217 EAPI void elm_map_marker_remove(Elm_Map_Marker *marker) EINA_ARG_NONNULL(1);
2218 EAPI void elm_map_marker_region_get(const Elm_Map_Marker *marker, double *lon, double *lat) EINA_ARG_NONNULL(1);
2219 EAPI void elm_map_marker_bring_in(Elm_Map_Marker *marker) EINA_ARG_NONNULL(1);
2220 EAPI void elm_map_marker_show(Elm_Map_Marker *marker) EINA_ARG_NONNULL(1);
2221 EAPI void elm_map_markers_list_show(Eina_List *markers) EINA_ARG_NONNULL(1);
2222 EAPI Evas_Object *elm_map_marker_object_get(const Elm_Map_Marker *marker) EINA_ARG_NONNULL(1);
2223 EAPI void elm_map_marker_update(Elm_Map_Marker *marker) EINA_ARG_NONNULL(1);
2224 EAPI void elm_map_bubbles_close(Evas_Object *obj) EINA_ARG_NONNULL(1);
2225 EAPI Elm_Map_Group_Class *elm_map_group_class_new(Evas_Object *obj) EINA_ARG_NONNULL(1);
2226 EAPI void elm_map_group_class_style_set(Elm_Map_Group_Class *clas, const char *style) EINA_ARG_NONNULL(1);
2227 EAPI void elm_map_group_class_icon_cb_set(Elm_Map_Group_Class *clas, ElmMapGroupIconGetFunc icon_get) EINA_ARG_NONNULL(1);
2228 EAPI void elm_map_group_class_data_set(Elm_Map_Group_Class *clas, void *data) EINA_ARG_NONNULL(1);
2229 EAPI void elm_map_group_class_zoom_displayed_set(Elm_Map_Group_Class *clas, int zoom) EINA_ARG_NONNULL(1);
2230 EAPI void elm_map_group_class_zoom_grouped_set(Elm_Map_Group_Class *clas, int zoom) EINA_ARG_NONNULL(1);
2231 EAPI void elm_map_group_class_hide_set(Evas_Object *obj, Elm_Map_Group_Class *clas, Eina_Bool hide) EINA_ARG_NONNULL(1, 2);
2232 EAPI Elm_Map_Marker_Class *elm_map_marker_class_new(Evas_Object *obj) EINA_ARG_NONNULL(1);
2233 EAPI void elm_map_marker_class_style_set(Elm_Map_Marker_Class *clas, const char *style) EINA_ARG_NONNULL(1);
2234 EAPI void elm_map_marker_class_icon_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerIconGetFunc icon_get) EINA_ARG_NONNULL(1);
2235 EAPI void elm_map_marker_class_get_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerGetFunc get) EINA_ARG_NONNULL(1);
2236 EAPI void elm_map_marker_class_del_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerDelFunc del) EINA_ARG_NONNULL(1);
2237 EAPI void elm_map_source_set(Evas_Object *obj, Elm_Map_Sources source) EINA_ARG_NONNULL(1);
2238 EAPI Elm_Map_Sources elm_map_source_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2239 EAPI void elm_map_source_custom_api_set(Elm_Map_Sources source, const char *label, int zoom_min, int zoom_max, ElmMapSourceURLFunc url_cb) EINA_ARG_NONNULL(2, 5);
2240 EAPI int elm_map_source_zoom_min_get(Elm_Map_Sources source);
2241 EAPI int elm_map_source_zoom_max_get(Elm_Map_Sources source);
2242 EAPI const char *elm_map_source_name_get(Elm_Map_Sources source);
2243 EAPI void elm_map_user_agent_set(Evas_Object *obj, const char *user_agent) EINA_ARG_NONNULL(1, 2);
2244 EAPI const char *elm_map_user_agent_get(Evas_Object *obj) EINA_ARG_NONNULL(1);
2245 /* smart callbacks called:
2246 * "clicked" - when image clicked
2247 * "press" - when mouse/finger held down initially on image
2248 * "longpressed" - when mouse/finger held for long time on image
2249 * "clicked,double" - when mouse/finger double-clicked
2250 * "load,details" - when detailed image load begins
2251 * "loaded,details" - when detailed image load done
2252 * "zoom,start" - when zooming started
2253 * "zoom,stop" - when zooming stopped
2254 * "zoom,change" - when auto zoom mode changed zoom level
2255 * "scroll - the content has been scrolled (moved)
2256 * "scroll,anim,start" - scrolling animation has started
2257 * "scroll,anim,stop" - scrolling animation has stopped
2258 * "scroll,drag,start" - dragging the contents around has started
2259 * "scroll,drag,stop" - dragging the contents around has stopped
2263 typedef enum _Elm_Panel_Orient
2265 ELM_PANEL_ORIENT_TOP,
2266 ELM_PANEL_ORIENT_BOTTOM,
2267 ELM_PANEL_ORIENT_LEFT,
2268 ELM_PANEL_ORIENT_RIGHT,
2271 EAPI Evas_Object *elm_panel_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2272 EAPI void elm_panel_orient_set(Evas_Object *obj, Elm_Panel_Orient orient) EINA_ARG_NONNULL(1);
2273 EAPI Elm_Panel_Orient elm_panel_orient_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2274 EAPI void elm_panel_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
2275 EAPI Evas_Object *elm_panel_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2276 EAPI Evas_Object *elm_panel_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
2277 EAPI void elm_panel_hidden_set(Evas_Object *obj, Eina_Bool hidden) EINA_ARG_NONNULL(1);
2278 EAPI Eina_Bool elm_panel_hidden_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2279 EAPI void elm_panel_toggle(Evas_Object *obj) EINA_ARG_NONNULL(1);
2285 * Update the minimun height of the bar in the theme. No minimun should be set in the vertical theme
2286 * Add events (move, start ...)
2288 EAPI Evas_Object *elm_panes_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2289 EAPI void elm_panes_content_left_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
2290 EAPI void elm_panes_content_right_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
2291 EAPI Evas_Object *elm_panes_content_left_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2292 EAPI Evas_Object *elm_panes_content_right_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2293 EAPI Evas_Object *elm_panes_content_left_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
2294 EAPI Evas_Object *elm_panes_content_right_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
2295 EAPI double elm_panes_content_left_size_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2296 EAPI void elm_panes_content_left_size_set(Evas_Object *obj, double size) EINA_ARG_NONNULL(1);
2297 EAPI void elm_panes_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) EINA_ARG_NONNULL(1);
2298 EAPI Eina_Bool elm_panes_horizontal_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2299 EAPI void elm_panes_fixed_set(Evas_Object *obj, Eina_Bool fixed) EINA_ARG_NONNULL(1);
2300 EAPI Eina_Bool elm_panes_fixed_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2303 typedef enum _Elm_Flip_Mode
2305 ELM_FLIP_ROTATE_Y_CENTER_AXIS,
2306 ELM_FLIP_ROTATE_X_CENTER_AXIS,
2307 ELM_FLIP_ROTATE_XZ_CENTER_AXIS,
2308 ELM_FLIP_ROTATE_YZ_CENTER_AXIS,
2310 ELM_FLIP_CUBE_RIGHT,
2315 EAPI Evas_Object *elm_flip_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2316 EAPI void elm_flip_content_front_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
2317 EAPI void elm_flip_content_back_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
2318 EAPI Evas_Object *elm_flip_content_front_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2319 EAPI Evas_Object *elm_flip_content_back_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2320 EAPI Evas_Object *elm_flip_content_front_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
2321 EAPI Evas_Object *elm_flip_content_back_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
2322 EAPI Eina_Bool elm_flip_front_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2323 EAPI void elm_flip_perspective_set(Evas_Object *obj, Evas_Coord foc, Evas_Coord x, Evas_Coord y) EINA_ARG_NONNULL(1);
2324 EAPI void elm_flip_go(Evas_Object *obj, Elm_Flip_Mode mode) EINA_ARG_NONNULL(1);
2325 /* smart callbacks called:
2326 * "animate,done" - when a flip animation is finished
2330 EAPI Evas_Object *elm_scrolled_entry_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2331 EAPI void elm_scrolled_entry_single_line_set(Evas_Object *obj, Eina_Bool single_line) EINA_ARG_NONNULL(1);
2332 EAPI Eina_Bool elm_scrolled_entry_single_line_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2333 EAPI void elm_scrolled_entry_password_set(Evas_Object *obj, Eina_Bool password) EINA_ARG_NONNULL(1);
2334 EAPI Eina_Bool elm_scrolled_entry_password_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2335 EAPI void elm_scrolled_entry_entry_set(Evas_Object *obj, const char *entry) EINA_ARG_NONNULL(1);
2336 EAPI const char *elm_scrolled_entry_entry_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2337 EAPI const char *elm_scrolled_entry_selection_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2338 EAPI void elm_scrolled_entry_entry_insert(Evas_Object *obj, const char *entry) EINA_ARG_NONNULL(1);
2339 EAPI void elm_scrolled_entry_line_wrap_set(Evas_Object *obj, Eina_Bool wrap) EINA_ARG_NONNULL(1);
2340 EAPI void elm_scrolled_entry_line_char_wrap_set(Evas_Object *obj, Eina_Bool wrap) EINA_ARG_NONNULL(1);
2341 EAPI void elm_scrolled_entry_editable_set(Evas_Object *obj, Eina_Bool editable) EINA_ARG_NONNULL(1);
2342 EAPI Eina_Bool elm_scrolled_entry_editable_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2343 EAPI void elm_scrolled_entry_select_none(Evas_Object *obj) EINA_ARG_NONNULL(1);
2344 EAPI void elm_scrolled_entry_select_all(Evas_Object *obj) EINA_ARG_NONNULL(1);
2345 EAPI Eina_Bool elm_scrolled_entry_cursor_next(Evas_Object *obj) EINA_ARG_NONNULL(1);
2346 EAPI Eina_Bool elm_scrolled_entry_cursor_prev(Evas_Object *obj) EINA_ARG_NONNULL(1);
2347 EAPI Eina_Bool elm_scrolled_entry_cursor_up(Evas_Object *obj) EINA_ARG_NONNULL(1);
2348 EAPI Eina_Bool elm_scrolled_entry_cursor_down(Evas_Object *obj) EINA_ARG_NONNULL(1);
2349 EAPI void elm_scrolled_entry_cursor_begin_set(Evas_Object *obj) EINA_ARG_NONNULL(1);
2350 EAPI void elm_scrolled_entry_cursor_end_set(Evas_Object *obj) EINA_ARG_NONNULL(1);
2351 EAPI void elm_scrolled_entry_cursor_line_begin_set(Evas_Object *obj) EINA_ARG_NONNULL(1);
2352 EAPI void elm_scrolled_entry_cursor_line_end_set(Evas_Object *obj) EINA_ARG_NONNULL(1);
2353 EAPI void elm_scrolled_entry_cursor_selection_begin(Evas_Object *obj) EINA_ARG_NONNULL(1);
2354 EAPI void elm_scrolled_entry_cursor_selection_end(Evas_Object *obj) EINA_ARG_NONNULL(1);
2355 EAPI Eina_Bool elm_scrolled_entry_cursor_is_format_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2356 EAPI Eina_Bool elm_scrolled_entry_cursor_is_visible_format_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2357 EAPI const char *elm_scrolled_entry_cursor_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2358 EAPI void elm_scrolled_entry_selection_cut(Evas_Object *obj) EINA_ARG_NONNULL(1);
2359 EAPI void elm_scrolled_entry_selection_copy(Evas_Object *obj) EINA_ARG_NONNULL(1);
2360 EAPI void elm_scrolled_entry_selection_paste(Evas_Object *obj) EINA_ARG_NONNULL(1);
2361 EAPI void elm_scrolled_entry_context_menu_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
2362 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) EINA_ARG_NONNULL(1);
2363 EAPI void elm_scrolled_entry_context_menu_disabled_set(Evas_Object *obj, Eina_Bool disabled) EINA_ARG_NONNULL(1);
2364 EAPI Eina_Bool elm_scrolled_entry_context_menu_disabled_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2365 EAPI void elm_scrolled_entry_scrollbar_policy_set(Evas_Object *obj, Elm_Scroller_Policy h, Elm_Scroller_Policy v) EINA_ARG_NONNULL(1);
2366 EAPI void elm_scrolled_entry_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce) EINA_ARG_NONNULL(1);
2367 EAPI void elm_scrolled_entry_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce) EINA_ARG_NONNULL(1);
2368 EAPI void elm_scrolled_entry_icon_set(Evas_Object *obj, Evas_Object *icon) EINA_ARG_NONNULL(1, 2);
2369 EAPI Evas_Object *elm_scrolled_entry_icon_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2370 EAPI Evas_Object *elm_scrolled_entry_icon_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
2371 EAPI void elm_scrolled_entry_icon_visible_set(Evas_Object *obj, Eina_Bool setting) EINA_ARG_NONNULL(1);
2372 EAPI void elm_scrolled_entry_end_set(Evas_Object *obj, Evas_Object *end) EINA_ARG_NONNULL(1, 2);
2373 EAPI Evas_Object *elm_scrolled_entry_end_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2374 EAPI Evas_Object *elm_scrolled_entry_end_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
2375 EAPI void elm_scrolled_entry_end_visible_set(Evas_Object *obj, Eina_Bool setting) EINA_ARG_NONNULL(1);
2376 EAPI void elm_scrolled_entry_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
2377 EAPI void elm_scrolled_entry_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
2378 EAPI void elm_scrolled_entry_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *data, Evas_Object *entry, const char *item), void *data) EINA_ARG_NONNULL(1, 2);
2379 EAPI void elm_scrolled_entry_text_filter_append(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) EINA_ARG_NONNULL(1, 2);
2380 EAPI void elm_scrolled_entry_text_filter_prepend(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) EINA_ARG_NONNULL(1, 2);
2381 EAPI void elm_scrolled_entry_text_filter_remove(Evas_Object *obj, void (*func) (void *data, Evas_Object *entry, char **text), void *data) EINA_ARG_NONNULL(1, 2);
2382 EAPI void elm_scrolled_entry_file_set(Evas_Object *obj, const char *file, Elm_Text_Format format) EINA_ARG_NONNULL(1);
2383 EAPI void elm_scrolled_entry_file_get(const Evas_Object *obj, const char **file, Elm_Text_Format *format) EINA_ARG_NONNULL(1);
2384 EAPI void elm_scrolled_entry_file_save(Evas_Object *obj) EINA_ARG_NONNULL(1);
2385 EAPI void elm_scrolled_entry_autosave_set(Evas_Object *obj, Eina_Bool autosave) EINA_ARG_NONNULL(1);
2386 EAPI Eina_Bool elm_scrolled_entry_autosave_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2387 EAPI void elm_scrolled_entry_cnp_textonly_set(Evas_Object *obj, Eina_Bool textonly) EINA_ARG_NONNULL(1);
2388 EAPI Eina_Bool elm_scrolled_entry_cnp_textonly_get(Evas_Object *obj) EINA_ARG_NONNULL(1);
2389 EAPI void elm_scrolled_entry_input_panel_enabled_set(Evas_Object *obj, Eina_Bool enabled);
2390 EAPI void elm_scrolled_entry_input_panel_layout_set(Evas_Object *obj, Elm_Input_Panel_Layout layout);
2391 EAPI Ecore_IMF_Context *elm_scrolled_entry_imf_context_get(Evas_Object *obj);
2392 EAPI void elm_scrolled_entry_autocapitalization_set(Evas_Object *obj, Eina_Bool autocap);
2393 EAPI void elm_scrolled_entry_autoperiod_set(Evas_Object *obj, Eina_Bool autoperiod);
2396 EAPI Evas_Object *elm_conformant_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2397 EAPI void elm_conformant_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
2398 EAPI Evas_Object *elm_conformant_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2399 EAPI Evas_Object *elm_conformant_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
2400 EAPI Evas_Object *elm_conformant_content_area_get(Evas_Object *obj); EINA_ARG_NONNULL(1);
2403 EAPI Evas_Object *elm_mapbuf_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2404 EAPI void elm_mapbuf_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
2405 EAPI Evas_Object *elm_mapbuf_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2406 EAPI Evas_Object *elm_mapbuf_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
2407 EAPI void elm_mapbuf_enabled_set(Evas_Object *obj, Eina_Bool enabled) EINA_ARG_NONNULL(1);
2408 EAPI Eina_Bool elm_mapbuf_enabled_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2409 EAPI void elm_mapbuf_smooth_set(Evas_Object *obj, Eina_Bool smooth) EINA_ARG_NONNULL(1);
2410 EAPI Eina_Bool elm_mapbuf_smooth_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2411 EAPI void elm_mapbuf_alpha_set(Evas_Object *obj, Eina_Bool alpha) EINA_ARG_NONNULL(1);
2412 EAPI Eina_Bool elm_mapbuf_alpha_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2415 typedef struct _Elm_Flipselector_Item Elm_Flipselector_Item;
2417 EAPI Evas_Object *elm_flipselector_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2418 EAPI void elm_flipselector_flip_next(Evas_Object *obj) EINA_ARG_NONNULL(1);
2419 EAPI void elm_flipselector_flip_prev(Evas_Object *obj) EINA_ARG_NONNULL(1);
2420 EAPI Elm_Flipselector_Item *elm_flipselector_item_append(Evas_Object *obj, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), void *data) EINA_ARG_NONNULL(1);
2421 EAPI Elm_Flipselector_Item *elm_flipselector_item_prepend(Evas_Object *obj, const char *label, void (*func)(void *data, Evas_Object *obj, void *event_info), void *data) EINA_ARG_NONNULL(1);
2422 EAPI const Eina_List *elm_flipselector_items_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2423 EAPI Elm_Flipselector_Item *elm_flipselector_first_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2424 EAPI Elm_Flipselector_Item *elm_flipselector_last_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2425 EAPI Elm_Flipselector_Item *elm_flipselector_selected_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2426 EAPI void elm_flipselector_item_selected_set(Elm_Flipselector_Item *item, Eina_Bool selected) EINA_ARG_NONNULL(1);
2427 EAPI Eina_Bool elm_flipselector_item_selected_get(const Elm_Flipselector_Item *item) EINA_ARG_NONNULL(1);
2428 EAPI void elm_flipselector_item_del(Elm_Flipselector_Item *item) EINA_ARG_NONNULL(1);
2429 EAPI const char *elm_flipselector_item_label_get(const Elm_Flipselector_Item *item) EINA_ARG_NONNULL(1);
2430 EAPI void elm_flipselector_item_label_set(Elm_Flipselector_Item *item, const char *label) EINA_ARG_NONNULL(1);
2431 EAPI Elm_Flipselector_Item *elm_flipselector_item_prev_get(Elm_Flipselector_Item *item) EINA_ARG_NONNULL(1);
2432 EAPI Elm_Flipselector_Item *elm_flipselector_item_next_get(Elm_Flipselector_Item *item) EINA_ARG_NONNULL(1);
2433 EAPI void elm_flipselector_interval_set(Evas_Object *obj, double interval) EINA_ARG_NONNULL(1);
2434 EAPI double elm_flipselector_interval_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2435 /* smart callbacks called:
2436 * "selected" - when flipselector selected item is changed
2437 * "overflowed" - when flipselector item is changed to first item
2439 * "underflowed" - when flipselector item is changed to last item
2442 /* available styles:
2449 ELM_ANIMATOR_CURVE_LINEAR,
2450 ELM_ANIMATOR_CURVE_IN_OUT,
2451 ELM_ANIMATOR_CURVE_IN,
2452 ELM_ANIMATOR_CURVE_OUT
2453 } Elm_Animator_Curve_Style;
2454 typedef struct _Elm_Animator Elm_Animator;
2456 * Called back per loop of an elementary animators cycle
2457 * @param data user-data given to elm_animator_operation_callback_set()
2458 * @param animator the animator being run
2459 * @param double the position in the animation
2461 typedef void (*Elm_Animator_Operation_Cb) (void *data, Elm_Animator *animator, double frame);
2463 * Called back when an elementary animator finishes
2464 * @param data user-data given to elm_animator_completion_callback_set()
2466 typedef void (*Elm_Animator_Completion_Cb) (void *data);
2468 EAPI Elm_Animator* elm_animator_add(Evas_Object *parent);
2469 EAPI void elm_animator_del(Elm_Animator *animator) EINA_ARG_NONNULL(1);
2470 EAPI void elm_animator_duration_set(Elm_Animator *animator, double duration) EINA_ARG_NONNULL(1);
2471 EAPI void elm_animator_operation_callback_set(Elm_Animator *animator, Elm_Animator_Operation_Cb func, void *data) EINA_ARG_NONNULL(1);
2472 EAPI void elm_animator_completion_callback_set(Elm_Animator *animator, Elm_Animator_Completion_Cb func, void *data) EINA_ARG_NONNULL(1);
2473 EAPI void elm_animator_stop(Elm_Animator *animator) EINA_ARG_NONNULL(1);
2474 EAPI void elm_animator_repeat_set(Elm_Animator *animator, unsigned int repeat_cnt) EINA_ARG_NONNULL(1);
2475 EAPI void elm_animator_animate(Elm_Animator *animator) EINA_ARG_NONNULL(1);
2476 EAPI void elm_animator_curve_style_set(Elm_Animator *animator, Elm_Animator_Curve_Style cs) EINA_ARG_NONNULL(1);
2477 EAPI Elm_Animator_Curve_Style elm_animator_curve_style_get(const Elm_Animator *animator); EINA_ARG_NONNULL(1);
2478 EAPI void elm_animator_auto_reverse_set(Elm_Animator *animator, Eina_Bool reverse) EINA_ARG_NONNULL(1);
2479 EAPI Eina_Bool elm_animator_auto_reverse_get(const Elm_Animator *animator) EINA_ARG_NONNULL(1);
2480 EAPI Eina_Bool elm_animator_operating_get(const Elm_Animator *animator) EINA_ARG_NONNULL(1);
2481 EAPI unsigned int elm_animator_repeat_get(const Elm_Animator *animator) EINA_ARG_NONNULL(1);
2482 EAPI void elm_animator_pause(Elm_Animator *animator) EINA_ARG_NONNULL(1);
2483 EAPI void elm_animator_resume(Elm_Animator *animator) EINA_ARG_NONNULL(1);
2488 ELM_CALENDAR_UNIQUE,
2490 ELM_CALENDAR_WEEKLY,
2491 ELM_CALENDAR_MONTHLY,
2492 ELM_CALENDAR_ANNUALLY
2493 } Elm_Calendar_Mark_Repeat;
2494 typedef struct _Elm_Calendar_Mark Elm_Calendar_Mark;
2496 EAPI Evas_Object *elm_calendar_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2497 EAPI const char **elm_calendar_weekdays_names_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2498 EAPI void elm_calendar_weekdays_names_set(Evas_Object *obj, const char *weekdays[]) EINA_ARG_NONNULL(1, 2);
2499 EAPI double elm_calendar_interval_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2500 EAPI void elm_calendar_interval_set(Evas_Object *obj, double interval) EINA_ARG_NONNULL(1);
2501 EAPI void elm_calendar_min_max_year_get(const Evas_Object *obj, int *min, int *max) EINA_ARG_NONNULL(1);
2502 EAPI void elm_calendar_min_max_year_set(Evas_Object *obj, int min, int max) EINA_ARG_NONNULL(1);
2503 EAPI Eina_Bool elm_calendar_day_selection_enabled_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2504 EAPI void elm_calendar_day_selection_enabled_set(Evas_Object *obj, Eina_Bool enabled) EINA_ARG_NONNULL(1);
2505 EAPI Eina_Bool elm_calendar_selected_time_get(const Evas_Object *obj, struct tm *selected_time) EINA_ARG_NONNULL(1, 2);
2506 EAPI void elm_calendar_selected_time_set(Evas_Object *obj, struct tm *selected_time) EINA_ARG_NONNULL(1);
2507 EAPI void elm_calendar_format_function_set(Evas_Object *obj, char * (*format_function) (struct tm *stime)) EINA_ARG_NONNULL(1);
2508 EAPI Elm_Calendar_Mark *elm_calendar_mark_add(Evas_Object *obj, const char *mark_type, struct tm *mark_time, Elm_Calendar_Mark_Repeat repeat) EINA_ARG_NONNULL(1);
2509 EAPI void elm_calendar_mark_del(Elm_Calendar_Mark *mark) EINA_ARG_NONNULL(1);
2510 EAPI void elm_calendar_marks_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
2511 EAPI const Eina_List *elm_calendar_marks_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2512 EAPI void elm_calendar_marks_draw(Evas_Object *obj) EINA_ARG_NONNULL(1);
2513 EINA_DEPRECATED EAPI void elm_calendar_text_saturday_color_set(Evas_Object *obj, int pos) EINA_ARG_NONNULL(1);
2514 EINA_DEPRECATED EAPI void elm_calendar_text_sunday_color_set(Evas_Object *obj, int pos) EINA_ARG_NONNULL(1);
2515 EINA_DEPRECATED EAPI void elm_calendar_text_weekday_color_set(Evas_Object *obj, int pos) EINA_ARG_NONNULL(1);
2517 /* smart callbacks called:
2518 * changed - emitted when the user select a day or change the displayed
2523 typedef struct _Elm_Diskselector_Item Elm_Diskselector_Item;
2525 EAPI Evas_Object *elm_diskselector_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2526 EAPI Eina_Bool elm_diskselector_round_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2527 EAPI void elm_diskselector_round_set(Evas_Object *obj, Eina_Bool round) EINA_ARG_NONNULL(1);
2528 EAPI int elm_diskselector_side_label_lenght_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2529 EAPI void elm_diskselector_side_label_lenght_set(Evas_Object *obj, int len) EINA_ARG_NONNULL(1);
2530 EAPI void elm_diskselector_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce) EINA_ARG_NONNULL(1);
2531 EAPI void elm_diskselector_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce) EINA_ARG_NONNULL(1);
2532 EAPI void elm_diskselector_scroller_policy_get(const Evas_Object *obj, Elm_Scroller_Policy *policy_h, Elm_Scroller_Policy *policy_v) EINA_ARG_NONNULL(1);
2533 EAPI void elm_diskselector_scroller_policy_set(Evas_Object *obj, Elm_Scroller_Policy policy_h, Elm_Scroller_Policy policy_v) EINA_ARG_NONNULL(1);
2534 EAPI void elm_diskselector_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
2535 EAPI const Eina_List *elm_diskselector_items_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2536 EAPI Elm_Diskselector_Item *elm_diskselector_item_append(Evas_Object *obj, const char *label, Evas_Object *icon, Evas_Smart_Cb func, const void *data) EINA_ARG_NONNULL(1);
2537 EAPI void elm_diskselector_item_del(Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2538 EAPI void elm_diskselector_item_del_cb_set(Elm_Diskselector_Item *item, Evas_Smart_Cb func) EINA_ARG_NONNULL(1);
2539 EAPI void *elm_diskselector_item_data_get(const Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2540 EAPI Evas_Object *elm_diskselector_item_icon_get(const Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2541 EAPI void elm_diskselector_item_icon_set(Elm_Diskselector_Item *item, Evas_Object *icon) EINA_ARG_NONNULL(1);
2542 EAPI const char *elm_diskselector_item_label_get(const Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2543 EAPI void elm_diskselector_item_label_set(Elm_Diskselector_Item *item, const char *label) EINA_ARG_NONNULL(1);
2544 EAPI Elm_Diskselector_Item *elm_diskselector_selected_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2545 EAPI void elm_diskselector_item_selected_set(Elm_Diskselector_Item *item, Eina_Bool selected) EINA_ARG_NONNULL(1);
2546 EAPI Eina_Bool elm_diskselector_item_selected_get(const Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2547 EAPI Elm_Diskselector_Item *elm_diskselector_first_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2548 EAPI Elm_Diskselector_Item *elm_diskselector_last_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2549 EAPI Elm_Diskselector_Item *elm_diskselector_item_prev_get(const Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2550 EAPI Elm_Diskselector_Item *elm_diskselector_item_next_get(const Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2551 EAPI void elm_diskselector_item_tooltip_text_set(Elm_Diskselector_Item *item, const char *text) EINA_ARG_NONNULL(1);
2552 EAPI void elm_diskselector_item_tooltip_content_cb_set(Elm_Diskselector_Item *item, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb) EINA_ARG_NONNULL(1);
2553 EAPI void elm_diskselector_item_tooltip_unset(Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2554 EAPI void elm_diskselector_item_tooltip_style_set(Elm_Diskselector_Item *item, const char *style) EINA_ARG_NONNULL(1);
2555 EAPI const char *elm_diskselector_item_tooltip_style_get(const Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2556 EAPI void elm_diskselector_item_cursor_set(Elm_Diskselector_Item *item, const char *cursor) EINA_ARG_NONNULL(1);
2557 EAPI const char *elm_diskselector_item_cursor_get(const Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2558 EAPI void elm_diskselector_item_cursor_unset(Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2559 EAPI void elm_diskselector_item_cursor_style_set(Elm_Diskselector_Item *item, const char *style) EINA_ARG_NONNULL(1);
2560 EAPI const char *elm_diskselector_item_cursor_style_get(const Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2561 EAPI void elm_diskselector_item_cursor_engine_only_set(Elm_Diskselector_Item *item, Eina_Bool engine_only) EINA_ARG_NONNULL(1);
2562 EAPI Eina_Bool elm_diskselector_item_cursor_engine_only_get(const Elm_Diskselector_Item *item) EINA_ARG_NONNULL(1);
2563 /* smart callbacks called:
2564 * "selected" - when item is selected (scroller stops)
2568 typedef enum _Elm_Datefield_Layout
2570 ELM_DATEFIELD_LAYOUT_TIME,
2571 ELM_DATEFIELD_LAYOUT_DATE,
2572 ELM_DATEFIELD_LAYOUT_DATEANDTIME
2573 } Elm_Datefield_Layout;
2575 EAPI Evas_Object *elm_datefield_add(Evas_Object *parent);
2576 EAPI void elm_datefield_layout_set(Evas_Object *obj, Elm_Datefield_Layout layout);
2577 EAPI Elm_Datefield_Layout elm_datefield_layout_get(const Evas_Object *obj);
2578 EAPI void elm_datefield_date_set(Evas_Object *obj, int year, int month, int day, int hour, int min);
2579 EAPI void elm_datefield_date_get(const Evas_Object *obj, int *year, int *month, int *day, int *hour, int *min);
2580 EAPI Eina_Bool elm_datefield_date_max_set(Evas_Object *obj, int year, int month, int day);
2581 EAPI void elm_datefield_date_max_get(const Evas_Object *obj, int *year, int *month, int *day);
2582 EAPI Eina_Bool elm_datefield_date_min_set(Evas_Object *obj, int year, int month, int day);
2583 EAPI void elm_datefield_date_min_get(const Evas_Object *obj, int *year, int *month, int *day);
2584 EAPI void elm_datefield_time_mode_set(Evas_Object *obj, Eina_Bool mode);
2585 EAPI Eina_Bool elm_datefield_time_mode_get(const Evas_Object *obj);
2586 EAPI void elm_datefield_date_format_set(Evas_Object *obj, const char *fmt);
2587 EAPI const char *elm_datefield_date_format_get(const Evas_Object *obj);
2588 EAPI void elm_datefield_input_panel_state_callback_add(Evas_Object *obj, void (*pEventCallbackFunc) (void *data, Evas_Object *obj, int value), void *data);
2589 EAPI void elm_datefield_input_panel_state_callback_del(Evas_Object *obj, void (*pEventCallbackFunc) (void *data, Evas_Object *obj, int value));
2590 /* smart callbacks called:
2591 * "changed" - when datefield entry is changed, this signal is sent.
2595 typedef enum _Elm_Popup_Response
2597 ELM_POPUP_RESPONSE_NONE = -1,
2598 ELM_POPUP_RESPONSE_TIMEOUT = -2,
2599 ELM_POPUP_RESPONSE_OK = -3,
2600 ELM_POPUP_RESPONSE_CANCEL = -4,
2601 ELM_POPUP_RESPONSE_CLOSE = -5
2602 } Elm_Popup_Response;
2604 typedef enum _Elm_Popup_Mode
2606 ELM_POPUP_TYPE_NONE = 0,
2607 ELM_POPUP_TYPE_ALERT = (1 << 0)
2610 typedef enum _Elm_Popup_Orient
2612 ELM_POPUP_ORIENT_TOP,
2613 ELM_POPUP_ORIENT_CENTER,
2614 ELM_POPUP_ORIENT_BOTTOM,
2615 ELM_POPUP_ORIENT_LEFT,
2616 ELM_POPUP_ORIENT_RIGHT,
2617 ELM_POPUP_ORIENT_TOP_LEFT,
2618 ELM_POPUP_ORIENT_TOP_RIGHT,
2619 ELM_POPUP_ORIENT_BOTTOM_LEFT,
2620 ELM_POPUP_ORIENT_BOTTOM_RIGHT
2623 /* smart callbacks called:
2624 * "response" - when ever popup is closed, this signal is sent with appropriate response id.".
2627 EAPI Evas_Object *elm_popup_add(Evas_Object *parent);
2628 EAPI void elm_popup_desc_set(Evas_Object *obj, const char *text);
2629 EAPI const char *elm_popup_desc_get(Evas_Object *obj);
2630 EAPI void elm_popup_title_label_set(Evas_Object *obj, const char *text);
2631 EAPI const char *elm_popup_title_label_get(Evas_Object *obj);
2632 EAPI void elm_popup_title_icon_set(Evas_Object *obj, Evas_Object *icon);
2633 EAPI Evas_Object *elm_popup_title_icon_get(Evas_Object *obj);
2634 EAPI void elm_popup_content_set(Evas_Object *obj, Evas_Object *content);
2635 EAPI Evas_Object *elm_popup_content_get(Evas_Object *obj);
2636 EAPI void elm_popup_buttons_add(Evas_Object *obj,int no_of_buttons, const char *first_button_text, ...);
2637 EAPI Evas_Object *elm_popup_with_buttons_add(Evas_Object *parent, const char *title, const char *desc_text,int no_of_buttons, const char *first_button_text, ... );
2638 EAPI void elm_popup_timeout_set(Evas_Object *obj, double timeout);
2639 EAPI void elm_popup_mode_set(Evas_Object *obj, Elm_Popup_Mode mode);
2640 EAPI void elm_popup_response(Evas_Object *obj, int response_id);
2641 EAPI void elm_popup_orient_set(Evas_Object *obj, Elm_Popup_Orient orient);
2642 EAPI int elm_popup_run(Evas_Object *obj);
2647 ELM_TRANSIT_TWEEN_MODE_LINEAR,
2648 ELM_TRANSIT_TWEEN_MODE_SINUSODIAL,
2649 ELM_TRANSIT_TWEEN_MODE_DECELERATE,
2650 ELM_TRANSIT_TWEEN_MODE_ACCELERATE
2651 } Elm_Transit_Tween_Mode;
2653 typedef struct _transit Elm_Transit;
2654 typedef struct _effect Elm_Effect;
2656 EAPI Elm_Transit *elm_transit_add(Evas_Object *parent);
2657 EAPI void elm_transit_del(Elm_Transit *transit);
2658 EAPI void elm_transit_run(Elm_Transit *transit, double duration);
2659 EAPI void elm_transit_stop(Elm_Transit *transit);
2660 EAPI void elm_transit_completion_callback_set(Elm_Transit *transit, void (*op)(void *data,Elm_Transit* transit), void *data);
2661 EAPI void elm_transit_repeat_set(Elm_Transit *transit, unsigned int repeat);
2662 EAPI void elm_transit_auto_reverse_set(Elm_Transit *transit, Eina_Bool reverse);
2663 EAPI void elm_transit_tween_mode_set(Elm_Transit *transit, Elm_Transit_Tween_Mode tween_mode);
2664 EAPI void elm_transit_event_block_disabled_set(Elm_Transit *transit, Eina_Bool disabled);
2665 EAPI Eina_Bool elm_transit_fx_insert(Elm_Transit *transit, Elm_Effect *effect);
2666 EAPI void elm_transit_fx_clear(Elm_Transit *transit);
2667 EAPI Eina_Bool elm_transit_event_block_disabled_get(const Elm_Transit *transit) EINA_ARG_NONNULL(1);
2668 EAPI void elm_transit_pause(Elm_Transit *transit);
2669 EAPI void elm_transit_resume(Elm_Transit *transit);
2670 EAPI Elm_Transit_Tween_Mode elm_transit_tween_mode_get(const Elm_Transit *transit) EINA_ARG_NONNULL(1);
2672 /* Translation FX */
2673 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);
2676 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);
2679 EAPI Elm_Effect *elm_fx_zoom_add(Evas_Object *obj, float from_rate, float to_rate);
2687 EAPI Elm_Effect *elm_fx_flip_add( Evas_Object *front, Evas_Object *back, Elm_Fx_Flip_Axis axis, Eina_Bool cw);
2690 EAPI Elm_Effect *elm_fx_blend_add(Evas_Object *before, Evas_Object *after);
2693 EAPI Elm_Effect *elm_fx_fade_add(Evas_Object *before, Evas_Object *after);
2696 EAPI Elm_Effect *elm_fx_rotation_add(Evas_Object *obj, float from_degree, float to_degree, Eina_Bool cw);
2699 EAPI Elm_Effect *elm_fx_rotation3d_add(Evas_Object *obj, float from_degree, float to_degree, float* axis_dir, float* axis_pos);
2702 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);
2708 ELM_FX_WIPE_DIR_LEFT,
2709 ELM_FX_WIPE_DIR_RIGHT,
2710 ELM_FX_WIPE_DIR_DOWN
2715 ELM_FX_WIPE_TYPE_HIDE,
2716 ELM_FX_WIPE_TYPE_SHOW
2718 EAPI Elm_Effect *elm_fx_wipe_add(Evas_Object *obj, Elm_Fx_Wipe_Type type, Elm_Fx_Wipe_Dir dir);
2720 /* ResizableFlip Fx */
2721 EAPI Elm_Effect *elm_fx_resizable_flip_add(Evas_Object *front, Evas_Object *back, Elm_Fx_Flip_Axis axis, Eina_Bool cw);
2723 /* ImageAnimation Fx */
2724 EAPI Elm_Effect *elm_fx_image_animation_add(Evas_Object *icon, const char** images, unsigned int img_cnt);
2729 ELM_NAVIGATIONBAR_FUNCTION_BUTTON1,
2730 ELM_NAVIGATIONBAR_FUNCTION_BUTTON2,
2731 ELM_NAVIGATIONBAR_FUNCTION_BUTTON3,
2732 ELM_NAVIGATIONBAR_BACK_BUTTON
2733 } Elm_Navi_Button_Type;
2735 EAPI Evas_Object *elm_navigationbar_add(Evas_Object *parent);
2736 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);
2737 EAPI void elm_navigationbar_pop(Evas_Object *obj);
2738 EAPI void elm_navigationbar_to_content_pop(Evas_Object *obj, Evas_Object *content);
2739 EAPI void elm_navigationbar_title_label_set(Evas_Object *obj, Evas_Object *content, const char *title);
2740 EAPI const char *elm_navigationbar_title_label_get(Evas_Object *obj, Evas_Object *content);
2741 EAPI void elm_navigationbar_title_object_add(Evas_Object *obj, Evas_Object *content, Evas_Object *title_obj);
2742 EAPI Eina_List *elm_navigationbar_title_object_list_get(Evas_Object *obj, Evas_Object *content);
2743 EAPI Evas_Object *elm_navigationbar_content_top_get(Evas_Object *obj);
2744 EAPI Evas_Object *elm_navigationbar_content_bottom_get(Evas_Object *obj);
2745 EAPI void elm_navigationbar_hidden_set(Evas_Object *obj, Eina_Bool hidden);
2746 EAPI void elm_navigationbar_title_button_set(Evas_Object *obj, Evas_Object *content, Evas_Object *button, Elm_Navi_Button_Type button_type);
2747 EAPI Evas_Object *elm_navigationbar_title_button_get(Evas_Object *obj, Evas_Object *content, Elm_Navi_Button_Type button_type);
2748 EAPI const char *elm_navigationbar_subtitle_label_get(Evas_Object *obj, Evas_Object *content);
2749 EAPI void elm_navigationbar_subtitle_label_set(Evas_Object *obj, Evas_Object *content, const char *subtitle);
2750 EAPI void elm_navigationbar_title_object_list_unset(Evas_Object *obj, Evas_Object *content, Eina_List **list);
2751 EAPI void elm_navigationbar_animation_disabled_set(Evas_Object *obj, Eina_Bool disable);
2756 ELM_NAVIGATIONBAR_EX_BACK_BUTTON,
2757 ELM_NAVIGATIONBAR_EX_FUNCTION_BUTTON1,
2758 ELM_NAVIGATIONBAR_EX_FUNCTION_BUTTON2,
2759 ELM_NAVIGATIONBAR_EX_FUNCTION_BUTTON3,
2760 ELM_NAVIGATIONBAR_EX_MAX
2761 } Elm_Navi_ex_Button_Type;
2762 typedef struct _Elm_Navigationbar_ex_Item Elm_Navigationbar_ex_Item;
2764 EAPI Evas_Object *elm_navigationbar_ex_add(Evas_Object *parent);
2765 EAPI Elm_Navigationbar_ex_Item *elm_navigationbar_ex_item_push(Evas_Object *obj, Evas_Object *content, const char *item_style);
2766 EAPI void elm_navigationbar_ex_item_pop(Evas_Object *obj);
2767 EAPI void elm_navigationbar_ex_item_promote(Elm_Navigationbar_ex_Item* item);
2768 EAPI void elm_navigationbar_ex_to_item_pop(Elm_Navigationbar_ex_Item* item);
2769 EAPI void elm_navigationbar_ex_item_title_label_set(Elm_Navigationbar_ex_Item *item, const char *title);
2770 EAPI const char *elm_navigationbar_ex_item_title_label_get(Elm_Navigationbar_ex_Item* item);
2771 EAPI Elm_Navigationbar_ex_Item *elm_navigationbar_ex_item_top_get(const Evas_Object *obj);
2772 EAPI Elm_Navigationbar_ex_Item *elm_navigationbar_ex_item_bottom_get(const Evas_Object *obj);
2773 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);
2774 EAPI Evas_Object *elm_navigationbar_ex_item_title_button_get(Elm_Navigationbar_ex_Item* item, int button_type);
2775 EAPI void elm_navigationbar_ex_item_title_object_set(Elm_Navigationbar_ex_Item* item, Evas_Object *title_obj);
2776 EAPI Evas_Object *elm_navigationbar_ex_item_title_object_unset(Elm_Navigationbar_ex_Item* item);
2777 EAPI void elm_navigationbar_ex_item_title_hidden_set(Elm_Navigationbar_ex_Item* item, Eina_Bool hidden);
2778 EAPI Evas_Object *elm_navigationbar_ex_item_title_object_get(Elm_Navigationbar_ex_Item* item);
2779 EAPI const char *elm_navigationbar_ex_item_subtitle_label_get(Elm_Navigationbar_ex_Item* item);
2780 EAPI void elm_navigationbar_ex_item_subtitle_label_set( Elm_Navigationbar_ex_Item* item, const char *subtitle);
2781 EAPI void elm_navigationbar_ex_item_style_set(Elm_Navigationbar_ex_Item* item, const char* item_style);
2782 EAPI const char *elm_navigationbar_ex_item_style_get(Elm_Navigationbar_ex_Item* item);
2783 EAPI Evas_Object *elm_navigationbar_ex_item_content_unset(Elm_Navigationbar_ex_Item* item);
2784 EAPI Evas_Object *elm_navigationbar_ex_item_content_get(Elm_Navigationbar_ex_Item* item);
2785 EAPI void elm_navigationbar_ex_delete_on_pop_set(Evas_Object *obj, Eina_Bool del_on_pop);
2786 EAPI Evas_Object *elm_navigationbar_ex_item_icon_get(Elm_Navigationbar_ex_Item* item);
2787 EAPI void elm_navigationbar_ex_item_icon_set(Elm_Navigationbar_ex_Item* item, Evas_Object *icon);
2788 EAPI Evas_Object *elm_navigationbar_ex_item_title_button_unset(Elm_Navigationbar_ex_Item* item, int button_type);
2789 EAPI void elm_navigationbar_ex_animation_disable_set(Evas_Object *obj, Eina_Bool disable);
2793 #define CONTROLBAR_SYSTEM_ICON_ALBUMS "controlbar_albums"
2794 #define CONTROLBAR_SYSTEM_ICON_ARTISTS "controlbar_artists"
2795 #define CONTROLBAR_SYSTEM_ICON_SONGS "controlbar_songs"
2796 #define CONTROLBAR_SYSTEM_ICON_PLAYLIST "controlbar_playlist"
2797 #define CONTROLBAR_SYSTEM_ICON_MORE "controlbar_more"
2798 #define CONTROLBAR_SYSTEM_ICON_CONTACTS "controlbar_contacts"
2799 #define CONTROLBAR_SYSTEM_ICON_DIALER "controlbar_dialer"
2800 #define CONTROLBAR_SYSTEM_ICON_FAVORITES "controlbar_favorites"
2801 #define CONTROLBAR_SYSTEM_ICON_LOGS "controlbar_logs"
2803 typedef enum _Elm_Controlbar_Mode_Type
2805 ELM_CONTROLBAR_MODE_DEFAULT = 0,
2806 ELM_CONTROLBAR_MODE_TRANSLUCENCE,
2807 ELM_CONTROLBAR_MODE_TRANSPARENCY,
2808 ELM_CONTROLBAR_MODE_LARGE,
2809 ELM_CONTROLBAR_MODE_SMALL,
2810 ELM_CONTROLBAR_MODE_LEFT,
2811 ELM_CONTROLBAR_MODE_RIGHT
2812 } Elm_Controlbar_Mode_Type;
2814 typedef struct _Elm_Controlbar_Item Elm_Controlbar_Item;
2816 EAPI Evas_Object *elm_controlbar_add(Evas_Object *parent);
2817 EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_append(Evas_Object *obj, const char *icon_path, const char *label, Evas_Object *view);
2818 EAPI Elm_Controlbar_Item *elm_controlbar_tab_item_prepend(Evas_Object *obj, const char *icon_path, const char *label, Evas_Object *view);
2819 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);
2820 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);
2821 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);
2822 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);
2823 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);
2824 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);
2825 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_append(Evas_Object *obj, Evas_Object *obj_item, const int sel);
2826 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_prepend(Evas_Object *obj, Evas_Object *obj_item, const int sel);
2827 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_insert_before(Evas_Object *obj, Elm_Controlbar_Item *before, Evas_Object *obj_item, const int sel);
2828 EAPI Elm_Controlbar_Item *elm_controlbar_object_item_insert_after(Evas_Object *obj, Elm_Controlbar_Item *after, Evas_Object *obj_item, const int sel);
2829 EAPI void elm_controlbar_item_del(Elm_Controlbar_Item *it);
2830 EAPI void elm_controlbar_item_select(Elm_Controlbar_Item *it);
2831 EAPI void elm_controlbar_item_visible_set(Elm_Controlbar_Item *it, Eina_Bool bar);
2832 EAPI Eina_Bool elm_controlbar_item_visible_get(Elm_Controlbar_Item * it);
2833 EAPI void elm_controlbar_item_disable_set(Elm_Controlbar_Item * it, Eina_Bool disable);
2834 EAPI Eina_Bool elm_controlbar_item_disable_get(Elm_Controlbar_Item * it);
2835 EAPI void elm_controlbar_item_icon_set(Elm_Controlbar_Item *it, const char *icon_path);
2836 EAPI Evas_Object *elm_controlbar_item_icon_get(Elm_Controlbar_Item *it);
2837 EAPI void elm_controlbar_item_label_set(Elm_Controlbar_Item *it, const char *label);
2838 EAPI const char *elm_controlbar_item_label_get(Elm_Controlbar_Item *it);
2839 EAPI Elm_Controlbar_Item *elm_controlbar_selected_item_get(Evas_Object *obj);
2840 EAPI Elm_Controlbar_Item *elm_controlbar_first_item_get(Evas_Object *obj);
2841 EAPI Elm_Controlbar_Item *elm_controlbar_last_item_get(Evas_Object *obj);
2842 EAPI Eina_List *elm_controlbar_items_get(Evas_Object *obj);
2843 EAPI Elm_Controlbar_Item *elm_controlbar_item_prev(Elm_Controlbar_Item *it);
2844 EAPI Elm_Controlbar_Item *elm_controlbar_item_next(Elm_Controlbar_Item *it);
2845 EAPI void elm_controlbar_item_view_set(Elm_Controlbar_Item *it, Evas_Object * view);
2846 EAPI Evas_Object *elm_controlbar_item_view_get(Elm_Controlbar_Item *it);
2847 EAPI void elm_controlbar_mode_set(Evas_Object *obj, int mode);
2848 EAPI void elm_controlbar_alpha_set(Evas_Object *obj, int alpha);
2849 EAPI void elm_controlbar_item_auto_align_set(Evas_Object *obj, Eina_Bool auto_align);
2850 EAPI void elm_controlbar_vertical_set(Evas_Object *obj, Eina_Bool vertical);
2851 /*======= Please don't use this APIs =======*/
2852 EAPI void elm_controlbar_animation_set(Evas_Object *obj, void (*func) (void *data, Evas_Object *obj, void *event_info), void *data);
2853 EAPI void elm_controlbar_item_animation_set(Evas_Object *obj, Eina_Bool auto_animation, Eina_Bool selected_animation);
2854 /*======= Just for test =======*/
2857 EAPI Evas_Object *elm_searchbar_add(Evas_Object *parent);
2858 EAPI void elm_searchbar_text_set(Evas_Object *obj, const char *entry);
2859 EAPI const char *elm_searchbar_text_get(Evas_Object *obj);
2860 EAPI Evas_Object *elm_searchbar_entry_get(Evas_Object *obj);
2861 EAPI void elm_searchbar_cancel_button_animation_set(Evas_Object *obj, Eina_Bool cancel_btn_ani_flag);
2862 EAPI void elm_searchbar_cancel_button_set(Evas_Object *obj, Eina_Bool visible);
2863 EAPI void elm_searchbar_clear(Evas_Object *obj);
2864 EAPI void elm_searchbar_boundary_rect_set(Evas_Object *obj, Eina_Bool boundary);
2867 EAPI Evas_Object *elm_colorselector_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2868 EAPI void elm_colorselector_color_set(Evas_Object *obj, int r, int g , int b, int a) EINA_ARG_NONNULL(1);
2869 EAPI void elm_colorselector_color_get(const Evas_Object *obj, int *r, int *g , int *b, int *a) EINA_ARG_NONNULL(1);
2870 /* smart callbacks called:
2871 * "changed" - when the color value changes
2874 /* Contextual Popup */
2875 typedef struct _Elm_Ctxpopup_Item Elm_Ctxpopup_Item;
2877 typedef enum _Elm_Ctxpopup_Direction
2879 ELM_CTXPOPUP_DIRECTION_DOWN,
2880 ELM_CTXPOPUP_DIRECTION_RIGHT,
2881 ELM_CTXPOPUP_DIRECTION_LEFT,
2882 ELM_CTXPOPUP_DIRECTION_UP,
2883 } Elm_Ctxpopup_Direction;
2885 EAPI Evas_Object *elm_ctxpopup_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
2886 EAPI Evas_Object *elm_ctxpopup_item_icon_get(const Elm_Ctxpopup_Item *item) EINA_ARG_NONNULL(1);
2887 EAPI void elm_ctxpopup_item_icon_set(Elm_Ctxpopup_Item *item, Evas_Object *icon) EINA_ARG_NONNULL(1);
2888 EAPI const char *elm_ctxpopup_item_label_get(const Elm_Ctxpopup_Item *item) EINA_ARG_NONNULL(1);
2889 EAPI void elm_ctxpopup_item_label_set(Elm_Ctxpopup_Item *item, const char *label) EINA_ARG_NONNULL(1);
2890 EAPI void elm_ctxpopup_hover_parent_set(Evas_Object *obj, Evas_Object *parent) EINA_ARG_NONNULL(1, 2);
2891 EAPI Evas_Object *elm_ctxpopup_hover_parent_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2892 EAPI void elm_ctxpopup_clear(Evas_Object *obj) EINA_ARG_NONNULL(1);
2893 EAPI void elm_ctxpopup_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) EINA_ARG_NONNULL(1);
2894 EAPI Eina_Bool elm_ctxpopup_horizontal_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2895 Elm_Ctxpopup_Item *elm_ctxpopup_item_append(Evas_Object *obj, const char *label, Evas_Object *icon, Evas_Smart_Cb func, const void *data) EINA_ARG_NONNULL(1);
2896 EAPI void elm_ctxpopup_item_del(Elm_Ctxpopup_Item *item) EINA_ARG_NONNULL(1);
2897 EAPI void elm_ctxpopup_item_disabled_set(Elm_Ctxpopup_Item *item, Eina_Bool disabled) EINA_ARG_NONNULL(1);
2898 EAPI Eina_Bool elm_ctxpopup_item_disabled_get(const Elm_Ctxpopup_Item *item) EINA_ARG_NONNULL(1);
2899 EAPI void elm_ctxpopup_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1, 2);
2900 EAPI Evas_Object *elm_ctxpopup_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
2901 EAPI void elm_ctxpopup_direction_priority_set(Evas_Object *obj, Elm_Ctxpopup_Direction first, Elm_Ctxpopup_Direction second, Elm_Ctxpopup_Direction third, Elm_Ctxpopup_Direction fourth) EINA_ARG_NONNULL(1);
2902 EAPI void elm_ctxpopup_direction_priority_get(Evas_Object *obj, Elm_Ctxpopup_Direction *first, Elm_Ctxpopup_Direction *second, Elm_Ctxpopup_Direction *third, Elm_Ctxpopup_Direction *fourth) EINA_ARG_NONNULL(1);
2903 /* smart callbacks called:
2904 * "dismissed" - the ctxpopup was dismissed
2907 //DEPRECATED CTXPOPUP APIS...
2908 typedef enum _Ctxpopup_Arrow_Direction
2910 ELM_CTXPOPUP_ARROW_DOWN,
2911 ELM_CTXPOPUP_ARROW_RIGHT,
2912 ELM_CTXPOPUP_ARROW_LEFT,
2913 ELM_CTXPOPUP_ARROW_UP,
2914 } Elm_Ctxpopup_Arrow;
2916 EINA_DEPRECATED EAPI void elm_ctxpopup_area_set(Evas_Object *obj, Evas_Object *rect);
2917 EINA_DEPRECATED EAPI Elm_Ctxpopup_Item *elm_ctxpopup_label_add(Evas_Object *obj, const char *label, Evas_Smart_Cb func, void *data);
2918 EINA_DEPRECATED EAPI Elm_Ctxpopup_Item *elm_ctxpopup_icon_add(Evas_Object *obj, Evas_Object *icon, Evas_Smart_Cb func, void *data);
2919 EINA_DEPRECATED EAPI Elm_Ctxpopup_Item *elm_ctxpopup_item_add(Evas_Object *obj, Evas_Object *icon, const char* label, Evas_Smart_Cb func, void *data);
2920 EINA_DEPRECATED EAPI void elm_ctxpopup_scroller_disabled_set(Evas_Object *obj, Eina_Bool disabled);
2921 EINA_DEPRECATED EAPI void elm_ctxpopup_screen_dimmed_disabled_set(Evas_Object *obj, Eina_Bool disabled);
2922 EINA_DEPRECATED EAPI void elm_ctxpopup_button_append(Evas_Object *obj, const char *label, Evas_Smart_Cb func, const void *data);
2923 EINA_DEPRECATED 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);
2924 EINA_DEPRECATED EAPI void elm_ctxpopup_position_forced_set(Evas_Object *obj, Eina_Bool forced);
2925 EINA_DEPRECATED EAPI Eina_Bool elm_ctxpopup_position_forced_get(const Evas_Object *obj);
2928 typedef struct _Colorpalette_Color Elm_Colorpalette_Color;
2930 struct _Colorpalette_Color
2932 unsigned int r, g, b;
2935 EAPI Evas_Object *elm_colorpalette_add(Evas_Object *parent);
2936 EAPI void elm_colorpalette_color_set(Evas_Object *obj, int color_num, Elm_Colorpalette_Color *color);
2937 EAPI void elm_colorpalette_row_column_set(Evas_Object *obj, int row, int col);
2938 /* smart callbacks called:
2939 * "clicked" - when image clicked
2943 EAPI Evas_Object *elm_editfield_add(Evas_Object *parent);
2944 EAPI void elm_editfield_label_set(Evas_Object *obj, const char *label);
2945 EAPI const char *elm_editfield_label_get(Evas_Object *obj);
2946 EAPI void elm_editfield_guide_text_set(Evas_Object *obj, const char *text);
2947 EAPI const char *elm_editfield_guide_text_get(Evas_Object *obj);
2948 EAPI Evas_Object *elm_editfield_entry_get(Evas_Object *obj);
2949 // EAPI Evas_Object *elm_editfield_clear_button_show(Evas_Object *obj, Eina_Bool show);
2950 EAPI void elm_editfield_right_icon_set(Evas_Object *obj, Evas_Object *icon);
2951 EAPI Evas_Object *elm_editfield_right_icon_get(Evas_Object *obj);
2952 EAPI void elm_editfield_left_icon_set(Evas_Object *obj, Evas_Object *icon);
2953 EAPI Evas_Object *elm_editfield_left_icon_get(Evas_Object *obj);
2954 EAPI void elm_editfield_entry_single_line_set(Evas_Object *obj, Eina_Bool single_line);
2955 EAPI Eina_Bool elm_editfield_entry_single_line_get(Evas_Object *obj);
2956 EAPI void elm_editfield_eraser_set(Evas_Object *obj, Eina_Bool visible);
2957 EAPI Eina_Bool elm_editfield_eraser_get(Evas_Object *obj);
2958 /* smart callbacks called:
2959 * "clicked" - when an editfield is clicked
2960 * "unfocused" - when an editfield is unfocused
2964 typedef enum _Elm_Actionslider_Indicator_Pos
2966 ELM_ACTIONSLIDER_INDICATOR_NONE,
2967 ELM_ACTIONSLIDER_INDICATOR_LEFT,
2968 ELM_ACTIONSLIDER_INDICATOR_RIGHT,
2969 ELM_ACTIONSLIDER_INDICATOR_CENTER
2970 } Elm_Actionslider_Indicator_Pos;
2972 typedef enum _Elm_Actionslider_Magnet_Pos
2974 ELM_ACTIONSLIDER_MAGNET_NONE = 0,
2975 ELM_ACTIONSLIDER_MAGNET_LEFT = 1 << 0,
2976 ELM_ACTIONSLIDER_MAGNET_CENTER = 1 << 1,
2977 ELM_ACTIONSLIDER_MAGNET_RIGHT= 1 << 2,
2978 ELM_ACTIONSLIDER_MAGNET_ALL = (1 << 3) -1,
2979 ELM_ACTIONSLIDER_MAGNET_BOTH = (1 << 3)
2980 } Elm_Actionslider_Magnet_Pos;
2982 typedef enum _Elm_Actionslider_Label_Pos
2984 ELM_ACTIONSLIDER_LABEL_LEFT,
2985 ELM_ACTIONSLIDER_LABEL_RIGHT,
2986 ELM_ACTIONSLIDER_LABEL_CENTER,
2987 ELM_ACTIONSLIDER_LABEL_BUTTON
2988 } Elm_Actionslider_Label_Pos;
2990 EAPI Evas_Object *elm_actionslider_add(Evas_Object *parent);
2991 EAPI void elm_actionslider_indicator_pos_set(Evas_Object *obj, Elm_Actionslider_Indicator_Pos pos);
2992 EAPI Elm_Actionslider_Indicator_Pos elm_actionslider_indicator_pos_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2993 EAPI void elm_actionslider_magnet_pos_set(Evas_Object *obj, Elm_Actionslider_Magnet_Pos pos);
2994 EAPI Elm_Actionslider_Magnet_Pos elm_actionslider_magnet_pos_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2995 EAPI void elm_actionslider_label_set(Evas_Object *obj, Elm_Actionslider_Label_Pos pos, const char *label);
2996 EAPI void elm_actionslider_labels_get(const Evas_Object *obj, const char **left_label, const char **center_label, const char **right_label) EINA_ARG_NONNULL(1);
2997 EAPI void elm_actionslider_enabled_pos_set(Evas_Object *obj, Elm_Actionslider_Magnet_Pos pos) EINA_ARG_NONNULL(1);
2998 EAPI Elm_Actionslider_Magnet_Pos elm_actionslider_enabled_pos_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
2999 EAPI void elm_actionslider_indicator_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
3000 EAPI const char *elm_actionslider_indicator_label_get(Evas_Object *obj) EINA_ARG_NONNULL(1);
3001 EAPI void elm_actionslider_hold(Evas_Object *obj, Eina_Bool flag);
3002 /* smart callbacks called:
3003 * "indicator,position" - when a button reaches to the special position like "left", "right" and "center".
3006 /* Sliding Drawer */
3007 typedef enum _Elm_SlidingDrawer_Pos
3009 ELM_SLIDINGDRAWER_BOTTOM,
3010 ELM_SLIDINGDRAWER_LEFT,
3011 ELM_SLIDINGDRAWER_RIGHT,
3012 ELM_SLIDINGDRAWER_TOP
3013 } Elm_SlidingDrawer_Pos;
3015 typedef struct _Elm_SlidingDrawer_Drag_Value
3018 } Elm_SlidingDrawer_Drag_Value;
3020 EAPI Evas_Object *elm_slidingdrawer_add(Evas_Object *parent);
3021 EAPI void elm_slidingdrawer_content_set (Evas_Object *obj, Evas_Object *content);
3022 EAPI Evas_Object *elm_slidingdrawer_content_unset(Evas_Object *obj);
3023 EAPI void elm_slidingdrawer_pos_set(Evas_Object *obj, Elm_SlidingDrawer_Pos pos);
3024 EAPI void elm_slidingdrawer_max_drag_value_set(Evas_Object *obj, double dw, double dh);
3025 EAPI void elm_slidingdrawer_drag_value_set(Evas_Object *obj, double dx, double dy);
3027 /* multibuttonentry */
3028 typedef struct _Multibuttonentry_Item Elm_Multibuttonentry_Item;
3029 EAPI Evas_Object *elm_multibuttonentry_add(Evas_Object *parent);
3030 EAPI const char *elm_multibuttonentry_label_get(Evas_Object *obj);
3031 EAPI void elm_multibuttonentry_label_set(Evas_Object *obj, const char *label);
3032 EAPI Evas_Object *elm_multibuttonentry_entry_get(Evas_Object *obj);
3033 EAPI const char * elm_multibuttonentry_guide_text_get(Evas_Object *obj);
3034 EAPI void elm_multibuttonentry_guide_text_set(Evas_Object *obj, const char *guidetext);
3035 EAPI int elm_multibuttonentry_contracted_state_get(Evas_Object *obj);
3036 EAPI void elm_multibuttonentry_contracted_state_set(Evas_Object *obj, int contracted);
3037 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_start(Evas_Object *obj, const char *label, void *data);
3038 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_end(Evas_Object *obj, const char *label, void *data);
3039 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_before(Evas_Object *obj, const char *label, Elm_Multibuttonentry_Item *before, void *data);
3040 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_add_after(Evas_Object *obj, const char *label, Elm_Multibuttonentry_Item *after, void *data);
3041 EAPI const Eina_List *elm_multibuttonentry_items_get(Evas_Object *obj);
3042 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_first_get(Evas_Object *obj);
3043 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_last_get(Evas_Object *obj);
3044 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_selected_get(Evas_Object *obj);
3045 EAPI void elm_multibuttonentry_item_selected_set(Elm_Multibuttonentry_Item *item);
3046 EAPI void elm_multibuttonentry_item_unselect_all(Evas_Object *obj);
3047 EAPI void elm_multibuttonentry_item_del(Elm_Multibuttonentry_Item *item);
3048 EAPI void elm_multibuttonentry_items_del(Evas_Object *obj);
3049 EAPI const char *elm_multibuttonentry_item_label_get(Elm_Multibuttonentry_Item *item);
3050 EAPI void elm_multibuttonentry_item_label_set(Elm_Multibuttonentry_Item *item, const char *str);
3051 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_prev(Elm_Multibuttonentry_Item *item);
3052 EAPI Elm_Multibuttonentry_Item *elm_multibuttonentry_item_next(Elm_Multibuttonentry_Item *item);
3053 EAPI void *elm_multibuttonentry_item_data_get(Elm_Multibuttonentry_Item *item);
3054 EAPI void elm_multibuttonentry_item_data_set(Elm_Multibuttonentry_Item *item, void *data);
3055 /* smart callback called:
3056 * "selected" - This signal is emitted when the selected item of multibuttonentry is changed.
3057 * "added" - This signal is emitted when a new multibuttonentry item is added.
3058 * "deleted" - This signal is emitted when a multibuttonentry item is deleted.
3059 * "expanded" - This signal is emitted when a multibuttonentry is expanded.
3060 * "contracted" - This signal is emitted when a multibuttonentry is contracted.
3061 * "contracted,state,changed" - This signal is emitted when the contracted state of multibuttonentry is changed.
3062 * "item,selected" - This signal is emitted when the selected item of multibuttonentry is changed.
3063 * "item,added" - This signal is emitted when a new multibuttonentry item is added.
3064 * "item,deleted" - This signal is emitted when a multibuttonentry item is deleted.
3065 * "item,clicked" - This signal is emitted when a multibuttonentry item is clicked.
3066 * "clicked" - This signal is emitted when a multibuttonentry is clicked.
3067 * "unfocused" - This signal is emitted when a multibuttonentry is unfocused.
3069 /* available styles:
3074 typedef struct _Stackedicon_Item Elm_Stackedicon_Item;
3075 EAPI Evas_Object *elm_stackedicon_add(Evas_Object *parent);
3076 EAPI Elm_Stackedicon_Item *elm_stackedicon_item_append(Evas_Object *obj, const char *path);
3077 EAPI Elm_Stackedicon_Item *elm_stackedicon_item_prepend(Evas_Object *obj, const char *path);
3078 EAPI void elm_stackedicon_item_del(Elm_Stackedicon_Item *it);
3079 EAPI Eina_List *elm_stackedicon_item_list_get(Evas_Object *obj);
3080 /* smart callback called:
3081 * "expanded" - This signal is emitted when a stackedicon is expanded.
3082 * "clicked" - This signal is emitted when a stackedicon is clicked.
3084 /* available styles:
3089 typedef struct _Dialogue_Item Dialogue_Item;
3091 typedef enum _Elm_Dialoguegourp_Item_Style
3093 ELM_DIALOGUEGROUP_ITEM_STYLE_DEFAULT = 0,
3094 ELM_DIALOGUEGROUP_ITEM_STYLE_EDITFIELD = (1 << 0),
3095 ELM_DIALOGUEGROUP_ITEM_STYLE_EDITFIELD_WITH_TITLE = (1 << 1),
3096 ELM_DIALOGUEGROUP_ITEM_STYLE_EDIT_TITLE = (1 << 2),
3097 ELM_DIALOGUEGROUP_ITEM_STYLE_HIDDEN = (1 << 3),
3098 ELM_DIALOGUEGROUP_ITEM_STYLE_DATAVIEW = (1 << 4),
3099 ELM_DIALOGUEGROUP_ITEM_STYLE_NO_BG = (1 << 5),
3100 ELM_DIALOGUEGROUP_ITEM_STYLE_SUB = (1 << 6),
3101 ELM_DIALOGUEGROUP_ITEM_STYLE_EDIT = (1 << 7),
3102 ELM_DIALOGUEGROUP_ITEM_STYLE_EDIT_MERGE = (1 << 8),
3103 ELM_DIALOGUEGROUP_ITEM_STYLE_LAST = (1 << 9)
3104 } Elm_Dialoguegroup_Item_Style;
3106 EAPI Evas_Object *elm_dialoguegroup_add(Evas_Object *parent);
3107 EAPI Dialogue_Item *elm_dialoguegroup_append(Evas_Object *obj, Evas_Object *subobj, Elm_Dialoguegroup_Item_Style style);
3108 EAPI Dialogue_Item *elm_dialoguegroup_prepend(Evas_Object *obj, Evas_Object *subobj, Elm_Dialoguegroup_Item_Style style);
3109 EAPI Dialogue_Item *elm_dialoguegroup_insert_after(Evas_Object *obj, Evas_Object *subobj, Dialogue_Item *after, Elm_Dialoguegroup_Item_Style style);
3110 EAPI Dialogue_Item *elm_dialoguegroup_insert_before(Evas_Object *obj, Evas_Object *subobj, Dialogue_Item *before, Elm_Dialoguegroup_Item_Style style);
3111 EAPI void elm_dialoguegroup_remove(Dialogue_Item *item);
3112 EAPI void elm_dialoguegroup_remove_all(Evas_Object *obj);
3113 EAPI void elm_dialoguegroup_title_set(Evas_Object *obj, const char *title);
3114 EAPI const char *elm_dialoguegroup_title_get(Evas_Object *obj);
3115 EAPI void elm_dialoguegroup_press_effect_set(Dialogue_Item *item, Eina_Bool press);
3116 EAPI Eina_Bool elm_dialoguegroup_press_effect_get(Dialogue_Item *item);
3117 EAPI Evas_Object *elm_dialoguegroup_item_content_get(Dialogue_Item *item);
3118 EAPI void elm_dialoguegroup_item_style_set(Dialogue_Item *item, Elm_Dialoguegroup_Item_Style style);
3119 EAPI Elm_Dialoguegroup_Item_Style elm_dialoguegroup_item_style_get(Dialogue_Item *item);
3120 EAPI void elm_dialoguegroup_item_disabled_set(Dialogue_Item *item, Eina_Bool disabled);
3121 EAPI Eina_Bool elm_dialoguegroup_item_disabled_get(Dialogue_Item *item);
3126 ELM_DAYSELECTOR_SUN,
3127 ELM_DAYSELECTOR_MON,
3128 ELM_DAYSELECTOR_TUE,
3129 ELM_DAYSELECTOR_WED,
3130 ELM_DAYSELECTOR_THU,
3131 ELM_DAYSELECTOR_FRI,
3133 } Elm_DaySelector_Day;
3135 EAPI Evas_Object *elm_dayselector_add(Evas_Object *parent);
3136 EAPI Eina_Bool elm_dayselector_check_state_get(Evas_Object *obj, Elm_DaySelector_Day day);
3137 EAPI void elm_dayselector_check_state_set(Evas_Object *obj, Elm_DaySelector_Day day, Eina_Bool checked);
3140 EAPI Evas_Object *elm_nocontents_add(Evas_Object *parent);
3141 EAPI void elm_nocontents_label_set(Evas_Object *obj, const char *label);
3142 EAPI const char *elm_nocontents_label_get(const Evas_Object *obj);
3143 EAPI void elm_nocontents_custom_set(const Evas_Object *obj, Evas_Object *custom);
3144 EAPI Evas_Object *elm_nocontents_custom_get(const Evas_Object *obj);
3149 ELM_TICKERNOTI_DEFAULT,
3150 ELM_TICKERNOTI_DETAILVIEW
3151 } Elm_Tickernoti_Mode;
3153 EAPI Evas_Object *elm_tickernoti_add (Evas_Object *parent);
3154 EAPI void elm_tickernoti_icon_set (const Evas_Object *obj, Evas_Object *icon);
3155 EAPI Evas_Object *elm_tickernoti_icon_get (const Evas_Object *obj);
3156 EAPI void elm_tickernoti_label_set (Evas_Object *obj, const char *label);
3157 EAPI const char *elm_tickernoti_label_get (const Evas_Object *obj);
3158 EAPI void elm_tickernoti_detailview_label_set (Evas_Object *obj, const char *label);
3159 EAPI const char *elm_tickernoti_detailview_label_get (const Evas_Object *obj);
3160 EAPI void elm_tickernoti_detailview_button_set (const Evas_Object *obj, Evas_Object *button);
3161 EAPI Evas_Object *elm_tickernoti_detailview_button_get (const Evas_Object *obj);
3162 EAPI void elm_tickernoti_detailview_icon_set (const Evas_Object *obj, Evas_Object *icon);
3163 EAPI Evas_Object *elm_tickernoti_detailview_icon_get (const Evas_Object *obj);
3164 EAPI Evas_Object *elm_tickernoti_detailview_get (const Evas_Object *obj);
3165 EAPI int elm_tickernoti_rotation_get (const Evas_Object *obj);
3166 EAPI void elm_tickernoti_rotation_set (const Evas_Object *obj, int angle);
3167 EAPI void elm_tickernoti_mode_set (const Evas_Object *obj, Elm_Tickernoti_Mode mode);
3168 EAPI Elm_Tickernoti_Mode elm_tickernoti_mode_get (const Evas_Object *obj);
3171 typedef struct _Imageslider_Item Elm_Imageslider_Item;
3172 typedef void (*Elm_Imageslider_Cb)(void *data, Evas_Object *obj, void *event_info);
3173 EAPI Evas_Object *elm_imageslider_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
3174 EAPI Elm_Imageslider_Item *elm_imageslider_item_append(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, void *data) EINA_ARG_NONNULL(1);
3175 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) EINA_ARG_NONNULL(1);
3176 EAPI Elm_Imageslider_Item *elm_imageslider_item_prepend(Evas_Object *obj, const char *photo_file, Elm_Imageslider_Cb func, void *data) EINA_ARG_NONNULL(1);
3177 EAPI void elm_imageslider_item_del(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
3178 EAPI Elm_Imageslider_Item *elm_imageslider_selected_item_get(Evas_Object *obj) EINA_ARG_NONNULL(1);
3179 EAPI Eina_Bool elm_imageslider_item_selected_get(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
3180 EAPI void elm_imageslider_item_selected_set(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
3181 EAPI const char *elm_imageslider_item_photo_file_get(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
3182 EAPI Elm_Imageslider_Item *elm_imageslider_item_prev(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
3183 EAPI Elm_Imageslider_Item *elm_imageslider_item_next(Elm_Imageslider_Item *it) EINA_ARG_NONNULL(1);
3184 EAPI void elm_imageslider_prev(Evas_Object *obj) EINA_ARG_NONNULL(1);
3185 EAPI void elm_imageslider_next(Evas_Object *obj) EINA_ARG_NONNULL(1);
3187 typedef struct _Elm_Store Elm_Store;
3188 typedef struct _Elm_Store_Filesystem Elm_Store_Filesystem;
3189 typedef struct _Elm_Store_Item Elm_Store_Item;
3190 typedef struct _Elm_Store_Item_Filesystem Elm_Store_Item_Filesystem;
3191 typedef struct _Elm_Store_Item_Info Elm_Store_Item_Info;
3192 typedef struct _Elm_Store_Item_Info_Filesystem Elm_Store_Item_Info_Filesystem;
3193 typedef struct _Elm_Store_Item_Mapping Elm_Store_Item_Mapping;
3194 typedef struct _Elm_Store_Item_Mapping_Empty Elm_Store_Item_Mapping_Empty;
3195 typedef struct _Elm_Store_Item_Mapping_Icon Elm_Store_Item_Mapping_Icon;
3196 typedef struct _Elm_Store_Item_Mapping_Photo Elm_Store_Item_Mapping_Photo;
3197 typedef struct _Elm_Store_Item_Mapping_Custom Elm_Store_Item_Mapping_Custom;
3199 typedef Eina_Bool (*Elm_Store_Item_List_Cb) (void *data, Elm_Store_Item_Info *info);
3200 typedef void (*Elm_Store_Item_Fetch_Cb) (void *data, Elm_Store_Item *sti);
3201 typedef void (*Elm_Store_Item_Unfetch_Cb) (void *data, Elm_Store_Item *sti);
3202 typedef void *(*Elm_Store_Item_Mapping_Cb) (void *data, Elm_Store_Item *sti, const char *part);
3206 ELM_STORE_ITEM_MAPPING_NONE = 0,
3207 ELM_STORE_ITEM_MAPPING_LABEL, // const char * -> label
3208 ELM_STORE_ITEM_MAPPING_STATE, // Eina_Bool -> state
3209 ELM_STORE_ITEM_MAPPING_ICON, // char * -> icon path
3210 ELM_STORE_ITEM_MAPPING_PHOTO, // char * -> photo path
3211 ELM_STORE_ITEM_MAPPING_CUSTOM, // item->custom(it->data, it, part) -> void * (-> any)
3212 // can add more here as needed by common apps
3213 ELM_STORE_ITEM_MAPPING_LAST
3214 } Elm_Store_Item_Mapping_Type;
3216 struct _Elm_Store_Item_Mapping_Icon
3218 // FIXME: allow edje file icons
3220 Elm_Icon_Lookup_Order lookup_order;
3221 Eina_Bool standard_name : 1;
3222 Eina_Bool no_scale : 1;
3223 Eina_Bool smooth : 1;
3224 Eina_Bool scale_up : 1;
3225 Eina_Bool scale_down : 1;
3228 struct _Elm_Store_Item_Mapping_Empty
3233 struct _Elm_Store_Item_Mapping_Photo
3238 struct _Elm_Store_Item_Mapping_Custom
3240 Elm_Store_Item_Mapping_Cb func;
3243 struct _Elm_Store_Item_Mapping
3245 Elm_Store_Item_Mapping_Type type;
3249 Elm_Store_Item_Mapping_Empty empty;
3250 Elm_Store_Item_Mapping_Icon icon;
3251 Elm_Store_Item_Mapping_Photo photo;
3252 Elm_Store_Item_Mapping_Custom custom;
3253 // add more types here
3257 struct _Elm_Store_Item_Info
3259 Elm_Genlist_Item_Class *item_class;
3260 const Elm_Store_Item_Mapping *mapping;
3265 struct _Elm_Store_Item_Info_Filesystem
3267 Elm_Store_Item_Info base;
3271 #define ELM_STORE_ITEM_MAPPING_END { ELM_STORE_ITEM_MAPPING_NONE, NULL, 0, { .empty = { EINA_TRUE } } }
3272 #define ELM_STORE_ITEM_MAPPING_OFFSET(st, it) offsetof(st, it)
3274 EAPI void elm_store_free(Elm_Store *st);
3276 EAPI Elm_Store *elm_store_filesystem_new(void);
3277 EAPI void elm_store_filesystem_directory_set(Elm_Store *st, const char *dir) EINA_ARG_NONNULL(1);
3278 EAPI const char *elm_store_filesystem_directory_get(const Elm_Store *st) EINA_ARG_NONNULL(1);
3279 EAPI const char *elm_store_item_filesystem_path_get(const Elm_Store_Item *sti) EINA_ARG_NONNULL(1);
3281 EAPI void elm_store_target_genlist_set(Elm_Store *st, Evas_Object *obj) EINA_ARG_NONNULL(1);
3283 EAPI void elm_store_cache_set(Elm_Store *st, int max) EINA_ARG_NONNULL(1);
3284 EAPI int elm_store_cache_get(const Elm_Store *st) EINA_ARG_NONNULL(1);
3285 EAPI void elm_store_list_func_set(Elm_Store *st, Elm_Store_Item_List_Cb func, const void *data) EINA_ARG_NONNULL(1, 2);
3286 EAPI void elm_store_fetch_func_set(Elm_Store *st, Elm_Store_Item_Fetch_Cb func, const void *data) EINA_ARG_NONNULL(1, 2);
3287 EAPI void elm_store_fetch_thread_set(Elm_Store *st, Eina_Bool use_thread) EINA_ARG_NONNULL(1);
3288 EAPI Eina_Bool elm_store_fetch_thread_get(const Elm_Store *st) EINA_ARG_NONNULL(1);
3290 EAPI void elm_store_unfetch_func_set(Elm_Store *st, Elm_Store_Item_Unfetch_Cb func, const void *data) EINA_ARG_NONNULL(1, 2);
3291 EAPI void elm_store_sorted_set(Elm_Store *st, Eina_Bool sorted) EINA_ARG_NONNULL(1);
3292 EAPI Eina_Bool elm_store_sorted_get(const Elm_Store *st) EINA_ARG_NONNULL(1);
3293 EAPI void elm_store_item_data_set(Elm_Store_Item *sti, void *data) EINA_ARG_NONNULL(1);
3294 EAPI void *elm_store_item_data_get(Elm_Store_Item *sti) EINA_ARG_NONNULL(1);
3295 EAPI const Elm_Store *elm_store_item_store_get(const Elm_Store_Item *sti) EINA_ARG_NONNULL(1);
3296 EAPI const Elm_Genlist_Item *elm_store_item_genlist_item_get(const Elm_Store_Item *sti) EINA_ARG_NONNULL(1);