*
* vim:ts=8:sw=3:sts=3:expandtab:cino=>5n-3f0^-2{2(0W1st0
*/
+
+/**
+@file elementary.dox
+@brief Elementary Widget Library
+*/
+
+/**
+@mainpage Elementary
+@image html elementary.png
+@version @PACKAGE_VERSION@
+@author Carsten Haitzler <raster@@rasterman.com>
+@author Gustavo Sverzut Barbieri <barbieri@@profusion.mobi>
+@author Cedric Bail <cedric.bail@@free.fr>
+@author Vincent Torri <vtorri@@univ-evry.fr>
+@author Daniel Kolesa <quaker66@@gmail.com>
+@author Jaime Thomas <avi.thomas@@gmail.com>
+@author Swisscom - http://www.swisscom.ch/
+@author Christopher Michael <devilhorns@@comcast.net>
+@author Marco Trevisan (Treviño) <mail@@3v1n0.net>
+@author Michael Bouchaud <michael.bouchaud@@gmail.com>
+@author Jonathan Atton (Watchwolf) <jonathan.atton@@gmail.com>
+@author Brian Wang <brian.wang.0721@@gmail.com>
+@author Mike Blumenkrantz (zmike) <mike@@zentific.com>
+@author Samsung Electronics <tbd>
+@author Samsung SAIT <tbd>
+@author Brett Nash <nash@@nash.id.au>
+@author Bruno Dilly <bdilly@@profusion.mobi>
+@author Rafael Fonseca <rfonseca@@profusion.mobi>
+@author Chuneon Park <chuneon.park@@samsung.com>
+@author Woohyun Jung <wh0705.jung@@samsung.com>
+@author Jaehwan Kim <jae.hwan.kim@@samsung.com>
+@author Wonguk Jeong <wonguk.jeong@@samsung.com>
+@author Leandro A. F. Pereira <leandro@@profusion.mobi>
+@author Helen Fornazier <helen.fornazier@@profusion.mobi>
+@author Gustavo Lima Chaves <glima@@profusion.mobi>
+@author Fabiano Fidêncio <fidencio@@profusion.mobi>
+@author Tiago Falcão <tiago@@profusion.mobi>
+@author Otavio Pontes <otavio@@profusion.mobi>
+@author Viktor Kojouharov <vkojouharov@@gmail.com>
+@author Daniel Juyung Seo (SeoZ) <juyung.seo@@samsung.com> <seojuyung2@@gmail.com>
+@author Sangho Park <sangho.g.park@@samsung.com> <gouache95@@gmail.com>
+@author Rajeev Ranjan (Rajeev) <rajeev.r@@samsung.com> <rajeev.jnnce@@gmail.com>
+@author Seunggyun Kim <sgyun.kim@@samsung.com> <tmdrbs@@gmail.com>
+@author Sohyun Kim <anna1014.kim@@samsung.com> <sohyun.anna@@gmail.com>
+@author Jihoon Kim <jihoon48.kim@@samsung.com>
+@author Jeonghyun Yun (arosis) <jh0506.yun@@samsung.com>
+@author Tom Hacohen <tom@@stosb.com>
+@author Aharon Hillel <a.hillel@@partner.samsung.com>
+@author Jonathan Atton (Watchwolf) <jonathan.atton@@gmail.com>
+@author Shinwoo Kim <kimcinoo@@gmail.com>
+@author Govindaraju SM <govi.sm@@samsung.com> <govism@@gmail.com>
+@author Prince Kumar Dubey <prince.dubey@@samsung.com> <prince.dubey@@gmail.com>
+@date 2008-2011
+
+@section intro What is Elementary?
+
+This is a VERY SIMPLE toolkit. It is not meant for writing extensive desktop
+applications (yet). Small simple ones with simple needs.
+
+It is meant to make the programmers work almost brainless but give them lots
+of flexibility.
+
+License: LGPL v2 (see COPYING in the base of Elementary's source). This
+applies to all files in the source here.
+
+Acknowledgements: There is a lot that goes into making a widget set, and
+they don't happen out of nothing. It's like trying to make everyone
+everywhere happy, regardless of age, gender, race or nationality - and
+that is really tough. So thanks to people and organisations behind this,
+aslisted in the Authors section above.
+
+@verbatim
+Pants
+@endverbatim
+*/
+
#ifndef ELEMENTARY_H
#define ELEMENTARY_H
#include <Eina.h>
#include <Eet.h>
#include <Evas.h>
+#include <Evas_GL.h>
#include <Ecore.h>
#include <Ecore_Evas.h>
#include <Ecore_File.h>
} Elm_Text_Format;
/**
+ * Line wrapping types.
+ */
+ typedef enum _Elm_Wrap_Type
+ {
+ ELM_WRAP_NONE = 0, /**< No wrap - value is zero */
+ ELM_WRAP_CHAR, /**< Char wrap - wrap between graphmes */
+ ELM_WRAP_WORD, /**< Word wrap - wrap in allowed wrapping points (as defined in the unicode standard) */
+ ELM_WRAP_MIXED, /**< Mixed wrap - Word wrap, and if that fails, char wrap. */
+ ELM_WRAP_LAST
+ } Elm_Wrap_Type;
+
+
+ /**
* Called back when a widget's tooltip is activated and needs content.
* @param data user-data given to elm_object_tooltip_content_cb_set()
* @param obj owner widget.
EAPI const char *elm_app_lib_dir_get(void);
EAPI const char *elm_app_data_dir_get(void);
EAPI const char *elm_app_locale_dir_get(void);
-
+
EAPI void elm_quicklaunch_mode_set(Eina_Bool ql_on);
EAPI Eina_Bool elm_quicklaunch_mode_get(void);
EAPI int elm_quicklaunch_init(int argc, char **argv);
EAPI Evas_Object *elm_icon_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_icon_file_set(Evas_Object *obj, const char *file, const char *group) EINA_ARG_NONNULL(1, 2);
+ EAPI void elm_icon_thumb_set(const Evas_Object *obj, const char *file, const char *group) EINA_ARG_NONNULL(1, 2);
EAPI void elm_icon_file_get(const Evas_Object *obj, const char **file, const char **group) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_icon_standard_set(Evas_Object *obj, const char *name) EINA_ARG_NONNULL(1);
EAPI const char *elm_icon_standard_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI Elm_Image_Orient elm_image_orient_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_image_editable_set(Evas_Object *obj, Eina_Bool set) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_image_editable_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI Evas_Object *elm_image_object_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
/* smart callbacks called:
* "clicked" - the user clicked the image
*/
+ /* glview */
+ typedef void (*Elm_GLView_Func)(Evas_Object *obj);
+
+ typedef enum _Elm_GLView_Mode
+ {
+ ELM_GLVIEW_ALPHA = 1,
+ ELM_GLVIEW_DEPTH = 2,
+ ELM_GLVIEW_STENCIL = 4
+ } Elm_GLView_Mode;
+
+ /**
+ * Defines a policy for the glview resizing.
+ *
+ * @note Default is ELM_GLVIEW_RESIZE_POLICY_RECREATE
+ */
+ typedef enum _Elm_GLView_Resize_Policy
+ {
+ ELM_GLVIEW_RESIZE_POLICY_RECREATE = 1, /**< Resize the internal surface along with the image */
+ ELM_GLVIEW_RESIZE_POLICY_SCALE = 2 /**< Only reize the internal image and not the surface */
+ } Elm_GLView_Resize_Policy;
+
+ typedef enum _Elm_GLView_Render_Policy
+ {
+ ELM_GLVIEW_RENDER_POLICY_ON_DEMAND = 1, /**< Render only when there is a need for redrawing */
+ ELM_GLVIEW_RENDER_POLICY_ALWAYS = 2 /**< Render always even when it is not visible */
+ } Elm_GLView_Render_Policy;
+
+
+ EAPI Evas_Object *elm_glview_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
+ EAPI void elm_glview_size_set(Evas_Object *obj, Evas_Coord width, Evas_Coord height) EINA_ARG_NONNULL(1);
+ EAPI void elm_glview_size_get(const Evas_Object *obj, Evas_Coord *width, Evas_Coord *height) EINA_ARG_NONNULL(1);
+ EAPI Evas_GL_API *elm_glview_gl_api_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI Eina_Bool elm_glview_mode_set(Evas_Object *obj, Elm_GLView_Mode mode) EINA_ARG_NONNULL(1);
+ EAPI Eina_Bool elm_glview_scale_policy_set(Evas_Object *obj, Elm_GLView_Resize_Policy policy) EINA_ARG_NONNULL(1);
+ EAPI Eina_Bool elm_glview_render_policy_set(Evas_Object *obj, Elm_GLView_Render_Policy policy) EINA_ARG_NONNULL(1);
+ EAPI void elm_glview_render_func_set(Evas_Object *obj, Elm_GLView_Func func);
+ EAPI void elm_glview_changed_set(Evas_Object *obj) EINA_ARG_NONNULL(1);
+
/* box */
typedef struct _Elm_Box_Transition Elm_Box_Transition;
EAPI Evas_Object *elm_box_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
EAPI void elm_box_horizontal_set(Evas_Object *obj, Eina_Bool horizontal) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_box_horizontal_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
- EAPI void elm_box_homogenous_set(Evas_Object *obj, Eina_Bool homogenous) EINA_ARG_NONNULL(1);
- EAPI Eina_Bool elm_box_homogenous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI void elm_box_homogeneous_set(Evas_Object *obj, Eina_Bool homogeneous) EINA_ARG_NONNULL(1);
+ EAPI Eina_Bool elm_box_homogeneous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EINA_DEPRECATED EAPI void elm_box_homogenous_set(Evas_Object *obj, Eina_Bool homogenous) EINA_ARG_NONNULL(1);
+ EINA_DEPRECATED EAPI Eina_Bool elm_box_homogenous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_box_pack_start(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1);
EAPI void elm_box_pack_end(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1);
EAPI void elm_box_pack_before(Evas_Object *obj, Evas_Object *subobj, Evas_Object *before) EINA_ARG_NONNULL(1);
EAPI Evas_Object *elm_label_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
EAPI void elm_label_label_set(Evas_Object *obj, const char *label) EINA_ARG_NONNULL(1);
EAPI const char *elm_label_label_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
- EAPI void elm_label_line_wrap_set(Evas_Object *obj, Eina_Bool wrap) EINA_ARG_NONNULL(1);
- EAPI Eina_Bool elm_label_line_wrap_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI void elm_label_line_wrap_set(Evas_Object *obj, Elm_Wrap_Type wrap) EINA_ARG_NONNULL(1);
+ EAPI Elm_Wrap_Type elm_label_line_wrap_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_label_wrap_width_set(Evas_Object *obj, Evas_Coord w) EINA_ARG_NONNULL(1);
EAPI Evas_Coord elm_label_wrap_width_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_label_wrap_height_set(Evas_Object *obj, Evas_Coord h) EINA_ARG_NONNULL(1);
/* table */
EAPI Evas_Object *elm_table_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
- EAPI void elm_table_homogenous_set(Evas_Object *obj, Eina_Bool homogenous) EINA_ARG_NONNULL(1);
+ EAPI void elm_table_homogeneous_set(Evas_Object *obj, Eina_Bool homogeneous) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_table_homogeneous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EINA_DEPRECATED EAPI void elm_table_homogenous_set(Evas_Object *obj, Eina_Bool homogenous) EINA_ARG_NONNULL(1);
+ EINA_DEPRECATED EAPI Eina_Bool elm_table_homogenous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_table_padding_set(Evas_Object *obj, Evas_Coord horizontal, Evas_Coord vertical) EINA_ARG_NONNULL(1);
EAPI void elm_table_padding_get(const Evas_Object *obj, Evas_Coord *horizontal, Evas_Coord *vertical) EINA_ARG_NONNULL(1);
EAPI void elm_table_pack(Evas_Object *obj, Evas_Object *subobj, int x, int y, int w, int h) EINA_ARG_NONNULL(1);
EAPI void elm_gengrid_align_set(Evas_Object *obj, double align_x, double align_y) EINA_ARG_NONNULL(1);
EAPI void elm_gengrid_align_get(const Evas_Object *obj, double *align_x, double *align_y) EINA_ARG_NONNULL(1);
+ EAPI void elm_gengrid_reorder_mode_set(Evas_Object *obj, Eina_Bool reorder_mode) EINA_ARG_NONNULL(1);
+ EAPI Eina_Bool elm_gengrid_reorder_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_gengrid_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_gengrid_always_select_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_gengrid_no_select_mode_set(Evas_Object *obj, Eina_Bool no_select) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_layout_file_set(Evas_Object *obj, const char *file, const char *group) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_layout_theme_set(Evas_Object *obj, const char *clas, const char *group, const char *style) EINA_ARG_NONNULL(1);
EAPI void elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content) EINA_ARG_NONNULL(1);
- EAPI const Evas_Object *elm_layout_content_get(const Evas_Object *obj, const char *swallow) EINA_ARG_NONNULL(1);
+ EAPI Evas_Object *elm_layout_content_get(const Evas_Object *obj, const char *swallow) EINA_ARG_NONNULL(1);
EAPI Evas_Object *elm_layout_content_unset(Evas_Object *obj, const char *swallow) EINA_ARG_NONNULL(1);
EAPI void elm_layout_text_set(Evas_Object *obj, const char *part, const char *text) EINA_ARG_NONNULL(1);
EAPI const char *elm_layout_text_get(const Evas_Object *obj, const char *part) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_entry_is_empty(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI const char *elm_entry_selection_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_entry_entry_insert(Evas_Object *obj, const char *entry) EINA_ARG_NONNULL(1);
- EAPI void elm_entry_line_wrap_set(Evas_Object *obj, Eina_Bool wrap) EINA_ARG_NONNULL(1);
- EAPI void elm_entry_line_char_wrap_set(Evas_Object *obj, Eina_Bool wrap) EINA_ARG_NONNULL(1);
+ EAPI void elm_entry_line_wrap_set(Evas_Object *obj, Elm_Wrap_Type wrap) EINA_ARG_NONNULL(1);
EAPI void elm_entry_editable_set(Evas_Object *obj, Eina_Bool editable) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_entry_editable_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_entry_select_none(Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_toolbar_item_separator_get(const Elm_Toolbar_Item *item) EINA_ARG_NONNULL(1);
EAPI void elm_toolbar_mode_shrink_set(Evas_Object *obj, Elm_Toolbar_Shrink_Mode shrink_mode) EINA_ARG_NONNULL(1);
EAPI Elm_Toolbar_Shrink_Mode elm_toolbar_mode_shrink_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
- EAPI void elm_toolbar_homogenous_set(Evas_Object *obj, Eina_Bool homogenous) EINA_ARG_NONNULL(1);
- EAPI Eina_Bool elm_toolbar_homogenous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI void elm_toolbar_homogeneous_set(Evas_Object *obj, Eina_Bool homogeneous) EINA_ARG_NONNULL(1);
+ EAPI Eina_Bool elm_toolbar_homogeneous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EINA_DEPRECATED EAPI void elm_toolbar_homogenous_set(Evas_Object *obj, Eina_Bool homogenous) EINA_ARG_NONNULL(1);
+ EINA_DEPRECATED EAPI Eina_Bool elm_toolbar_homogenous_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_toolbar_menu_parent_set(Evas_Object *obj, Evas_Object *parent) EINA_ARG_NONNULL(1);
EAPI Evas_Object *elm_toolbar_menu_parent_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_toolbar_align_set(Evas_Object *obj, double align) EINA_ARG_NONNULL(1);
typedef Evas_Object *(*GenlistItemIconGetFunc) (void *data, Evas_Object *obj, const char *part);
typedef Eina_Bool (*GenlistItemStateGetFunc) (void *data, Evas_Object *obj, const char *part);
typedef void (*GenlistItemDelFunc) (void *data, Evas_Object *obj);
+ typedef void (*GenlistItemMovedFunc) (Evas_Object *obj, Elm_Genlist_Item *item, Elm_Genlist_Item *rel_item, Eina_Bool move_after);
struct _Elm_Genlist_Item_Class
{
GenlistItemIconGetFunc icon_get;
GenlistItemStateGetFunc state_get;
GenlistItemDelFunc del;
+ GenlistItemMovedFunc moved;
} func;
const char *mode_item_style;
};
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);
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);
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);
+EAPI Elm_Genlist_Item *elm_genlist_item_sorted_insert(Evas_Object *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent, Elm_Genlist_Item_Flags flags, Eina_Compare_Cb comp, Evas_Smart_Cb func,const void *func_data);
/* operations to retrieve existing items */
EAPI Elm_Genlist_Item *elm_genlist_selected_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI const Eina_List *elm_genlist_selected_items_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_genlist_item_mode_set(Elm_Genlist_Item *it, const char *mode_type, Eina_Bool mode_set) EINA_ARG_NONNULL(1, 2);
EAPI const char *elm_genlist_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI const Elm_Genlist_Item *elm_genlist_mode_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
- /* smart callbacks called:
- * "clicked,double" - This is called when a user has double-clicked an item. The
- * event_info parameter is the genlist item that was double-clicked.
+ EAPI void elm_genlist_reorder_mode_set(Evas_Object *obj, Eina_Bool reorder_mode) EINA_ARG_NONNULL(1);
+ EAPI Eina_Bool elm_genlist_reorder_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ /** Signals that you can add callbacks for are:
+ * "clicked,double" - This is called when a user has double-clicked an item.
+ * The event_info parameter is the genlist item that was
+ * double-clicked.
* "selected" - This is called when a user has made an item selected. The
* event_info parameter is the genlist item that was selected.
* "unselected" - This is called when a user has made an item unselected. The
- * event_info parameter is the genlist item that was unselected.
+ * event_info parameter is the genlist item that was
+ * unselected.
* "expanded" - This is called when elm_genlist_item_expanded_set() is called
- * and the item is now meant to be expanded. The event_info parameter is the
- * genlist item that was indicated to expand. It is the job of this callback
- * to then fill in the child items.
- * "contracted" - This is called when elm_genlist_item_expanded_set() is called
- * and the item is now meant to be contracted. The event_info parameter is
- * the genlist item that was indicated to contract. It is the job of this
- * callback to then delete the child items.
+ * and the item is now meant to be expanded. The event_info
+ * parameter is the genlist item that was indicated to expand.
+ * It is the job of this callback to then fill in the child
+ * items.
+ * "contracted" - This is called when elm_genlist_item_expanded_set() is
+ * called and the item is now meant to be contracted. The
+ * event_info parameter is the genlist item that was indicated
+ * to contract. It is the job of this callback to then delete
+ * the child items.
* "expand,request" - This is called when a user has indicated they want to
- * expand a tree branch item. The callback should decide if the item can
- * expand (has any children) and then call elm_genlist_item_expanded_set()
- * appropriately to set the state. The event_info parameter is the genlist
- * item that was indicated to expand.
+ * expand a tree branch item. The callback should decide
+ * if the item can expand (has any children) and then call
+ * elm_genlist_item_expanded_set() appropriately to set
+ * the state. The event_info parameter is the genlist item
+ * that was indicated to expand.
* "contract,request" - This is called when a user has indicated they want to
- * contract a tree branch item. The callback should decide if the item can
- * contract (has any children) and then call elm_genlist_item_expanded_set()
- * appropriately to set the state. The event_info parameter is the genlist
- * item that was indicated to contract.
+ * contract a tree branch item. The callback should
+ * decide if the item can contract (has any children)
+ * and then call elm_genlist_item_expanded_set()
+ * appropriately to set the state. The event_info
+ * parameter is the genlist item that was indicated to
+ * contract.
* "realized" - This is called when the item in the list is created as a real
- * evas object. event_info parameter is the genlist item that was created.
- * The object may be deleted at any time, so it is up to the caller to
- * not use the object pointer from elm_genlist_item_object_get() in a way
- * where it may point to freed objects.
+ * evas object. event_info parameter is the genlist item that
+ * was created. The object may be deleted at any time, so it is
+ * up to the caller to not use the object pointer from
+ * elm_genlist_item_object_get() in a way where it may point to
+ * freed objects.
* "unrealized" - This is called just before an item is unrealized. After
- * this call icon objects provided will be deleted and the item object
- * itself delete or be put into a floating cache.
- * "drag,start,up" - This is called when the item in the list has been dragged
- * (not scrolled) up.
- * "drag,start,down" - This is called when the item in the list has been dragged
- * (not scrolled) down.
- * "drag,start,left" - This is called when the item in the list has been dragged i
- * (not scrolled) left.
- * "drag,start,right" - This is called when the item in the list has been dragged
- * (not scrolled) right.
+ * this call icon objects provided will be deleted and the
+ * item object itself delete or be put into a floating cache.
+ * "drag,start,up" - This is called when the item in the list has been
+ * dragged (not scrolled) up.
+ * "drag,start,down" - This is called when the item in the list has been
+ * dragged (not scrolled) down.
+ * "drag,start,left" - This is called when the item in the list has been
+ * dragged (not scrolled) left.
+ * "drag,start,right" - This is called when the item in the list has been
+ * dragged (not scrolled) right.
* "drag,stop" - This is called when the item in the list has stopped being
* dragged.
* "drag" - This is called when the item in the list is being dragged.
- * "longpressed" - This is called when the item is pressed for a certain amount
- * of time. By default it's 1 second.
+ * "longpressed" - This is called when the item is pressed for a certain
+ * amount of time. By default it's 1 second.
* "scroll,edge,top" - This is called when the genlist is scrolled until the
* top edge.
- * "scroll,edge,bottom" - This is called when the genlist is scrolled until the
- * bottom edge.
+ * "scroll,edge,bottom" - This is called when the genlist is scrolled until
+ * the bottom edge.
* "scroll,edge,left" - This is called when the genlist is scrolled until the
* left edge.
- * "scroll,edge,right" - This is called when the genlist is scrolled until the
- * right edge.
+ * "scroll,edge,right" - This is called when the genlist is scrolled until
+ * the right edge.
* "multi,swipe,left" - This is called when the genlist is multi-touch swiped
* left.
- * "multi,swipe,right" - This is called when the genlist is multi-touch swiped
- * right.
- * "multi,swipe,up" - This is called when the genlist is multi-touch swiped up.
+ * "multi,swipe,right" - This is called when the genlist is multi-touch
+ * swiped right.
+ * "multi,swipe,up" - This is called when the genlist is multi-touch swiped
+ * up.
* "multi,swipe,down" - This is called when the genlist is multi-touch swiped
* down.
* "multi,pinch,out" - This is called when the genlist is multi-touch pinched
* out.
- * "multi,pinch,in" - This is called when the genlist is multi-touch pinched in.
+ * "multi,pinch,in" - This is called when the genlist is multi-touch pinched
+ * in.
+ * "swipe" - This is called when the genlist is swiped.
*/
/* check */
EAPI Evas_Object *elm_slideshow_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
EAPI Elm_Slideshow_Item *elm_slideshow_item_add(Evas_Object *obj, const Elm_Slideshow_Item_Class *itc, const void *data) EINA_ARG_NONNULL(1);
+ EAPI Elm_Slideshow_Item *elm_slideshow_item_sorted_insert(Evas_Object *obj, const Elm_Slideshow_Item_Class *itc, const void *data, Eina_Compare_Cb func) EINA_ARG_NONNULL(1);
EAPI void elm_slideshow_show(Elm_Slideshow_Item *item) EINA_ARG_NONNULL(1);
EAPI void elm_slideshow_next(Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_slideshow_previous(Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void *elm_slideshow_item_data_get(const Elm_Slideshow_Item *item) EINA_ARG_NONNULL(1);
EAPI Elm_Slideshow_Item *elm_slideshow_item_current_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI Evas_Object* elm_slideshow_item_object_get(const Elm_Slideshow_Item* item) EINA_ARG_NONNULL(1);
+ EAPI Elm_Slideshow_Item *elm_slideshow_item_nth_get(const Evas_Object *obj, unsigned int nth) EINA_ARG_NONNULL(1);
EAPI const char *elm_slideshow_layout_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_slideshow_layout_set(Evas_Object *obj, const char *layout) EINA_ARG_NONNULL(1);
EAPI const Eina_List *elm_slideshow_layouts_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI int elm_slideshow_cache_before_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_slideshow_cache_after_set(Evas_Object *obj, int count) EINA_ARG_NONNULL(1);
EAPI int elm_slideshow_cache_after_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI unsigned int elm_slideshow_count_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
/* smart callbacks called:
* "changed" - when the slideshow switch to another item
*/
EAPI Evas_Object *elm_index_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
EAPI void elm_index_active_set(Evas_Object *obj, Eina_Bool active) EINA_ARG_NONNULL(1);
+ EAPI Eina_Bool elm_index_active_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_index_item_level_set(Evas_Object *obj, int level) EINA_ARG_NONNULL(1);
EAPI int elm_index_item_level_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void *elm_index_item_selected_get(const Evas_Object *obj, int level) EINA_ARG_NONNULL(1);
ELM_MAP_ZOOM_MODE_LAST
} Elm_Map_Zoom_Mode;
- typedef enum _Elm_Map_Sources
- {
- ELM_MAP_SOURCE_MAPNIK,
- ELM_MAP_SOURCE_OSMARENDER,
- ELM_MAP_SOURCE_CYCLEMAP,
- ELM_MAP_SOURCE_MAPLINT,
- ELM_MAP_SOURCE_CUSTOM_1,
- ELM_MAP_SOURCE_CUSTOM_2,
- ELM_MAP_SOURCE_CUSTOM_3,
- ELM_MAP_SOURCE_CUSTOM_4,
- ELM_MAP_SOURCE_CUSTOM_5,
- ELM_MAP_SOURCE_CUSTOM_6,
- ELM_MAP_SOURCE_MODULE,
- ELM_MAP_SOURCE_LAST
- } Elm_Map_Sources;
-
typedef enum _Elm_Map_Route_Sources
{
ELM_MAP_ROUTE_SOURCE_YOURS,
ELM_MAP_ROUTE_SOURCE_MONAV,
ELM_MAP_ROUTE_SOURCE_ORS,
- ELM_MAP_ROUTE_SOURCE_CUSTOM_1,
- ELM_MAP_ROUTE_SOURCE_CUSTOM_2,
- ELM_MAP_ROUTE_SOURCE_CUSTOM_3,
- ELM_MAP_ROUTE_SOURCE_CUSTOM_4,
- ELM_MAP_ROUTE_SOURCE_CUSTOM_5,
- ELM_MAP_ROUTE_SOURCE_CUSTOM_6,
- ELM_MAP_ROUTE_SOURCE_MODULE,
ELM_MAP_ROUTE_SOURCE_LAST
} Elm_Map_Route_Sources;
typedef enum _Elm_Map_Name_Sources
{
ELM_MAP_NAME_SOURCE_NOMINATIM,
- ELM_MAP_NAME_SOURCE_CUSTOM_1,
- ELM_MAP_NAME_SOURCE_CUSTOM_2,
- ELM_MAP_NAME_SOURCE_CUSTOM_3,
- ELM_MAP_NAME_SOURCE_CUSTOM_4,
- ELM_MAP_NAME_SOURCE_CUSTOM_5,
- ELM_MAP_NAME_SOURCE_CUSTOM_6,
- ELM_MAP_NAME_SOURCE_MODULE,
ELM_MAP_NAME_SOURCE_LAST
} Elm_Map_Name_Sources;
typedef struct _Elm_Map_Group_Class Elm_Map_Group_Class;
typedef struct _Elm_Map_Route Elm_Map_Route;
typedef struct _Elm_Map_Name Elm_Map_Name;
+ typedef struct _Elm_Map_Track Elm_Map_Track;
+
typedef Evas_Object *(*ElmMapMarkerGetFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data);
typedef void (*ElmMapMarkerDelFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data, Evas_Object *o);
typedef Evas_Object *(*ElmMapMarkerIconGetFunc) (Evas_Object *obj, Elm_Map_Marker *marker, void *data);
typedef Evas_Object *(*ElmMapGroupIconGetFunc) (Evas_Object *obj, void *data);
- typedef char *(*ElmMapSourceURLFunc) (Evas_Object *obj, int x, int y, int zoom);
- typedef char *(*ElmMapRouteSourceURLFunc) (Evas_Object *obj, char *type_name, int method, double flon, double flat, double tlon, double tlat);
- typedef char *(*ElmMapNameSourceURLFunc) (Evas_Object *obj, int method, char *name, double lon, double lat);
+
+ typedef char *(*ElmMapModuleSourceFunc) (void);
+ typedef int (*ElmMapModuleZoomMinFunc) (void);
+ typedef int (*ElmMapModuleZoomMaxFunc) (void);
+ typedef char *(*ElmMapModuleUrlFunc) (Evas_Object *obj, int x, int y, int zoom);
+ typedef int (*ElmMapModuleRouteSourceFunc) (void);
+ typedef char *(*ElmMapModuleRouteUrlFunc) (Evas_Object *obj, char *type_name, int method, double flon, double flat, double tlon, double tlat);
+ typedef char *(*ElmMapModuleNameUrlFunc) (Evas_Object *obj, int method, char *name, double lon, double lat);
+ typedef Eina_Bool (*ElmMapModuleGeoIntoCoordFunc) (const Evas_Object *obj, int zoom, double lon, double lat, int size, int *x, int *y);
+ typedef Eina_Bool (*ElmMapModuleCoordIntoGeoFunc) (const Evas_Object *obj, int zoom, int x, int y, int size, double *lon, double *lat);
EAPI Evas_Object *elm_map_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
EAPI void elm_map_zoom_set(Evas_Object *obj, int zoom) EINA_ARG_NONNULL(1);
- EAPI double elm_map_zoom_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI int elm_map_zoom_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_map_zoom_mode_set(Evas_Object *obj, Elm_Map_Zoom_Mode mode) EINA_ARG_NONNULL(1);
EAPI Elm_Map_Zoom_Mode elm_map_zoom_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_map_geo_region_get(const Evas_Object *obj, double *lon, double *lat) EINA_ARG_NONNULL(1);
EAPI void elm_map_marker_class_icon_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerIconGetFunc icon_get) EINA_ARG_NONNULL(1);
EAPI void elm_map_marker_class_get_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerGetFunc get) EINA_ARG_NONNULL(1);
EAPI void elm_map_marker_class_del_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerDelFunc del) EINA_ARG_NONNULL(1);
- EAPI void elm_map_source_set(Evas_Object *obj, Elm_Map_Sources source) EINA_ARG_NONNULL(1);
+ EAPI const char **elm_map_source_names_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI void elm_map_source_name_set(Evas_Object *obj, const char *source_name) EINA_ARG_NONNULL(1);
+ EAPI const char *elm_map_source_name_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_map_route_source_set(Evas_Object *obj, Elm_Map_Route_Sources source) EINA_ARG_NONNULL(1);
- EAPI Elm_Map_Sources elm_map_source_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI Elm_Map_Route_Sources elm_map_route_source_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
- EAPI void elm_map_source_custom_api_set(Elm_Map_Sources source, const char *label, int zoom_min, int zoom_max, ElmMapSourceURLFunc url_cb, ElmMapRouteSourceURLFunc route_url_cb, ElmMapNameSourceURLFunc name_url_cb) EINA_ARG_NONNULL(2, 5, 6, 7);
- EAPI int elm_map_source_zoom_min_get(Elm_Map_Sources source);
- EAPI int elm_map_source_zoom_max_get(Elm_Map_Sources source);
- EAPI const char *elm_map_source_name_get(Elm_Map_Sources source);
+ EAPI void elm_map_source_zoom_min_set(Evas_Object *obj, int zoom) EINA_ARG_NONNULL(1);
+ EAPI int elm_map_source_zoom_min_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI void elm_map_source_zoom_max_set(Evas_Object *obj, int zoom) EINA_ARG_NONNULL(1);
+ EAPI int elm_map_source_zoom_max_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_map_user_agent_set(Evas_Object *obj, const char *user_agent) EINA_ARG_NONNULL(1, 2);
- EAPI const char *elm_map_user_agent_get(Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI const char *elm_map_user_agent_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI Elm_Map_Route *elm_map_route_add(Evas_Object *obj, Elm_Map_Route_Type type, Elm_Map_Route_Method method, double flon, double flat, double tlon, double tlat) EINA_ARG_NONNULL(1);
EAPI void elm_map_route_remove(Elm_Map_Route *route) EINA_ARG_NONNULL(1);
EAPI void elm_map_route_color_set(Elm_Map_Route *route, int r, int g , int b, int a) EINA_ARG_NONNULL(1);
- EAPI void elm_map_route_color_get(Elm_Map_Route *route, int *r, int *g , int *b, int *a) EINA_ARG_NONNULL(1);
- EAPI double elm_map_route_distance_get(Elm_Map_Route *route) EINA_ARG_NONNULL(1);
- EAPI const char *elm_map_route_node_get(Elm_Map_Route *route) EINA_ARG_NONNULL(1);
- EAPI const char *elm_map_route_waypoint_get(Elm_Map_Route *route) EINA_ARG_NONNULL(1);
- EAPI const char *elm_map_name_address_get(Elm_Map_Name *name) EINA_ARG_NONNULL(1);
- EAPI void elm_map_name_region_get(Elm_Map_Name *name, double *lon, double *lat) EINA_ARG_NONNULL(1);
+ EAPI void elm_map_route_color_get(const Elm_Map_Route *route, int *r, int *g , int *b, int *a) EINA_ARG_NONNULL(1);
+ EAPI double elm_map_route_distance_get(const Elm_Map_Route *route) EINA_ARG_NONNULL(1);
+ EAPI const char *elm_map_route_node_get(const Elm_Map_Route *route) EINA_ARG_NONNULL(1);
+ EAPI const char *elm_map_route_waypoint_get(const Elm_Map_Route *route) EINA_ARG_NONNULL(1);
+ EAPI const char *elm_map_name_address_get(const Elm_Map_Name *name) EINA_ARG_NONNULL(1);
+ EAPI void elm_map_name_region_get(const Elm_Map_Name *name, double *lon, double *lat) EINA_ARG_NONNULL(1);
EAPI void elm_map_name_remove(Elm_Map_Name *name) EINA_ARG_NONNULL(1);
EAPI void elm_map_rotate_set(Evas_Object *obj, double degree, Evas_Coord cx, Evas_Coord cy) EINA_ARG_NONNULL(1);
EAPI void elm_map_rotate_get(const Evas_Object *obj, double *degree, Evas_Coord *cx, Evas_Coord *cy) EINA_ARG_NONNULL(1, 2, 3, 4);
+ EAPI void elm_map_wheel_disabled_set(Evas_Object *obj, Eina_Bool disabled) EINA_ARG_NONNULL(1);
+ EAPI Eina_Bool elm_map_wheel_disabled_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI Elm_Map_Track *elm_map_track_add(Evas_Object *obj, const char *gpx_file) EINA_ARG_NONNULL(1);
+ EAPI void elm_map_track_remove(Elm_Map_Track *track) EINA_ARG_NONNULL(1);
+ EAPI void elm_map_track_color_set(Elm_Map_Track *track, int r, int g , int b, int a) EINA_ARG_NONNULL(1);
+ EAPI void elm_map_track_color_get(const Elm_Map_Track *track, int *r, int *g , int *b, int *a) EINA_ARG_NONNULL(1);
/* smart callbacks called:
* "clicked" - when image clicked
ELM_FLIP_CUBE_LEFT,
ELM_FLIP_CUBE_RIGHT,
ELM_FLIP_CUBE_UP,
- ELM_FLIP_CUBE_DOWN
+ ELM_FLIP_CUBE_DOWN,
+ ELM_FLIP_PAGE_LEFT,
+ ELM_FLIP_PAGE_RIGHT,
+ ELM_FLIP_PAGE_UP,
+ ELM_FLIP_PAGE_DOWN
} Elm_Flip_Mode;
+ typedef enum _Elm_Flip_Interaction
+ {
+ ELM_FLIP_INTERACTION_NONE,
+ ELM_FLIP_INTERACTION_ROTATE,
+ ELM_FLIP_INTERACTION_CUBE,
+ ELM_FLIP_INTERACTION_PAGE
+ } Elm_Flip_Interaction;
+ typedef enum _Elm_Flip_Direction
+ {
+ ELM_FLIP_DIRECTION_UP,
+ ELM_FLIP_DIRECTION_DOWN,
+ ELM_FLIP_DIRECTION_LEFT,
+ ELM_FLIP_DIRECTION_RIGHT
+ } Elm_Flip_Direction;
EAPI Evas_Object *elm_flip_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
EAPI void elm_flip_content_front_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_flip_front_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_flip_perspective_set(Evas_Object *obj, Evas_Coord foc, Evas_Coord x, Evas_Coord y) EINA_ARG_NONNULL(1);
EAPI void elm_flip_go(Evas_Object *obj, Elm_Flip_Mode mode) EINA_ARG_NONNULL(1);
+ EAPI void elm_flip_interaction_set(Evas_Object *obj, Elm_Flip_Interaction mode);
+ EAPI Elm_Flip_Interaction elm_flip_interaction_get(const Evas_Object *obj);
+ EAPI void elm_flip_interacton_direction_enabled_set(Evas_Object *obj, Elm_Flip_Direction dir, Eina_Bool enabled);
+ EAPI Eina_Bool elm_flip_interacton_direction_enabled_get(Evas_Object *obj, Elm_Flip_Direction dir);
+ EAPI void elm_flip_interacton_direction_hitsize_set(Evas_Object *obj, Elm_Flip_Direction dir, double hitsize);
+ EAPI double elm_flip_interacton_direction_hitsize_get(Evas_Object *obj, Elm_Flip_Direction dir);
/* smart callbacks called:
+ * "animate,begin" - when a flip animation was started
* "animate,done" - when a flip animation is finished
*/
EAPI Eina_Bool elm_scrolled_entry_is_empty(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI const char *elm_scrolled_entry_selection_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_scrolled_entry_entry_insert(Evas_Object *obj, const char *entry) EINA_ARG_NONNULL(1);
- EAPI void elm_scrolled_entry_line_wrap_set(Evas_Object *obj, Eina_Bool wrap) EINA_ARG_NONNULL(1);
- EAPI void elm_scrolled_entry_line_char_wrap_set(Evas_Object *obj, Eina_Bool wrap) EINA_ARG_NONNULL(1);
+ EAPI void elm_scrolled_entry_line_wrap_set(Evas_Object *obj, Elm_Wrap_Type wrap) EINA_ARG_NONNULL(1);
EAPI void elm_scrolled_entry_editable_set(Evas_Object *obj, Eina_Bool editable) EINA_ARG_NONNULL(1);
EAPI Eina_Bool elm_scrolled_entry_editable_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_scrolled_entry_select_none(Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI void elm_conformant_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
EAPI Evas_Object *elm_conformant_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
EAPI Evas_Object *elm_conformant_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
+ EAPI Evas_Object *elm_conformant_content_area_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
/* mapbuf */
EAPI Evas_Object *elm_mapbuf_add(Evas_Object *parent) EINA_ARG_NONNULL(1);
* segment item index.
*/
+ EAPI Evas_Object *elm_grid_add(Evas_Object *parent);
+ EAPI void elm_grid_size_set(Evas_Object *obj, int w, int h);
+ EAPI void elm_grid_size_get(Evas_Object *obj, int *w, int *h);
+ EAPI void elm_grid_pack(Evas_Object *obj, Evas_Object *subobj, int x, int y, int w, int h);
+ EAPI void elm_grid_unpack(Evas_Object *obj, Evas_Object *subobj);
+ EAPI void elm_grid_clear(Evas_Object *obj, Eina_Bool clear);
+ EAPI void elm_grid_pack_set(Evas_Object *subobj, int x, int y, int w, int h);
+ EAPI void elm_grid_pack_get(Evas_Object *subobj, int *x, int *y, int *w, int *h);
+
#ifdef __cplusplus
}
#endif