diff --git a/src/lib/edje/Edje_Legacy.h b/src/lib/edje/Edje_Legacy.h index b7350114d4..3df54f43b2 100644 --- a/src/lib/edje/Edje_Legacy.h +++ b/src/lib/edje/Edje_Legacy.h @@ -3085,6 +3085,22 @@ EAPI const Edje_Perspective *edje_object_perspective_get(const Evas_Object *obj) */ +/** + * @brief Sets the function that provides item objects for named items in an + * edje entry text + * + * Item objects may be deleted any time by Edje, and will be deleted when the + * Edje object is deleted (or file is set to a new file). + * + * @param[in] obj The object. + * @param[in] func The function to call (or @c null to disable) to get item + * objects + * @param[in] data The data pointer to pass to the func callback + * + * @ingroup Edje_Object + */ +EAPI void edje_object_item_provider_set(Edje_Object *obj, Edje_Item_Provider_Cb func, void *data); + typedef Efl_Canvas_Layout_Part_Type Edje_Part_Type; #define EDJE_PART_TYPE_NONE EFL_CANVAS_LAYOUT_PART_TYPE_NONE #define EDJE_PART_TYPE_RECTANGLE EFL_CANVAS_LAYOUT_PART_TYPE_RECTANGLE diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c index 313258deee..5a72652a44 100644 --- a/src/lib/edje/edje_util.c +++ b/src/lib/edje/edje_util.c @@ -1906,9 +1906,11 @@ edje_object_part_object_get(const Eo *obj, const char *part) return rp->object; } -EOLIAN void -_efl_canvas_layout_item_provider_set(Eo *obj EINA_UNUSED, Edje *ed, Edje_Item_Provider_Cb func, void *data) +EAPI void +edje_object_item_provider_set(Edje_Object *obj, Edje_Item_Provider_Cb func, void *data) { + Edje *ed = _edje_fetch(obj); + if (!ed) return; ed->item_provider.func = func; ed->item_provider.data = data; } diff --git a/src/lib/edje/efl_canvas_layout.eo b/src/lib/edje/efl_canvas_layout.eo index b1596e77ac..3d86cbb958 100644 --- a/src/lib/edje/efl_canvas_layout.eo +++ b/src/lib/edje/efl_canvas_layout.eo @@ -40,22 +40,6 @@ class Efl.Canvas.Layout (Efl.Canvas.Group, Efl.File, Efl.Container, Efl.Part, legacy: null; return: iterator @owned; [[Part name iterator]] } - - /* TEXT PART APIS BEGIN ---------------------------------------------- */ - @property item_provider { - set { - [[Sets the function that provides item objects for named items in an edje entry text - - Item objects may be deleted any time by Edje, and will be deleted when the - Edje object is deleted (or file is set to a new file).]] - } - values { - func: Edje.Item_Provider_Cb; [[The function to call (or $null to disable) to get item objects]] - data: void_ptr; [[The data pointer to pass to the func callback]] - } - } - /* TEXT PART APIS END ------------------------------------------------ */ - @property seat { get { [[Returns the seat device given its Edje's name.