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 evas_object_size_hint_weight_set(bx, 0.0, 0.0);
83 bt = elm_button_add(win);
84 elm_button_label_set(bt, "Button 1");
85 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
86 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
87 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
88 elm_box_pack_end(bx, bt);
91 bt = elm_button_add(win);
92 elm_button_label_set(bt, "Button 2");
93 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
94 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
95 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
96 elm_box_pack_end(bx, bt);
99 bt = elm_button_add(win);
100 elm_button_label_set(bt, "Button 3");
101 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
102 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
103 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
104 elm_box_pack_end(bx, bt);
105 evas_object_show(bt);
107 bt = elm_button_add(win);
108 elm_button_label_set(bt, "Button 4");
109 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
110 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
111 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
112 elm_box_pack_end(bx, bt);
113 evas_object_show(bt);
115 bt = elm_button_add(win);
116 elm_button_label_set(bt, "Button 5");
117 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
118 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
119 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
120 elm_box_pack_end(bx, bt);
121 evas_object_show(bt);
123 evas_object_show(win);
127 test_box_horiz(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
129 Evas_Object *win, *bg, *bx, *ic;
132 win = elm_win_add(NULL, "box-horiz", ELM_WIN_BASIC);
133 elm_win_title_set(win, "Box Horiz");
134 elm_win_autodel_set(win, 1);
136 bg = elm_bg_add(win);
137 elm_win_resize_object_add(win, bg);
138 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
139 evas_object_show(bg);
141 bx = elm_box_add(win);
142 elm_box_horizontal_set(bx, EINA_TRUE);
143 elm_win_resize_object_add(win, bx);
144 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
145 evas_object_show(bx);
147 ic = elm_icon_add(win);
148 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
149 elm_icon_file_set(ic, buf, NULL);
150 elm_icon_scale_set(ic, 0, 0);
151 evas_object_size_hint_align_set(ic, 0.5, 0.5);
152 elm_box_pack_end(bx, ic);
153 evas_object_show(ic);
155 ic = elm_icon_add(win);
156 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
157 elm_icon_file_set(ic, buf, NULL);
158 elm_icon_scale_set(ic, 0, 0);
159 evas_object_size_hint_align_set(ic, 0.5, 0.0);
160 elm_box_pack_end(bx, ic);
161 evas_object_show(ic);
163 ic = elm_icon_add(win);
164 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
165 elm_icon_file_set(ic, buf, NULL);
166 elm_icon_scale_set(ic, 0, 0);
167 evas_object_size_hint_align_set(ic, 0.0, EVAS_HINT_EXPAND);
168 elm_box_pack_end(bx, ic);
169 evas_object_show(ic);
171 evas_object_show(win);
176 Eina_List *transitions;
178 Evas_Object_Box_Layout last_layout;
182 _test_box_transition_change(void *data)
184 Transitions_Data *tdata = data;
185 Elm_Box_Transition *layout_data;
186 Evas_Object_Box_Layout next_layout;
189 next_layout = eina_list_data_get(tdata->transitions);
190 layout_data = elm_box_transition_new(2.0, tdata->last_layout,
191 NULL, NULL, next_layout, NULL, NULL,
192 _test_box_transition_change, tdata);
193 elm_box_layout_set(tdata->box, elm_box_layout_transition, layout_data, elm_box_transition_free);
194 tdata->last_layout = next_layout;
196 tdata->transitions = eina_list_demote_list(tdata->transitions, tdata->transitions);
200 _win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
202 Transitions_Data *tdata = data;
203 elm_box_layout_set(tdata->box, evas_object_box_layout_horizontal, NULL, NULL);
208 test_box_transition(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
210 Evas_Object *win, *bg, *bx, *bt;
211 Transitions_Data *tdata;
213 win = elm_win_add(NULL, "box-transition", ELM_WIN_BASIC);
214 elm_win_title_set(win, "Box Transition");
215 elm_win_autodel_set(win, 1);
217 bg = elm_bg_add(win);
218 elm_win_resize_object_add(win, bg);
219 evas_object_size_hint_weight_set(bg, 1.0, 1.0);
220 evas_object_show(bg);
222 bx = elm_box_add(win);
223 elm_win_resize_object_add(win, bx);
224 evas_object_size_hint_weight_set(bx, 1.0, 1.0);
226 evas_object_show(bx);
228 bt = elm_button_add(win);
229 elm_button_label_set(bt, "Button 1");
230 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
231 evas_object_size_hint_align_set(bt, -1.0, -1.0);
232 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
233 elm_box_pack_end(bx, bt);
234 evas_object_resize(bt, 100, 100);
235 evas_object_show(bt);
237 bt = elm_button_add(win);
238 elm_button_label_set(bt, "Button 2");
239 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
240 evas_object_size_hint_align_set(bt, -1.0, -1.0);
241 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
242 elm_box_pack_end(bx, bt);
243 evas_object_resize(bt, 100, 100);
244 evas_object_show(bt);
246 bt = elm_button_add(win);
247 elm_button_label_set(bt, "Button 3");
248 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
249 evas_object_size_hint_align_set(bt, -1.0, -1.0);
250 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
251 elm_box_pack_end(bx, bt);
252 evas_object_resize(bt, 100, 100);
253 evas_object_show(bt);
255 tdata = calloc(1, sizeof(Transitions_Data));
257 tdata->last_layout = evas_object_box_layout_horizontal;
258 tdata->transitions = eina_list_append(tdata->transitions,
259 evas_object_box_layout_vertical);
260 tdata->transitions = eina_list_append(tdata->transitions,
261 evas_object_box_layout_horizontal);
262 tdata->transitions = eina_list_append(tdata->transitions,
263 evas_object_box_layout_stack);
264 tdata->transitions = eina_list_append(tdata->transitions,
265 evas_object_box_layout_homogeneous_vertical);
266 tdata->transitions = eina_list_append(tdata->transitions,
267 evas_object_box_layout_homogeneous_horizontal);
268 tdata->transitions = eina_list_append(tdata->transitions,
269 evas_object_box_layout_flow_vertical);
270 tdata->transitions = eina_list_append(tdata->transitions,
271 evas_object_box_layout_flow_horizontal);
272 tdata->transitions = eina_list_append(tdata->transitions,
273 evas_object_box_layout_stack);
275 evas_object_resize(win, 300, 300);
276 evas_object_resize(bx, 300, 300);
277 evas_object_smart_callback_add(win, "delete,request", _win_del, tdata);
278 evas_object_show(win);
279 elm_box_layout_set(bx, evas_object_box_layout_horizontal, NULL, NULL);
280 _test_box_transition_change(tdata);