forked from enlightenment/efl
elm_menu: added elm_menu_item_subitems_clear.
This commit is contained in:
parent
a7cd873410
commit
f88c1c8f2f
|
@ -1644,3 +1644,7 @@
|
|||
2013-09-21 Daniel Juyung Seo (SeoZ)
|
||||
|
||||
* menu: added "dismissed" callback.
|
||||
|
||||
2013-09-21 Daniel Juyung Seo (SeoZ)
|
||||
|
||||
* menu: added elm_menu_item_subitems_clear.
|
||||
|
|
|
@ -93,6 +93,7 @@ Additions:
|
|||
* Add elm_widget_item_part_text_custom_set(), elm_widget_item_part_text_custom_get(), elm_widget_item_part_text_custom_update().
|
||||
* Add "dismissed" smart callback for hover.
|
||||
* Add "dismissed" smart callback for menu.
|
||||
* Add elm_menu_item_subitems_clear().
|
||||
|
||||
Improvements:
|
||||
|
||||
|
|
|
@ -897,12 +897,10 @@ static Eina_Bool
|
|||
_item_del_pre_hook(Elm_Object_Item *it)
|
||||
{
|
||||
Elm_Menu_Item *item = (Elm_Menu_Item *)it;
|
||||
Elm_Object_Item *_item;
|
||||
|
||||
ELM_MENU_DATA_GET(WIDGET(item), sd);
|
||||
|
||||
EINA_LIST_FREE(item->submenu.items, _item)
|
||||
elm_object_item_del(_item);
|
||||
elm_menu_item_subitems_clear(it);
|
||||
if (item->label) eina_stringshare_del(item->label);
|
||||
if (item->content) evas_object_del(item->content);
|
||||
if (item->submenu.hv) evas_object_del(item->submenu.hv);
|
||||
|
@ -1114,6 +1112,18 @@ elm_menu_item_subitems_get(const Elm_Object_Item *it)
|
|||
return ((Elm_Menu_Item *)it)->submenu.items;
|
||||
}
|
||||
|
||||
EAPI void
|
||||
elm_menu_item_subitems_clear(Elm_Object_Item *it)
|
||||
{
|
||||
Elm_Object_Item *sub_it;
|
||||
Eina_List *l, *l_next;
|
||||
|
||||
ELM_MENU_ITEM_CHECK_OR_RETURN(it);
|
||||
EINA_LIST_FOREACH_SAFE(((Elm_Menu_Item *)it)->submenu.items,
|
||||
l, l_next, sub_it)
|
||||
elm_object_item_del(sub_it);
|
||||
}
|
||||
|
||||
EAPI const Eina_List *
|
||||
elm_menu_items_get(const Evas_Object *obj)
|
||||
{
|
||||
|
|
|
@ -82,6 +82,21 @@ EAPI Eina_Bool elm_menu_item_is_separator(Elm_Object_Item *it
|
|||
*/
|
||||
EAPI const Eina_List *elm_menu_item_subitems_get(const Elm_Object_Item *it);
|
||||
|
||||
/**
|
||||
* Remove all sub-items (children) of the given item
|
||||
* @since 1.8
|
||||
*
|
||||
* @param it The item
|
||||
*
|
||||
* This removes all items that are children (and their descendants) of the
|
||||
* given item @p it.
|
||||
*
|
||||
* @see elm_object_item_del()
|
||||
*
|
||||
* @ingroup Menu
|
||||
*/
|
||||
EAPI void elm_menu_item_subitems_clear(Elm_Object_Item *it);
|
||||
|
||||
/**
|
||||
* @brief Get the position of a menu item
|
||||
*
|
||||
|
|
Loading…
Reference in New Issue