1 #include <Elementary.h>
3 # include "elementary_config.h"
5 #ifndef ELM_LIB_QUICKLAUNCH
7 static Evas_Object *win, *bg, *menu, *rect;
10 _show(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info)
12 Evas_Event_Mouse_Down *ev = event_info;
13 elm_menu_move(data, ev->canvas.x, ev->canvas.y);
14 evas_object_show(data);
18 _populate_4(Elm_Menu_Item *item)
22 elm_menu_item_add(menu, item, "go-bottom", "menu 2", NULL, NULL);
23 elm_menu_item_add(menu, item, "go-first", "menu 3", NULL, NULL);
24 elm_menu_item_separator_add(menu, item);
25 item2 = elm_menu_item_add(menu, item, "go-last", "Disabled item", NULL, NULL);
26 elm_menu_item_disabled_set(item2, 1);
27 item2 = elm_menu_item_add(menu, item, "go-next", "Disabled item", NULL, NULL);
28 elm_menu_item_disabled_set(item2, 1);
29 item2 = elm_menu_item_add(menu, item, "go-up", "Disabled item", NULL, NULL);
30 elm_menu_item_disabled_set(item2, 1);
34 _populate_3(Elm_Menu_Item *item)
38 elm_menu_item_add(menu, item, "media-eject", "menu 2", NULL, NULL);
39 elm_menu_item_add(menu, item, "media-playback-start", "menu 3", NULL, NULL);
40 elm_menu_item_separator_add(menu,item);
41 item2 = elm_menu_item_add(menu, item, "media-playback-stop", "Disabled item", NULL, NULL);
42 elm_menu_item_disabled_set(item2, 1);
46 _populate_2(Elm_Menu_Item *item)
48 Elm_Menu_Item *item2, *item3;
50 elm_menu_item_add(menu, item, "system-reboot", "menu 2", NULL, NULL);
51 item2 = elm_menu_item_add(menu, item, "system-shutdown", "menu 3", NULL, NULL);
55 elm_menu_item_separator_add(menu,item);
56 elm_menu_item_separator_add(menu,item);
57 elm_menu_item_separator_add(menu,item);
58 elm_menu_item_separator_add(menu,item);
59 elm_menu_item_separator_add(menu,item);
60 elm_menu_item_separator_add(menu,item);
61 elm_menu_item_separator_add(menu,item);
63 item2 = elm_menu_item_add(menu, item, "system-lock-screen", "menu 2", NULL, NULL);
64 elm_menu_item_separator_add(menu,item);
66 item3 = elm_menu_item_add(menu, item, "system-run", "Disabled item", NULL, NULL);
67 elm_menu_item_disabled_set(item3, 1);
73 _populate_1(Evas_Object *win, Elm_Menu_Item *item)
75 Elm_Menu_Item *item2, *item3;
78 radio = elm_radio_add(win);
79 elm_radio_state_value_set(radio, 0);
80 elm_radio_value_set(radio, 0);
81 elm_object_text_set(radio, "radio in menu");
82 item2 = elm_menu_item_add(menu, item, "object-rotate-left", "menu 1", NULL, NULL);
83 item3 = elm_menu_item_add_object(menu, item, radio, NULL, NULL);
89 test_menu(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
93 win = elm_win_add(NULL, "menu", ELM_WIN_BASIC);
94 elm_win_title_set(win, "Menu");
95 elm_win_autodel_set(win, EINA_TRUE);
98 elm_win_resize_object_add(win, bg);
99 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
100 evas_object_show(bg);
102 rect = evas_object_rectangle_add(evas_object_evas_get(win));
103 elm_win_resize_object_add(win, rect);
104 evas_object_color_set(rect, 0, 0, 0, 0);
105 evas_object_show(rect);
107 menu = elm_menu_add(win);
108 elm_menu_item_add(menu, NULL, NULL, "first item", NULL, NULL);
110 item = elm_menu_item_add(menu, NULL, "mail-reply-all", "second item", NULL, NULL);
111 _populate_1(win, item);
113 elm_menu_item_add(menu, item, "window-new", "sub menu", NULL, NULL);
115 evas_object_event_callback_add(rect, EVAS_CALLBACK_MOUSE_DOWN, _show, menu);
117 evas_object_resize(win, 350, 200);
118 evas_object_show(win);