efl/src/lib/elementary/elm_gen.h

60 lines
2.8 KiB
C

typedef struct Elm_Gen_Item Elm_Gen_Item;
/**
* 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 boolean state of this element (resulting in the edje object being emitted a signal of "elm,state,partname,active" or "elm.state,partname,passve"
*/
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. */
/**
* Filter class function for Elm_Gen_Item_Class.
* @param data The data passed in the item creation function
* @param obj The base widget object
* @param key The key needed for item filter to be decided on
* @return The boolean state of filter for this element
*/
typedef Eina_Bool (*Elm_Gen_Item_Filter_Get_Cb)(void *data, Evas_Object *obj, void *key); /**< Filter seeking class function for gen item classes. */
/**
* Reusable content get 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
* @param old The old content object for reusing
* @return The content object to swallow
*
* @since 1.18
*/
typedef Evas_Object *(*Elm_Gen_Item_Reusable_Content_Get_Cb)(void *data, Evas_Object *obj, const char *part, Evas_Object *old); /**< Cache Pop class function for gen item classes. */
#define ELM_GEN_ITEM_CLASS_VERSION 3
#define ELM_GEN_ITEM_CLASS_HEADER ELM_GEN_ITEM_CLASS_VERSION, 0, 0