From 40e51b5fea54d500b249fa419188392d211dbb02 Mon Sep 17 00:00:00 2001 From: ChunEon Park Date: Tue, 31 Jan 2012 03:03:17 +0000 Subject: [PATCH] elementary/gengrid - deprecated elm_gengrid_item_del() please use elm_object_item_del() instead SVN revision: 67621 --- legacy/elementary/src/bin/test_gengrid.c | 2 +- .../elementary/src/examples/gengrid_example.c | 2 +- legacy/elementary/src/lib/elm_deprecated.h | 15 +++++++++ legacy/elementary/src/lib/elm_gengrid.c | 26 ++++++++++------ legacy/elementary/src/lib/elm_gengrid.h | 31 ++++++------------- legacy/elementary/src/lib/elm_widget.c | 5 --- 6 files changed, 42 insertions(+), 39 deletions(-) diff --git a/legacy/elementary/src/bin/test_gengrid.c b/legacy/elementary/src/bin/test_gengrid.c index 48cc91216f..401378b34e 100644 --- a/legacy/elementary/src/bin/test_gengrid.c +++ b/legacy/elementary/src/bin/test_gengrid.c @@ -253,7 +253,7 @@ _delete_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __U l = (Eina_List*)elm_gengrid_selected_items_get(grid); if (!l) return; EINA_LIST_FOREACH_SAFE(l, l2, l3, gg_it) - elm_gengrid_item_del(gg_it); + elm_object_item_del(gg_it); } static void diff --git a/legacy/elementary/src/examples/gengrid_example.c b/legacy/elementary/src/examples/gengrid_example.c index 121a1161e2..37ee2323d9 100644 --- a/legacy/elementary/src/examples/gengrid_example.c +++ b/legacy/elementary/src/examples/gengrid_example.c @@ -264,7 +264,7 @@ _toggle_disabled_cb(void *data, if (!gg_it) return; elm_gengrid_item_selected_set(gg_it, EINA_FALSE); - elm_gengrid_item_disabled_set(gg_it, EINA_TRUE); + elm_object_item_disabled_set(gg_it, EINA_TRUE); } /* change items' size */ diff --git a/legacy/elementary/src/lib/elm_deprecated.h b/legacy/elementary/src/lib/elm_deprecated.h index d145733cce..aaf68f1d62 100644 --- a/legacy/elementary/src/lib/elm_deprecated.h +++ b/legacy/elementary/src/lib/elm_deprecated.h @@ -3943,3 +3943,18 @@ EINA_DEPRECATED EAPI void elm_gengrid_item_disabled_set */ EINA_DEPRECATED EAPI Eina_Bool elm_gengrid_item_disabled_get(const Elm_Object_Item *it); +/** + * Remove a gengrid item from its parent, deleting it. + * + * @param it The item to be removed. + * @return @c EINA_TRUE on success or @c EINA_FALSE, otherwise. + * + * @see elm_gengrid_clear(), to remove all items in a gengrid at + * once. + * @deprecated use elm_object_item_de() instead + * + * @ingroup Gengrid + */ +EINA_DEPRECATED EAPI void elm_gengrid_item_del(Elm_Object_Item *it); + + diff --git a/legacy/elementary/src/lib/elm_gengrid.c b/legacy/elementary/src/lib/elm_gengrid.c index 72213be16b..042e750728 100644 --- a/legacy/elementary/src/lib/elm_gengrid.c +++ b/legacy/elementary/src/lib/elm_gengrid.c @@ -1869,6 +1869,20 @@ _item_disable_hook(Elm_Object_Item *it) } } +static void +_item_del_pre_hook(Elm_Object_Item *it) +{ + ELM_OBJ_ITEM_CHECK_OR_RETURN(it); + Elm_Gen_Item *_it = (Elm_Gen_Item *) it; + if ((_it->relcount > 0) || (_it->walking > 0)) + { + _elm_genlist_item_del_notserious(_it); + return; + } + + _item_del(_it); +} + static Elm_Gen_Item * _item_new(Widget_Data *wd, const Elm_Gengrid_Item_Class *itc, @@ -1881,6 +1895,7 @@ _item_new(Widget_Data *wd, it = _elm_genlist_item_new(wd, itc, data, NULL, func, func_data); if (!it) return NULL; elm_widget_item_disable_hook_set(it, _item_disable_hook); + elm_widget_item_del_pre_hook_set(it, _item_del_pre_hook); it->item = ELM_NEW(Elm_Gen_Item_Type); wd->count++; it->group = it->itc->item_style && (!strcmp(it->itc->item_style, "group_index")); @@ -2215,16 +2230,7 @@ elm_gengrid_item_sorted_insert(Evas_Object *obj, EAPI void elm_gengrid_item_del(Elm_Object_Item *it) { - ELM_OBJ_ITEM_CHECK_OR_RETURN(it); - Elm_Gen_Item *_it = (Elm_Gen_Item *) it; - if ((_it->relcount > 0) || (_it->walking > 0)) - { - _elm_genlist_item_del_notserious(_it); - return; - } - - _item_del(_it); - elm_widget_item_free(it); + elm_object_item_del(it); } EAPI void diff --git a/legacy/elementary/src/lib/elm_gengrid.h b/legacy/elementary/src/lib/elm_gengrid.h index 5eefb1fbbe..8a52c92b1f 100644 --- a/legacy/elementary/src/lib/elm_gengrid.h +++ b/legacy/elementary/src/lib/elm_gengrid.h @@ -97,7 +97,7 @@ * "source" arguments, respectively, when the state is true (the * default is false), where @c XXX is the name of the (state) part. * See #Elm_Gengrid_Item_State_Get_Cb. - * - @c func.del - This is called when elm_gengrid_item_del() is + * - @c func.del - This is called when elm_object_item_del() is * called on an item or elm_gengrid_clear() is called on the * gengrid. This is intended for use when gengrid items are * deleted, so any data attached to the item (e.g. its data @@ -280,7 +280,7 @@ struct _Elm_Gengrid_Item_Class * @see elm_gengrid_group_item_size_set() * @see elm_gengrid_horizontal_set() * @see elm_gengrid_item_append() - * @see elm_gengrid_item_del() + * @see elm_object_item_del() * @see elm_gengrid_clear() * * @ingroup Gengrid @@ -452,7 +452,7 @@ EAPI Eina_Bool elm_gengrid_reorder_mode_get(const Evas_Objec * @see elm_gengrid_item_prepend() * @see elm_gengrid_item_insert_before() * @see elm_gengrid_item_insert_after() - * @see elm_gengrid_item_del() + * @see elm_object_item_del() * * @ingroup Gengrid */ @@ -474,7 +474,7 @@ EAPI Elm_Object_Item *elm_gengrid_item_append(Evas_Object *obj, cons * @see elm_gengrid_item_append() * @see elm_gengrid_item_insert_before() * @see elm_gengrid_item_insert_after() - * @see elm_gengrid_item_del() + * @see elm_object_item_del() * * @ingroup Gengrid */ @@ -497,7 +497,7 @@ EAPI Elm_Object_Item *elm_gengrid_item_prepend(Evas_Object *obj, con * @see elm_gengrid_item_append() * @see elm_gengrid_item_prepend() * @see elm_gengrid_item_insert_after() - * @see elm_gengrid_item_del() + * @see elm_object_item_del() * * @ingroup Gengrid */ @@ -520,7 +520,7 @@ EAPI Elm_Object_Item *elm_gengrid_item_insert_before(Evas_Object *ob * @see elm_gengrid_item_append() * @see elm_gengrid_item_prepend() * @see elm_gengrid_item_insert_after() - * @see elm_gengrid_item_del() + * @see elm_object_item_del() * * @ingroup Gengrid */ @@ -543,7 +543,7 @@ EAPI Elm_Object_Item *elm_gengrid_item_insert_after(Evas_Object *obj * @see elm_gengrid_item_append() * @see elm_gengrid_item_prepend() * @see elm_gengrid_item_insert_after() - * @see elm_gengrid_item_del() + * @see elm_object_item_del() * @see elm_gengrid_item_direct_sorted_insert() * * @ingroup Gengrid @@ -567,7 +567,7 @@ EAPI Elm_Object_Item *elm_gengrid_item_sorted_insert(Evas_Object *ob * @see elm_gengrid_item_append() * @see elm_gengrid_item_prepend() * @see elm_gengrid_item_insert_after() - * @see elm_gengrid_item_del() + * @see elm_object_item_del() * @see elm_gengrid_item_sorted_insert() * * @ingroup Gengrid @@ -979,19 +979,6 @@ EAPI Elm_Object_Item *elm_gengrid_item_next_get(const Elm_Object_Ite */ EAPI Elm_Object_Item *elm_gengrid_item_prev_get(const Elm_Object_Item *it); -/** - * Remove a gengrid item from its parent, deleting it. - * - * @param it The item to be removed. - * @return @c EINA_TRUE on success or @c EINA_FALSE, otherwise. - * - * @see elm_gengrid_clear(), to remove all items in a gengrid at - * once. - * - * @ingroup Gengrid - */ -EAPI void elm_gengrid_item_del(Elm_Object_Item *it); - /** * Update the contents of a given gengrid item * @@ -1390,7 +1377,7 @@ EAPI Eina_Bool elm_gengrid_item_cursor_engine_only_get(const * This removes (and deletes) all items in @p obj, leaving it * empty. * - * @see elm_gengrid_item_del(), to remove just one item. + * @see elm_object_item_del(), to remove just one item. * * @ingroup Gengrid */ diff --git a/legacy/elementary/src/lib/elm_widget.c b/legacy/elementary/src/lib/elm_widget.c index d45ab97eb3..2e961d3208 100644 --- a/legacy/elementary/src/lib/elm_widget.c +++ b/legacy/elementary/src/lib/elm_widget.c @@ -2863,9 +2863,6 @@ _elm_widget_item_del(Elm_Widget_Item *item) * * Set the function to notify to widgets when item is being deleted by user. * - * This function will complain if there was a callback set already, - * however it will set the new one. - * * @param item a valid #Elm_Widget_Item to be notified * @see elm_widget_item_del_pre_hook_set() convenience macro. * @ingroup Widget @@ -2874,8 +2871,6 @@ EAPI void _elm_widget_item_del_pre_hook_set(Elm_Widget_Item *item, Elm_Widget_Del_Pre_Cb func) { ELM_WIDGET_ITEM_CHECK_OR_RETURN(item); - if ((item->del_pre_func) && (item->del_pre_func != func)) - WRN("You're replacing a previously set del_pre_cb %p of item %p with %p", item->del_pre_func, item, func); item->del_pre_func = func; }