move elementary to trunk base. out of TMP/st.
[framework/uifw/elementary.git] / src / bin / test_diskselector.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 void
8 _disk_sel(void *data __UNUSED__, Evas_Object * obj __UNUSED__, void *event_info)
9 {
10    Elm_Diskselector_Item *it = event_info;
11    printf("Equinox: %s\n", elm_diskselector_item_label_get(it));
12 }
13
14 static void
15 _disk_next(void *data __UNUSED__, Evas_Object * obj __UNUSED__, void *event_info)
16 {
17    Elm_Diskselector_Item *next, *prev, *it = event_info;
18    prev = elm_diskselector_item_prev_get(it);
19    next = elm_diskselector_item_next_get(it);
20    printf("Prev: %s, Next: %s\n", elm_diskselector_item_label_get(prev),
21           elm_diskselector_item_label_get(next));
22 }
23
24 static void
25 _print_disk_info_cb(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info)
26 {
27    Elm_Diskselector_Item *it = event_info;
28    printf("Selected label: %s\n", elm_diskselector_item_label_get(it));
29 }
30
31 static Evas_Object *
32 _disk_create(Evas_Object *win, Eina_Bool round)
33 {
34    Elm_Diskselector_Item *it;
35    Evas_Object *di;
36
37    di = elm_diskselector_add(win);
38
39    elm_diskselector_item_append(di, "January", NULL, NULL, NULL);
40    elm_diskselector_item_append(di, "February", NULL, _disk_next, NULL);
41    elm_diskselector_item_append(di, "March", NULL, _disk_sel, NULL);
42    elm_diskselector_item_append(di, "April", NULL, NULL, NULL);
43    elm_diskselector_item_append(di, "May", NULL, NULL, NULL);
44    elm_diskselector_item_append(di, "June", NULL, NULL, NULL);
45    elm_diskselector_item_append(di, "July", NULL, NULL, NULL);
46    it = elm_diskselector_item_append(di, "August", NULL, NULL, NULL);
47    elm_diskselector_item_append(di, "September", NULL, _disk_sel, NULL);
48    elm_diskselector_item_append(di, "October", NULL, NULL, NULL);
49    elm_diskselector_item_append(di, "November", NULL, NULL, NULL);
50    elm_diskselector_item_append(di, "December", NULL, NULL, NULL);
51
52    elm_diskselector_item_selected_set(it, EINA_TRUE);
53    elm_diskselector_round_set(di, round);
54
55    return di;
56 }
57
58 void
59 test_diskselector(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
60 {
61    Evas_Object *win, *bg, *bx, *disk, *ic;
62    Elm_Diskselector_Item *it;
63    char buf[PATH_MAX];
64
65    win = elm_win_add(NULL, "diskselector", ELM_WIN_BASIC);
66    elm_win_title_set(win, "Disk Selector");
67    elm_win_autodel_set(win, 1);
68
69    bg = elm_bg_add(win);
70    elm_win_resize_object_add(win, bg);
71    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
72    evas_object_size_hint_align_set(bg, EVAS_HINT_FILL, EVAS_HINT_FILL);
73    evas_object_show(bg);
74
75    bx = elm_box_add(win);
76    elm_win_resize_object_add(win, bx);
77    evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
78    evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL);
79    evas_object_show(bx);
80
81    disk = _disk_create(win, EINA_TRUE);
82    evas_object_size_hint_weight_set(disk, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
83    evas_object_size_hint_align_set(disk, EVAS_HINT_FILL, 0.5);
84    elm_box_pack_end(bx, disk);
85    evas_object_show(disk);
86    evas_object_smart_callback_add(disk, "selected", _print_disk_info_cb, NULL);
87    it = elm_diskselector_selected_item_get(disk);
88    elm_diskselector_item_selected_set(it, EINA_FALSE);
89
90    disk = _disk_create(win, EINA_FALSE);
91    evas_object_size_hint_weight_set(disk, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
92    evas_object_size_hint_align_set(disk, EVAS_HINT_FILL, 0.5);
93    elm_box_pack_end(bx, disk);
94    evas_object_show(disk);
95    evas_object_smart_callback_add(disk, "selected", _print_disk_info_cb, NULL);
96    it = elm_diskselector_first_item_get(disk);
97    it = elm_diskselector_item_next_get(it);
98    elm_diskselector_item_selected_set(it, EINA_TRUE);
99
100    disk = _disk_create(win, EINA_FALSE);
101    evas_object_size_hint_weight_set(disk, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
102    evas_object_size_hint_align_set(disk, EVAS_HINT_FILL, 0.5);
103    elm_box_pack_end(bx, disk);
104    evas_object_show(disk);
105    evas_object_smart_callback_add(disk, "selected", _print_disk_info_cb, NULL);
106    elm_diskselector_side_label_lenght_set(disk, 4);
107
108    disk = elm_diskselector_add(win);
109    ic = elm_icon_add(win);
110    snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
111    elm_icon_file_set(ic, buf, NULL);
112    elm_icon_scale_set(ic, 1, 1);
113    elm_diskselector_item_append(disk, "Sunday", ic, NULL, NULL);
114    elm_diskselector_item_append(disk, "Monday", NULL, NULL, NULL);
115    elm_diskselector_item_append(disk, "Tuesday", NULL, NULL, NULL);
116    elm_diskselector_item_append(disk, "Wednesday", NULL, NULL, NULL);
117    elm_diskselector_item_append(disk, "Thursday", NULL, NULL, NULL);
118    elm_diskselector_item_append(disk, "Friday", NULL, NULL, NULL);
119    elm_diskselector_item_append(disk, "Saturday", NULL, NULL, NULL);
120    elm_diskselector_round_set(disk, EINA_TRUE);
121    evas_object_size_hint_weight_set(disk, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
122    evas_object_size_hint_align_set(disk, EVAS_HINT_FILL, 0.5);
123    elm_box_pack_end(bx, disk);
124    evas_object_show(disk);
125    evas_object_smart_callback_add(disk, "selected", _print_disk_info_cb, NULL);
126
127    evas_object_resize(win, 320, 480);
128    evas_object_show(win);
129 }
130
131 #endif