safety for elm_object_item_widget_get().

SVN revision: 73117
This commit is contained in:
Gustavo Sverzut Barbieri 2012-07-02 01:38:21 +00:00
parent 16da8f1626
commit c4caf9d82f
4 changed files with 28 additions and 1 deletions

View File

@ -251,3 +251,6 @@
* Fix panel theme_hook handling for scaling
2012-07-01 Gustavo Sverzut Barbieri (k-s)
* Add and use elm_widget_item_widget_get()

View File

@ -1337,7 +1337,7 @@ elm_coords_finger_size_adjust(int times_w,
EAPI Evas_Object *
elm_object_item_widget_get(const Elm_Object_Item *it)
{
return WIDGET(it);
return elm_widget_item_widget_get(it);
}
EAPI void

View File

@ -3784,6 +3784,22 @@ _elm_widget_item_del_cb_set(Elm_Widget_Item *item,
item->del_func = func;
}
/**
* @internal
*
* Retrieves owner widget of this item.
*
* @param item a valid #Elm_Widget_Item to get data from.
* @return owner widget of this item.
* @ingroup Widget
*/
EAPI Evas_Object *
_elm_widget_item_widget_get(const Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, NULL);
return item->widget;
}
/**
* @internal
*

View File

@ -756,6 +756,7 @@ EAPI void elm_widget_access_info_set(Evas_Object *obj, const char *t
EAPI const char *elm_widget_access_info_get(const Evas_Object *obj);
EAPI Elm_Widget_Item *_elm_widget_item_new(Evas_Object *parent, size_t alloc_size);
EAPI void _elm_widget_item_free(Elm_Widget_Item *item);
EAPI Evas_Object *_elm_widget_item_widget_get(const Elm_Widget_Item *item);
EAPI void _elm_widget_item_del(Elm_Widget_Item *item);
EAPI void _elm_widget_item_pre_notify_del(Elm_Widget_Item *item);
EAPI void _elm_widget_item_del_cb_set(Elm_Widget_Item *item, Evas_Smart_Cb del_cb);
@ -834,6 +835,13 @@ EAPI void elm_widget_tree_dot_dump(const Evas_Object *top, FILE *out
#define elm_widget_item_del_cb_set(item, del_cb) \
_elm_widget_item_del_cb_set((Elm_Widget_Item *)item, del_cb)
/**
* Get item's owner widget
* @see _elm_widget_item_widget_get()
*/
#define elm_widget_item_widget_get(item) \
_elm_widget_item_widget_get((const Elm_Widget_Item *)item)
/**
* Set item's data
* @see _elm_widget_item_data_set()