1 #include <Elementary.h>
3 # include "elementary_config.h"
5 #ifndef ELM_LIB_QUICKLAUNCH
7 test_box_vert(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
9 Evas_Object *win, *bg, *bx, *ic;
12 win = elm_win_add(NULL, "box-vert", ELM_WIN_BASIC);
13 elm_win_title_set(win, "Box Vert");
14 elm_win_autodel_set(win, 1);
17 elm_win_resize_object_add(win, bg);
18 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
21 bx = elm_box_add(win);
22 elm_win_resize_object_add(win, bx);
23 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
26 elm_box_padding_set(bx, 1000, 1000);
28 ic = elm_icon_add(win);
29 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
30 elm_icon_file_set(ic, buf, NULL);
31 elm_icon_scale_set(ic, 0, 0);
32 evas_object_size_hint_align_set(ic, 0.5, 0.5);
33 elm_box_pack_end(bx, ic);
36 ic = elm_icon_add(win);
37 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
38 elm_icon_file_set(ic, buf, NULL);
39 elm_icon_scale_set(ic, 0, 0);
40 evas_object_size_hint_align_set(ic, 0.0, 0.5);
41 elm_box_pack_end(bx, ic);
44 ic = elm_icon_add(win);
45 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
46 elm_icon_file_set(ic, buf, NULL);
47 elm_icon_scale_set(ic, 0, 0);
48 evas_object_size_hint_align_set(ic, EVAS_HINT_EXPAND, 0.5);
49 elm_box_pack_end(bx, ic);
52 evas_object_show(win);
56 _del_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
58 elm_box_unpack(data, obj);
59 evas_object_move(obj, 0, 0);
60 evas_object_color_set(obj, 128, 64, 0, 128);
61 // evas_object_del(obj);
65 test_box_vert2(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
67 Evas_Object *win, *bg, *bx, *bt;
69 win = elm_win_add(NULL, "box-vert2", ELM_WIN_BASIC);
70 elm_win_title_set(win, "Box Vert 2");
71 elm_win_autodel_set(win, 1);
74 elm_win_resize_object_add(win, bg);
75 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
78 bx = elm_box_add(win);
79 elm_win_resize_object_add(win, bx);
80 elm_box_padding_set(bx, 10, 10);
81 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
84 bt = elm_button_add(win);
85 elm_button_label_set(bt, "Button 1");
86 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
87 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
88 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
89 elm_box_pack_end(bx, bt);
92 bt = elm_button_add(win);
93 elm_button_label_set(bt, "Button 2");
94 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
95 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
96 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
97 elm_box_pack_end(bx, bt);
100 bt = elm_button_add(win);
101 elm_button_label_set(bt, "Button 3");
102 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
103 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
104 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
105 elm_box_pack_end(bx, bt);
106 evas_object_show(bt);
108 bt = elm_button_add(win);
109 elm_button_label_set(bt, "Button 4");
110 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
111 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
112 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
113 elm_box_pack_end(bx, bt);
114 evas_object_show(bt);
116 bt = elm_button_add(win);
117 elm_button_label_set(bt, "Button 5");
118 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
119 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
120 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
121 elm_box_pack_end(bx, bt);
122 evas_object_show(bt);
124 evas_object_show(win);
128 test_box_horiz(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
130 Evas_Object *win, *bg, *bx, *ic;
133 win = elm_win_add(NULL, "box-horiz", ELM_WIN_BASIC);
134 elm_win_title_set(win, "Box Horiz");
135 elm_win_autodel_set(win, 1);
137 bg = elm_bg_add(win);
138 elm_win_resize_object_add(win, bg);
139 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
140 evas_object_show(bg);
142 bx = elm_box_add(win);
143 elm_box_horizontal_set(bx, EINA_TRUE);
144 elm_win_resize_object_add(win, bx);
145 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
146 evas_object_show(bx);
148 ic = elm_icon_add(win);
149 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
150 elm_icon_file_set(ic, buf, NULL);
151 elm_icon_scale_set(ic, 0, 0);
152 evas_object_size_hint_align_set(ic, 0.5, 0.5);
153 elm_box_pack_end(bx, ic);
154 evas_object_show(ic);
156 ic = elm_icon_add(win);
157 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
158 elm_icon_file_set(ic, buf, NULL);
159 elm_icon_scale_set(ic, 0, 0);
160 evas_object_size_hint_align_set(ic, 0.5, 0.0);
161 elm_box_pack_end(bx, ic);
162 evas_object_show(ic);
164 ic = elm_icon_add(win);
165 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
166 elm_icon_file_set(ic, buf, NULL);
167 elm_icon_scale_set(ic, 0, 0);
168 evas_object_size_hint_align_set(ic, 0.0, EVAS_HINT_EXPAND);
169 elm_box_pack_end(bx, ic);
170 evas_object_show(ic);
172 evas_object_show(win);
177 Eina_List *transitions;
179 Evas_Object_Box_Layout last_layout;
183 _test_box_transition_change(void *data)
185 Transitions_Data *tdata = data;
186 Elm_Box_Transition *layout_data;
187 Evas_Object_Box_Layout next_layout;
190 next_layout = eina_list_data_get(tdata->transitions);
191 layout_data = elm_box_transition_new(2.0, tdata->last_layout,
192 NULL, NULL, next_layout, NULL, NULL,
193 _test_box_transition_change, tdata);
194 elm_box_layout_set(tdata->box, elm_box_layout_transition, layout_data, elm_box_transition_free);
195 tdata->last_layout = next_layout;
197 tdata->transitions = eina_list_demote_list(tdata->transitions, tdata->transitions);
201 _win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
203 Transitions_Data *tdata = data;
205 elm_box_layout_set(tdata->box, evas_object_box_layout_horizontal, NULL, NULL);
210 test_box_transition(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
212 Evas_Object *win, *bg, *bx, *bt;
213 Transitions_Data *tdata;
215 win = elm_win_add(NULL, "box-transition", ELM_WIN_BASIC);
216 elm_win_title_set(win, "Box Transition");
217 elm_win_autodel_set(win, 1);
219 bg = elm_bg_add(win);
220 elm_win_resize_object_add(win, bg);
221 evas_object_size_hint_weight_set(bg, 1.0, 1.0);
222 evas_object_show(bg);
224 bx = elm_box_add(win);
225 elm_win_resize_object_add(win, bx);
226 evas_object_size_hint_weight_set(bx, 1.0, 1.0);
228 evas_object_show(bx);
230 bt = elm_button_add(win);
231 elm_button_label_set(bt, "Button 1");
232 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
233 evas_object_size_hint_align_set(bt, -1.0, -1.0);
234 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
235 elm_box_pack_end(bx, bt);
236 evas_object_resize(bt, 100, 100);
237 evas_object_show(bt);
239 bt = elm_button_add(win);
240 elm_button_label_set(bt, "Button 2");
241 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
242 evas_object_size_hint_align_set(bt, -1.0, -1.0);
243 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
244 elm_box_pack_end(bx, bt);
245 evas_object_resize(bt, 100, 100);
246 evas_object_show(bt);
248 bt = elm_button_add(win);
249 elm_button_label_set(bt, "Button 3");
250 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
251 evas_object_size_hint_align_set(bt, -1.0, -1.0);
252 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
253 elm_box_pack_end(bx, bt);
254 evas_object_resize(bt, 100, 100);
255 evas_object_show(bt);
257 tdata = calloc(1, sizeof(Transitions_Data));
259 tdata->last_layout = evas_object_box_layout_horizontal;
260 tdata->transitions = eina_list_append(tdata->transitions,
261 evas_object_box_layout_vertical);
262 tdata->transitions = eina_list_append(tdata->transitions,
263 evas_object_box_layout_horizontal);
264 tdata->transitions = eina_list_append(tdata->transitions,
265 evas_object_box_layout_stack);
266 tdata->transitions = eina_list_append(tdata->transitions,
267 evas_object_box_layout_homogeneous_vertical);
268 tdata->transitions = eina_list_append(tdata->transitions,
269 evas_object_box_layout_homogeneous_horizontal);
270 tdata->transitions = eina_list_append(tdata->transitions,
271 evas_object_box_layout_flow_vertical);
272 tdata->transitions = eina_list_append(tdata->transitions,
273 evas_object_box_layout_flow_horizontal);
274 tdata->transitions = eina_list_append(tdata->transitions,
275 evas_object_box_layout_stack);
277 evas_object_resize(win, 300, 300);
278 evas_object_resize(bx, 300, 300);
279 evas_object_smart_callback_add(win, "delete,request", _win_del, tdata);
280 evas_object_show(win);
281 elm_box_layout_set(bx, evas_object_box_layout_horizontal, NULL, NULL);
282 _test_box_transition_change(tdata);