1 #ifdef HAVE_CONFIG_H
2 # include "elementary_config.h"
3 #endif
4
5 #include <Efl_Ui.h>
6
7 static Efl_Ui_Widget*
_item_add(Eo * box,const Efl_Class * c,int i)8 _item_add(Eo *box, const Efl_Class *c, int i)
9 {
10 Eo *check, *rect, *il = efl_add(c, box);
11 int r = 0, g = 0, b = 0;
12 char buf[PATH_MAX];
13
14 snprintf(buf, sizeof(buf), "%d - Test %d", i, i%13);
15 efl_text_set(il, buf);
16
17 rect = efl_add(EFL_CANVAS_RECTANGLE_CLASS, il);
18 switch (i % 5)
19 {
20 case 0:
21 r = 255;
22 break;
23 case 1:
24 g = 255;
25 break;
26 case 2:
27 b = 255;
28 break;
29 case 3:
30 r = g = b = 255;
31 break;
32 case 4:
33 r = g = b = 0;
34 break;
35 }
36 efl_gfx_color_set(rect, r, g, b, 255);
37 efl_content_set(il, rect);
38
39 check = efl_add(EFL_UI_CHECK_CLASS, il);
40 efl_content_set(efl_part(il, "extra"), check);
41
42 if (c == EFL_UI_GRID_DEFAULT_ITEM_CLASS)
43 efl_gfx_hint_size_min_set(il, EINA_SIZE2D(100, 180));
44 else
45 efl_gfx_hint_size_min_set(il, EINA_SIZE2D(40, 40+(i%2)*40));
46
47 return il;
48 }
49
test_efl_ui_item(void * data EINA_UNUSED,Efl_Object * obj EINA_UNUSED,void * event_info EINA_UNUSED)50 void test_efl_ui_item(void *data EINA_UNUSED,
51 Efl_Object *obj EINA_UNUSED,
52 void *event_info EINA_UNUSED)
53 {
54 Eo *win, *box, *o;
55
56 win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
57 efl_text_set(efl_added, "Item examples"),
58 efl_ui_win_autodel_set(efl_added, EINA_TRUE)
59 );
60
61 box = efl_add(EFL_UI_BOX_CLASS, win,
62 efl_content_set(win, efl_added));
63
64 o = _item_add(box, EFL_UI_GRID_DEFAULT_ITEM_CLASS, 1);
65 efl_pack_end(box, o);
66
67 o = _item_add(box, EFL_UI_GRID_DEFAULT_ITEM_CLASS, 2);
68 efl_ui_widget_disabled_set(o, EINA_TRUE);
69 efl_pack_end(box, o);
70
71 o = _item_add(box, EFL_UI_LIST_DEFAULT_ITEM_CLASS, 3);
72 efl_pack_end(box, o);
73
74 o = _item_add(box, EFL_UI_LIST_DEFAULT_ITEM_CLASS, 4);
75 efl_ui_widget_disabled_set(o, EINA_TRUE);
76 efl_pack_end(box, o);
77
78 o = efl_add(EFL_UI_LIST_PLACEHOLDER_ITEM_CLASS, box);
79 efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40+40));
80 efl_pack_end(box, o);
81
82 o = efl_add(EFL_UI_LIST_PLACEHOLDER_ITEM_CLASS, box);
83 efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40));
84 efl_ui_widget_disabled_set(o, EINA_TRUE);
85 efl_pack_end(box, o);
86
87 o = _item_add(box, EFL_UI_GROUP_ITEM_CLASS, 5);
88 efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40+40));
89 efl_pack_end(box, o);
90
91 o = _item_add(box, EFL_UI_GROUP_ITEM_CLASS, 6);
92 efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40));
93 efl_ui_widget_disabled_set(o, EINA_TRUE);
94
95 o = _item_add(box, EFL_UI_TAB_BAR_DEFAULT_ITEM_CLASS, 5);
96 efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40+40));
97 efl_pack_end(box, o);
98
99 o = _item_add(box, EFL_UI_TAB_BAR_DEFAULT_ITEM_CLASS, 6);
100 efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40));
101 efl_ui_widget_disabled_set(o, EINA_TRUE);
102 efl_pack_end(box, o);
103 o = _item_add(box, EFL_UI_TAB_BAR_DEFAULT_ITEM_CLASS, 5);
104 efl_ui_tab_bar_default_item_icon_set(o, "folder");
105 efl_gfx_hint_size_min_set(o, EINA_SIZE2D(40, 40+40));
106 efl_pack_end(box, o);
107 }
108