Elementary: remove vars set but not used
[framework/uifw/elementary.git] / src / bin / test_menu.c
1 #include <Elementary.h>
2 #ifdef HAVE_CONFIG_H
3 # include "elementary_config.h"
4 #endif
5 #ifndef ELM_LIB_QUICKLAUNCH
6
7 static Evas_Object *win, *bg, *menu, *rect;
8
9 static void
10 _show(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info)
11 {
12    Evas_Event_Mouse_Down *ev = event_info;
13    elm_menu_move(data, ev->canvas.x, ev->canvas.y);
14    evas_object_show(data);
15 }
16
17 static void
18 _populate_4(Elm_Menu_Item *item)
19 {
20    Elm_Menu_Item *item2;
21
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);
31 }
32
33 static void
34 _populate_3(Elm_Menu_Item *item)
35 {
36    Elm_Menu_Item *item2;
37
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);
43 }
44
45 static void
46 _populate_2(Elm_Menu_Item *item)
47 {
48    Elm_Menu_Item *item2, *item3;
49
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);
52
53    _populate_3(item2);
54
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);
62
63    item2 = elm_menu_item_add(menu, item, "system-lock-screen", "menu 2", NULL, NULL);
64    elm_menu_item_separator_add(menu,item);
65
66    item3 = elm_menu_item_add(menu, item, "system-run", "Disabled item", NULL, NULL);
67    elm_menu_item_disabled_set(item3, 1);
68
69    _populate_4(item2);
70 }
71
72 static void
73 _populate_1(Evas_Object *win, Elm_Menu_Item *item)
74 {
75    Elm_Menu_Item *item2;
76    Evas_Object *radio;
77
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    elm_menu_item_add_object(menu, item, radio, NULL, NULL);
84
85    _populate_2(item2);
86 }
87
88 void
89 test_menu(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
90 {
91    Elm_Menu_Item *item;
92
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);
96
97    bg = elm_bg_add(win);
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);
101
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);
106
107    menu = elm_menu_add(win);
108    elm_menu_item_add(menu, NULL, NULL, "first item", NULL, NULL);
109
110    item = elm_menu_item_add(menu, NULL, "mail-reply-all", "second item", NULL, NULL);
111    _populate_1(win, item);
112
113    elm_menu_item_add(menu, item, "window-new", "sub menu", NULL, NULL);
114
115    evas_object_event_callback_add(rect, EVAS_CALLBACK_MOUSE_DOWN, _show, menu);
116
117    evas_object_resize(win, 350, 200);
118    evas_object_show(win);
119 }
120
121 #endif