1 /**
2  * @typedef Elm_Object_Item
3  * An Elementary Object item handle.
4  * @ingroup Elm_General
5  */
6 typedef Eo Elm_Object_Item;
7 
8 /**
9  * @typedef Elm_Object_Item_Signal_Cb
10  *
11  * Elm_Object_Item Signal Callback functions' prototype definition. @c data
12  * will have the auxiliary data pointer at the time the callback registration.
13  * @c it will be a pointer the Elm_Object_Item that have the edje object where
14  * the signal comes from. @c emission will identify the exact signal's emission
15  * string and @c source the exact signal's source one.
16  *
17  * @see elm_object_item_signal_callback_add()
18  * @since 1.8
19  *
20  * @ingroup Elm_General
21  */
22 typedef void                  (*Elm_Object_Item_Signal_Cb)(void *data, Elm_Object_Item *it, const char *emission, const char *source);
23 
24 #ifndef EFL_NOLEGACY_API_SUPPORT
25 #include "elm_widget_item_eo.legacy.h"
26 #endif
27 
28 #define elm_object_item_content_set(it, content) elm_object_item_part_content_set((it), NULL, (content))
29 
30 #define elm_object_item_content_get(it) elm_object_item_part_content_get((it), NULL)
31 
32 #define elm_object_item_content_unset(it) elm_object_item_part_content_unset((it), NULL)
33 
34 /**
35  * Macro to set a label of an object item.
36  *
37  * @param it The Elementary object item.
38  * @param label The new text of the label.
39  *
40  * @note Elementary object items may have many labels.
41  *
42  * @ingroup Elm_General
43  */
44 #define elm_object_item_text_set(it, label) elm_object_item_part_text_set((it), NULL, (label))
45 
46 #define elm_object_item_text_get(it) elm_object_item_part_text_get((it), NULL)
47 
48 #define elm_object_item_domain_translatable_text_set(it, domain, text) elm_object_item_domain_translatable_part_text_set((it), NULL, (domain), (text))
49 
50 #define elm_object_item_translatable_text_set(it, text) elm_object_item_domain_translatable_part_text_set((it), NULL, NULL, (text))
51 
52 #define elm_object_item_translatable_part_text_set(it, part, text) elm_object_item_domain_translatable_part_text_set((it), (part), NULL, (text))
53 
54 #define elm_object_item_translatable_text_get(it) elm_object_item_translatable_part_text_get((it), NULL)
55 
56 #define elm_object_item_part_text_translatable_set(it, part, translatable) elm_object_item_domain_part_text_translatable_set((it), (part), NULL, (translatable))
57 
58 #define elm_object_item_domain_text_translatable_set(it, domain, translatable) elm_object_item_domain_part_text_translatable_set((it), NULL, (domain), (translatable))
59 
60 #define elm_object_item_text_translatable_set(it, translatable) elm_object_item_domain_part_text_translatable_set((it), NULL, NULL, (translatable))
61 
62 /**
63  * Get the data associated with an object item
64  * @param it The Elementary object item
65  * @return The data associated with @p it
66  *
67  * @note Every elm_object_item supports this API
68  * @ingroup Elm_General
69  */
70 EAPI void *elm_object_item_data_get(const Elm_Object_Item *it);
71 
72 /**
73  * Set the data associated with an object item
74  * @param it The Elementary object item
75  * @param data The data to be associated with @p it
76  *
77  * @note Every elm_object_item supports this API
78  * @ingroup Elm_General
79  */
80 EAPI void elm_object_item_data_set(Elm_Object_Item *it, void *data);
81 
82 /** Delete the given item.
83  *
84  * @ingroup Elm_General
85  */
86 EAPI void elm_object_item_del(Elm_Object_Item *obj);
87