-/* TEMPORARY: DOCS WILL BE FILLED IN WITH CNP/SED */
-// XXX: elm_gen -> kill.
typedef struct Elm_Gen_Item Elm_Gen_Item;
+
+/**
+ * @struct Elm_Gen_Item_Class
+ *
+ * Gengrid or Genlist item class definition.
+ * field details.
+ */
typedef struct _Elm_Gen_Item_Class Elm_Gen_Item_Class;
-typedef struct _Elm_Gen_Item_Class_Func Elm_Gen_Item_Class_Func; /**< Class functions for gen item classes. */
+
+/**
+ * Text fetching class function for Elm_Gen_Item_Class.
+ * @param data The data passed in the item creation function
+ * @param obj The base widget object
+ * @param part The part name of the swallow
+ * @return The allocated (NOT stringshared) string to set as the text
+ */
typedef char *(*Elm_Gen_Item_Text_Get_Cb)(void *data, Evas_Object *obj, const char *part); /**< Label fetching class function for gen item classes. */
+
+/**
+ * Content (swallowed object) fetching class function for Elm_Gen_Item_Class.
+ * @param data The data passed in the item creation function
+ * @param obj The base widget object
+ * @param part The part name of the swallow
+ * @return The content object to swallow
+ */
typedef Evas_Object *(*Elm_Gen_Item_Content_Get_Cb)(void *data, Evas_Object *obj, const char *part); /**< Content(swallowed object) fetching class function for gen item classes. */
+
+/**
+ * State fetching class function for Elm_Gen_Item_Class.
+ * @param data The data passed in the item creation function
+ * @param obj The base widget object
+ * @param part The part name of the swallow
+ * @return The hell if I know
+ */
typedef Eina_Bool (*Elm_Gen_Item_State_Get_Cb)(void *data, Evas_Object *obj, const char *part); /**< State fetching class function for gen item classes. */
+
+/**
+ * Deletion class function for Elm_Gen_Item_Class.
+ * @param data The data passed in the item creation function
+ * @param obj The base widget object
+ */
typedef void (*Elm_Gen_Item_Del_Cb)(void *data, Evas_Object *obj); /**< Deletion class function for gen item classes. */
+
struct _Elm_Gen_Item_Class
{
- int version;
- unsigned int refcount;
- Eina_Bool delete_me : 1;
- const char *item_style;
- const char *mode_item_style;
- const char *edit_item_style;
- struct _Elm_Gen_Item_Class_Func
- {
- Elm_Gen_Item_Text_Get_Cb text_get;
- Elm_Gen_Item_Content_Get_Cb content_get;
- Elm_Gen_Item_State_Get_Cb state_get;
- Elm_Gen_Item_Del_Cb del;
+ int version; /**< Set by elementary if you alloc an item class via elm_gengrid_item_class_new() or elm_genlist_item_class_new(), or if you sety your own class (must be const) then set it to ELM_GENGRID_ITEM_CLASS_VERSION */
+ unsigned int refcount; /**< Set it to 0 if you use your own const class, or its managed for you by class ref/unref calls */
+ Eina_Bool delete_me : 1; /**< Leave this alone - set it to 0 if you have a const class of your own */
+ const char *item_style; /**< Name of the visual style to use for this item. If you don't know use "default" */
+ const char *mode_item_style; /**< Style used if item is set to a specific mode. @see elm_genlist_item_mode_set() or NULL if you don't care */
+ const char *edit_item_style; /**< Style to use when in edit mode, or NULL if you dont care */
+ struct {
+ Elm_Gen_Item_Text_Get_Cb text_get; /**< Text fetching class function for gengrid/list item classes.*/
+ Elm_Gen_Item_Content_Get_Cb content_get; /**< Content fetching class function for gengrid/list item classes. */
+ Elm_Gen_Item_State_Get_Cb state_get; /**< State fetching class function for gengrid/list item classes. */
+ Elm_Gen_Item_Del_Cb del; /**< Deletion class function for gengrid/list item classes. */
} func;
-};
+}; /**< #Elm_Gen_Item_Class member definitions */
+
+#define ELM_GEN_ITEM_CLASS_VERSION 2
+#define ELM_GEN_ITEM_CLASS_HEADER ELM_GEN_ITEM_CLASS_VERSION, 0, 0
* @{
*/
-typedef struct _Elm_Gengrid_Item_Class Elm_Gengrid_Item_Class; /**< Gengrid item class definition structs */
-
-#define Elm_Gengrid_Item_Class Elm_Gen_Item_Class
-typedef struct _Elm_Gengrid_Item_Class_Func Elm_Gengrid_Item_Class_Func; /**< Class functions for gengrid item classes. */
+#define ELM_GENGRID_ITEM_CLASS_VERSION ELM_GEN_ITEM_CLASS_VERSION
+#define ELM_GENGRID_ITEM_CLASS_HEADER ELM_GEN_ITEM_CLASS_HEADER
/**
- * Text fetching class function for Elm_Gen_Item_Class.
- * @param data The data passed in the item creation function
- * @param obj The base widget object
- * @param part The part name of the swallow
- * @return The allocated (NOT stringshared) string to set as the text
+ * @see Elm_Gen_Item_Class
*/
-typedef char *(*Elm_Gengrid_Item_Text_Get_Cb)(void *data, Evas_Object *obj, const char *part);
+typedef Elm_Gen_Item_Class Elm_Gengrid_Item_Class;
/**
- * Content (swallowed object) fetching class function for Elm_Gen_Item_Class.
- * @param data The data passed in the item creation function
- * @param obj The base widget object
- * @param part The part name of the swallow
- * @return The content object to swallow
+ * @see Elm_Gen_Item_Text_Get_Cb
*/
-typedef Evas_Object *(*Elm_Gengrid_Item_Content_Get_Cb)(void *data, Evas_Object *obj, const char *part);
+typedef Elm_Gen_Item_Text_Get_Cb Elm_Gengrid_Item_Text_Get_Cb;
/**
- * State fetching class function for Elm_Gen_Item_Class.
- * @param data The data passed in the item creation function
- * @param obj The base widget object
- * @param part The part name of the swallow
- * @return The hell if I know
+ * @see Elm_Gen_Item_Content_Get_Cb
*/
-typedef Eina_Bool (*Elm_Gengrid_Item_State_Get_Cb)(void *data, Evas_Object *obj, const char *part);
+typedef Elm_Gen_Item_Content_Get_Cb Elm_Gengrid_Item_Content_Get_Cb;
/**
- * Deletion class function for Elm_Gen_Item_Class.
- * @param data The data passed in the item creation function
- * @param obj The base widget object
+ * @see Elm_Gen_Item_State_Get_Cb
*/
-typedef void (*Elm_Gengrid_Item_Del_Cb)(void *data, Evas_Object *obj);
+typedef Elm_Gen_Item_State_Get_Cb Elm_Gengrid_Item_State_Get_Cb;
/**
- * @struct _Elm_Gengrid_Item_Class
- *
- * Gengrid item class definition. See @ref Gengrid_Item_Class for
- * field details.
+ * @see Elm_Gen_Item_Del_Cb
*/
-struct _Elm_Gengrid_Item_Class
-{
- const char *item_style;
- struct _Elm_Gengrid_Item_Class_Func
- {
- Elm_Gengrid_Item_Text_Get_Cb text_get; /**< Text fetching class function for gengrid item classes.*/
- Elm_Gengrid_Item_Content_Get_Cb content_get; /**< Content fetching class function for gengrid item classes. */
- Elm_Gengrid_Item_State_Get_Cb state_get; /**< State fetching class function for gengrid item classes. */
- Elm_Gengrid_Item_Del_Cb del; /**< Deletion class function for gengrid item classes. */
- } func;
-}; /**< #Elm_Gengrid_Item_Class member definitions */
-#define Elm_Gengrid_Item_Class_Func Elm_Gen_Item_Class_Func
+typedef Elm_Gen_Item_Del_Cb Elm_Gengrid_Item_Del_Cb;
/**
* Add a new gengrid widget to the given parent Elementary
//EAPI void elm_gengrid_realized_items_update(Evas_Object *obj);
//EAPI unsigned int elm_gengrid_items_count(const Evas_Object *obj);
-#define ELM_GENGRID_ITEM_CLASS_VERSION 2 /* current version number */
-#define ELM_GENGRID_ITEM_CLASS_HEADER ELM_GENGRID_ITEM_CLASS_VERSION, 0, 0
-
/**
* Add a new gengrid item class in a given gengrid widget.
*
* @{
*/
+#define ELM_GENLIST_ITEM_CLASS_VERSION ELM_GEN_ITEM_CLASS_VERSION
+#define ELM_GENLIST_ITEM_CLASS_HEADER ELM_GEN_ITEM_CLASS_HEADER
+
/**
* Defines if the item is of any special type (has subitems or it's the
* index of a group), or is just a simple item.
ELM_GENLIST_ITEM_FIELD_CONTENT = (1 << 1),
ELM_GENLIST_ITEM_FIELD_STATE = (1 << 2)
} Elm_Genlist_Item_Field_Type;
-typedef struct _Elm_Genlist_Item_Class Elm_Genlist_Item_Class; /**< Genlist item class definition structs */
-
-#define Elm_Genlist_Item_Class Elm_Gen_Item_Class
-typedef struct _Elm_Genlist_Item_Class_Func Elm_Genlist_Item_Class_Func; /**< Class functions for genlist item class */
/**
- * Text fetching class function for Elm_Gen_Item_Class.
- * @param data The data passed in the item creation function
- * @param obj The base widget object
- * @param part The part name of the swallow
- * @return The allocated (NOT stringshared) string to set as the text
+ * @see Elm_Gen_Item_Class
*/
-typedef char *(*Elm_Genlist_Item_Text_Get_Cb)(void *data, Evas_Object *obj, const char *part);
+typedef Elm_Gen_Item_Class Elm_Genlist_Item_Class;
/**
- * Content (swallowed object) fetching class function for Elm_Gen_Item_Class.
- * @param data The data passed in the item creation function
- * @param obj The base widget object
- * @param part The part name of the swallow
- * @return The content object to swallow
+ * @see Elm_Gen_Item_Text_Get_Cb
*/
-typedef Evas_Object *(*Elm_Genlist_Item_Content_Get_Cb)(void *data, Evas_Object *obj, const char *part);
+typedef Elm_Gen_Item_Text_Get_Cb Elm_Genlist_Item_Text_Get_Cb;
/**
- * State fetching class function for Elm_Gen_Item_Class.
- * @param data The data passed in the item creation function
- * @param obj The base widget object
- * @param part The part name of the swallow
- * @return The hell if I know
+ * @see Elm_Gen_Item_Content_Get_Cb
*/
-typedef Eina_Bool (*Elm_Genlist_Item_State_Get_Cb)(void *data, Evas_Object *obj, const char *part);
+typedef Elm_Gen_Item_Content_Get_Cb Elm_Genlist_Item_Content_Get_Cb;
/**
- * Deletion class function for Elm_Gen_Item_Class.
- * @param data The data passed in the item creation function
- * @param obj The base widget object
+ * @see Elm_Gen_Item_State_Get_Cb
*/
-typedef void (*Elm_Genlist_Item_Del_Cb)(void *data, Evas_Object *obj);
+typedef Elm_Gen_Item_State_Get_Cb Elm_Genlist_Item_State_Get_Cb;
/**
- * @struct _Elm_Genlist_Item_Class
- *
- * Genlist item class definition structs.
- *
- * This struct contains the style and fetching functions that will define the
- * contents of each item.
- *
- * @see @ref Genlist_Item_Class
+ * @see Elm_Gen_Item_Del_Cb
*/
-struct _Elm_Genlist_Item_Class
-{
- const char *item_style; /**< style of this class. */
- struct Elm_Genlist_Item_Class_Func
- {
- Elm_Genlist_Item_Text_Get_Cb text_get; /**< Text fetching class function for genlist item classes.*/
- Elm_Genlist_Item_Content_Get_Cb content_get; /**< Content fetching class function for genlist item classes. */
- Elm_Genlist_Item_State_Get_Cb state_get; /**< State fetching class function for genlist item classes. */
- Elm_Genlist_Item_Del_Cb del; /**< Deletion class function for genlist item classes. */
- } func;
-};
-#define Elm_Genlist_Item_Class_Func Elm_Gen_Item_Class_Func
+typedef Elm_Gen_Item_Del_Cb Elm_Genlist_Item_Del_Cb;
+
/**
* Add a new genlist widget to the given parent Elementary
* (container) object
*/
EAPI unsigned int elm_genlist_items_count(const Evas_Object *obj);
-#define ELM_GENLIST_ITEM_CLASS_VERSION 2 /* current version number */
-#define ELM_GENLIST_ITEM_CLASS_HEADER ELM_GENLIST_ITEM_CLASS_VERSION, 0, 0
-
/**
* Add a new genlist item class in a given genlist widget.
*