From 2744a467599af6b05c555614e63dfeaf0652faaf Mon Sep 17 00:00:00 2001 From: discomfitor Date: Fri, 29 Jul 2011 14:00:31 +0000 Subject: [PATCH] +elm_menu_item_index_get git-svn-id: https://svn.enlightenment.org/svn/e/trunk/elementary@61892 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- src/lib/Elementary.h.in | 1 + src/lib/elm_menu.c | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/src/lib/Elementary.h.in b/src/lib/Elementary.h.in index ae57377..5b30f05 100644 --- a/src/lib/Elementary.h.in +++ b/src/lib/Elementary.h.in @@ -15972,6 +15972,7 @@ extern "C" { * @see elm_menu_add() */ EAPI const Eina_List *elm_menu_item_subitems_get(const Elm_Menu_Item *item) EINA_ARG_NONNULL(1); + EAPI unsigned int elm_menu_item_index_get(const Elm_Menu_Item *item) EINA_ARG_NONNULL(1) EINA_PURE; EAPI Elm_Menu_Item *elm_menu_selected_item_get(const Evas_Object * obj) EINA_ARG_NONNULL(1); EAPI Elm_Menu_Item *elm_menu_last_item_get(const Evas_Object * obj) EINA_ARG_NONNULL(1); EAPI Elm_Menu_Item *elm_menu_first_item_get(const Evas_Object * obj) EINA_ARG_NONNULL(1); diff --git a/src/lib/elm_menu.c b/src/lib/elm_menu.c index c05937d..27052c9 100644 --- a/src/lib/elm_menu.c +++ b/src/lib/elm_menu.c @@ -11,6 +11,7 @@ struct _Elm_Menu_Item const char *icon_str; const char *label; Evas_Smart_Cb func; + unsigned int idx; struct { Evas_Object *hv, *bx, *location; @@ -614,11 +615,13 @@ elm_menu_item_add(Evas_Object *obj, Elm_Menu_Item *parent, const char *icon, con if (!parent->submenu.bx) _item_submenu_obj_create(parent); elm_box_pack_end(parent->submenu.bx, VIEW(subitem)); parent->submenu.items = eina_list_append(parent->submenu.items, subitem); + subitem->idx = eina_list_count(parent->submenu.items) - 1; } else { elm_box_pack_end(wd->bx, VIEW(subitem)); wd->items = eina_list_append(wd->items, subitem); + subitem->idx = eina_list_count(wd->items) - 1; } _sizing_eval(obj); @@ -653,11 +656,13 @@ elm_menu_item_add_object(Evas_Object *obj, Elm_Menu_Item *parent, Evas_Object *s if (!parent->submenu.bx) _item_submenu_obj_create(parent); elm_box_pack_end(parent->submenu.bx, subitem->base.view); parent->submenu.items = eina_list_append(parent->submenu.items, subitem); + subitem->idx = eina_list_count(parent->submenu.items) - 1; } else { elm_box_pack_end(wd->bx, subitem->base.view); wd->items = eina_list_append(wd->items, subitem); + subitem->idx = eina_list_count(wd->items) - 1; } _sizing_eval(obj); -- 2.7.4