#include <Elementary.h>
+#ifdef HAVE_CONFIG_H
+# include "elementary_config.h"
+#endif
#ifndef ELM_LIB_QUICKLAUNCH
-static Evas_Object *win, *bg, *menu, *rect, *ic;;
-static char buf[PATH_MAX];
+static Evas_Object *win, *bg, *menu, *rect;
static void
-_show(void *data, Evas *e, Evas_Object *obj, void *event_info)
+_show(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info)
{
- Evas_Event_Mouse_Down *ev = event_info;
+ Evas_Event_Mouse_Down *ev = event_info;
elm_menu_move(data, ev->canvas.x, ev->canvas.y);
evas_object_show(data);
}
-static void
-_populate_4(Elm_Menu_Item *item)
+static void
+_populate_4(Elm_Object_Item *menu_it)
{
- Evas_Object *ic;
- Elm_Menu_Item *item2, *item3;
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
- elm_menu_item_add(menu, item, ic, "menu 2", NULL, NULL);
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
-
- item2 = elm_menu_item_add(menu, item, ic, "menu 3", NULL, NULL);
-
- elm_menu_item_separator_add(menu, item);
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
- item3 = elm_menu_item_add(menu, item, ic, "Disabled item", NULL, NULL);
- elm_menu_item_disabled_set(item3, 1);
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
- item3 = elm_menu_item_add(menu, item, ic, "Disabled item", NULL, NULL);
- elm_menu_item_disabled_set(item3, 1);
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
- item3 = elm_menu_item_add(menu, item, ic, "Disabled item", NULL, NULL);
- elm_menu_item_disabled_set(item3, 1);
+ Elm_Object_Item *menu_it2;
+
+ elm_menu_item_add(menu, menu_it, "go-bottom", "menu 2", NULL, NULL);
+ elm_menu_item_add(menu, menu_it, "go-first", "menu 3", NULL, NULL);
+ elm_menu_item_separator_add(menu, menu_it);
+ menu_it2 = elm_menu_item_add(menu, menu_it, "go-last", "Disabled item", NULL,
+ NULL);
+ elm_object_item_disabled_set(menu_it2, EINA_TRUE);
+ menu_it2 = elm_menu_item_add(menu, menu_it, "go-next", "Disabled item", NULL,
+ NULL);
+ elm_object_item_disabled_set(menu_it2, EINA_TRUE);
+ menu_it2 = elm_menu_item_add(menu, menu_it, "go-up", "Disabled item", NULL,
+ NULL);
+ elm_object_item_disabled_set(menu_it2, EINA_TRUE);
}
-static void
-_populate_3(Elm_Menu_Item *item)
+static void
+_populate_3(Elm_Object_Item *menu_it)
{
- Evas_Object *ic;
- Elm_Menu_Item *item2, *item3;
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
- elm_menu_item_add(menu, item, ic, "menu 2", NULL, NULL);
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
-
- item2 = elm_menu_item_add(menu, item, ic, "menu 3", NULL, NULL);
-
- elm_menu_item_separator_add(menu,item);
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
- item3 = elm_menu_item_add(menu, item, ic, "Disabled item", NULL, NULL);
- elm_menu_item_disabled_set(item3, 1);
+ Elm_Object_Item *menu_it2;
+
+ elm_menu_item_add(menu, menu_it, "media-eject", "menu 2", NULL, NULL);
+ elm_menu_item_add(menu, menu_it, "media-playback-start", "menu 3", NULL,
+ NULL);
+ elm_menu_item_separator_add(menu, menu_it);
+ menu_it2 = elm_menu_item_add(menu, menu_it, "media-playback-stop",
+ "Disabled item", NULL, NULL);
+ elm_object_item_disabled_set(menu_it2, EINA_TRUE);
}
-static void
-_populate_2(Elm_Menu_Item *item)
+static void
+_populate_2(Elm_Object_Item *menu_it)
{
- Evas_Object *ic;
- Elm_Menu_Item *item2, *item3;
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
- elm_menu_item_add(menu, item, ic, "menu 2", NULL, NULL);
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
-
- item2 = elm_menu_item_add(menu, item, ic, "menu 3", NULL, NULL);
-
- _populate_3(item2);
-
- elm_menu_item_separator_add(menu,item);
- elm_menu_item_separator_add(menu,item);
- elm_menu_item_separator_add(menu,item);
- elm_menu_item_separator_add(menu,item);
- elm_menu_item_separator_add(menu,item);
- elm_menu_item_separator_add(menu,item);
- elm_menu_item_separator_add(menu,item);
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
-
- item2 = elm_menu_item_add(menu, item, ic, "menu 2", NULL, NULL);
-
- elm_menu_item_separator_add(menu,item);
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
- item3 = elm_menu_item_add(menu, item, ic, "Disabled item", NULL, NULL);
- elm_menu_item_disabled_set(item3, 1);
-
- _populate_4(item2);
+ Elm_Object_Item *menu_it2, *menu_it3;
+
+ elm_menu_item_add(menu, menu_it, "system-reboot", "menu 2", NULL, NULL);
+ menu_it2 = elm_menu_item_add(menu, menu_it, "system-shutdown", "menu 3",
+ NULL, NULL);
+ _populate_3(menu_it2);
+
+ elm_menu_item_separator_add(menu, menu_it);
+ elm_menu_item_separator_add(menu, menu_it);
+ elm_menu_item_separator_add(menu, menu_it);
+ elm_menu_item_separator_add(menu, menu_it);
+ elm_menu_item_separator_add(menu, menu_it);
+ elm_menu_item_separator_add(menu, menu_it);
+ elm_menu_item_separator_add(menu, menu_it);
+
+ menu_it2 = elm_menu_item_add(menu, menu_it, "system-lock-screen", "menu 2",
+ NULL, NULL);
+ elm_menu_item_separator_add(menu, menu_it);
+
+ menu_it3 = elm_menu_item_add(menu, menu_it, "system-run", "Disabled item",
+ NULL, NULL);
+ elm_object_item_disabled_set(menu_it3, EINA_TRUE);
+
+ _populate_4(menu_it2);
}
-static void
-_populate_1(Elm_Menu_Item *item)
+static void
+_populate_1(Evas_Object *obj, Elm_Object_Item *menu_it)
{
- Elm_Menu_Item *item2;
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
- item2 = elm_menu_item_add(menu, item, ic, "menu 1", NULL, NULL);
-
- _populate_2(item2);
+ Elm_Object_Item *menu_it2, *menu_it3;
+ Evas_Object *radio;
+
+ radio = elm_radio_add(obj);
+ elm_radio_state_value_set(radio, 0);
+ elm_radio_value_set(radio, 0);
+ elm_object_text_set(radio, "radio in menu");
+ menu_it2 = elm_menu_item_add(menu, menu_it, "object-rotate-left", "menu 1",
+ NULL, NULL);
+ menu_it3 = elm_menu_item_add(menu, menu_it, NULL, NULL, NULL, NULL);
+ elm_object_item_content_set(menu_it3, radio);
+
+ _populate_2(menu_it2);
}
void
-test_menu(void *data, Evas_Object *obj, void *event_info)
+test_menu(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
{
- Elm_Menu_Item *item;
+ Elm_Object_Item *menu_it;
- win = elm_win_add(NULL, "Menu", ELM_WIN_BASIC);
+ win = elm_win_add(NULL, "menu", ELM_WIN_BASIC);
elm_win_title_set(win, "Menu");
- elm_win_autodel_set(win, 1);
+ elm_win_autodel_set(win, EINA_TRUE);
bg = elm_bg_add(win);
elm_win_resize_object_add(win, bg);
rect = evas_object_rectangle_add(evas_object_evas_get(win));
elm_win_resize_object_add(win, rect);
+ evas_object_size_hint_weight_set(rect, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_color_set(rect, 0, 0, 0, 0);
evas_object_show(rect);
menu = elm_menu_add(win);
- item = elm_menu_item_add(menu, NULL, NULL, "first item", NULL, NULL);
-
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
+ elm_menu_item_add(menu, NULL, NULL, "first item", NULL, NULL);
- item = elm_menu_item_add(menu, NULL, ic, "second item", NULL, NULL);
- _populate_1(item);
+ menu_it = elm_menu_item_add(menu, NULL, "mail-reply-all", "second item",
+ NULL, NULL);
+ _populate_1(win, menu_it);
- ic = elm_icon_add(win);
- snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
- elm_icon_file_set(ic, buf, NULL);
- elm_menu_item_add(menu, item, ic, "sub menu", NULL, NULL);
+ elm_menu_item_add(menu, menu_it, "window-new", "sub menu", NULL, NULL);
evas_object_event_callback_add(rect, EVAS_CALLBACK_MOUSE_DOWN, _show, menu);