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)
|
2013-09-21 Daniel Juyung Seo (SeoZ)
|
||||||
|
|
||||||
* menu: added "dismissed" callback.
|
* 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 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 hover.
|
||||||
* Add "dismissed" smart callback for menu.
|
* Add "dismissed" smart callback for menu.
|
||||||
|
* Add elm_menu_item_subitems_clear().
|
||||||
|
|
||||||
Improvements:
|
Improvements:
|
||||||
|
|
||||||
|
|
|
@ -897,12 +897,10 @@ static Eina_Bool
|
||||||
_item_del_pre_hook(Elm_Object_Item *it)
|
_item_del_pre_hook(Elm_Object_Item *it)
|
||||||
{
|
{
|
||||||
Elm_Menu_Item *item = (Elm_Menu_Item *)it;
|
Elm_Menu_Item *item = (Elm_Menu_Item *)it;
|
||||||
Elm_Object_Item *_item;
|
|
||||||
|
|
||||||
ELM_MENU_DATA_GET(WIDGET(item), sd);
|
ELM_MENU_DATA_GET(WIDGET(item), sd);
|
||||||
|
|
||||||
EINA_LIST_FREE(item->submenu.items, _item)
|
elm_menu_item_subitems_clear(it);
|
||||||
elm_object_item_del(_item);
|
|
||||||
if (item->label) eina_stringshare_del(item->label);
|
if (item->label) eina_stringshare_del(item->label);
|
||||||
if (item->content) evas_object_del(item->content);
|
if (item->content) evas_object_del(item->content);
|
||||||
if (item->submenu.hv) evas_object_del(item->submenu.hv);
|
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;
|
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 *
|
EAPI const Eina_List *
|
||||||
elm_menu_items_get(const Evas_Object *obj)
|
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);
|
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
|
* @brief Get the position of a menu item
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue