+elm_menu_item_index_get
authordiscomfitor <discomfitor@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 29 Jul 2011 14:00:31 +0000 (14:00 +0000)
committerMike McCormack <mj.mccormack@samsung.com>
Mon, 14 Nov 2011 04:27:37 +0000 (13:27 +0900)
git-svn-id: https://svn.enlightenment.org/svn/e/trunk/elementary@61892 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/Elementary.h.in
src/lib/elm_menu.c

index ae57377..5b30f05 100644 (file)
@@ -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);
index c05937d..27052c9 100644 (file)
@@ -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);