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 ic = elm_icon_add(win);
27 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
28 elm_icon_file_set(ic, buf, NULL);
29 elm_icon_scale_set(ic, 0, 0);
30 evas_object_size_hint_align_set(ic, 0.5, 0.5);
31 elm_box_pack_end(bx, ic);
34 ic = elm_icon_add(win);
35 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
36 elm_icon_file_set(ic, buf, NULL);
37 elm_icon_scale_set(ic, 0, 0);
38 evas_object_size_hint_align_set(ic, 0.0, 0.5);
39 elm_box_pack_end(bx, ic);
42 ic = elm_icon_add(win);
43 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
44 elm_icon_file_set(ic, buf, NULL);
45 elm_icon_scale_set(ic, 0, 0);
46 evas_object_size_hint_align_set(ic, EVAS_HINT_EXPAND, 0.5);
47 elm_box_pack_end(bx, ic);
50 evas_object_show(win);
54 _del_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
56 elm_box_unpack(data, obj);
57 evas_object_move(obj, 0, 0);
58 evas_object_color_set(obj, 128, 64, 0, 128);
59 // evas_object_del(obj);
63 test_box_vert2(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
65 Evas_Object *win, *bg, *bx, *bt;
67 win = elm_win_add(NULL, "box-vert2", ELM_WIN_BASIC);
68 elm_win_title_set(win, "Box Vert 2");
69 elm_win_autodel_set(win, 1);
72 elm_win_resize_object_add(win, bg);
73 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
76 bx = elm_box_add(win);
77 elm_win_resize_object_add(win, bx);
78 evas_object_size_hint_weight_set(bx, 0.0, 0.0);
81 bt = elm_button_add(win);
82 elm_button_label_set(bt, "Button 1");
83 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
84 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
85 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
86 elm_box_pack_end(bx, bt);
89 bt = elm_button_add(win);
90 elm_button_label_set(bt, "Button 2");
91 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
92 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
93 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
94 elm_box_pack_end(bx, bt);
97 bt = elm_button_add(win);
98 elm_button_label_set(bt, "Button 3");
99 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
100 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
101 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
102 elm_box_pack_end(bx, bt);
103 evas_object_show(bt);
105 bt = elm_button_add(win);
106 elm_button_label_set(bt, "Button 4");
107 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
108 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
109 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
110 elm_box_pack_end(bx, bt);
111 evas_object_show(bt);
113 bt = elm_button_add(win);
114 elm_button_label_set(bt, "Button 5");
115 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
116 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
117 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
118 elm_box_pack_end(bx, bt);
119 evas_object_show(bt);
121 evas_object_show(win);
125 test_box_horiz(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
127 Evas_Object *win, *bg, *bx, *ic;
130 win = elm_win_add(NULL, "box-horiz", ELM_WIN_BASIC);
131 elm_win_title_set(win, "Box Horiz");
132 elm_win_autodel_set(win, 1);
134 bg = elm_bg_add(win);
135 elm_win_resize_object_add(win, bg);
136 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
137 evas_object_show(bg);
139 bx = elm_box_add(win);
140 elm_box_horizontal_set(bx, EINA_TRUE);
141 elm_win_resize_object_add(win, bx);
142 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
143 evas_object_show(bx);
145 ic = elm_icon_add(win);
146 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
147 elm_icon_file_set(ic, buf, NULL);
148 elm_icon_scale_set(ic, 0, 0);
149 evas_object_size_hint_align_set(ic, 0.5, 0.5);
150 elm_box_pack_end(bx, ic);
151 evas_object_show(ic);
153 ic = elm_icon_add(win);
154 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
155 elm_icon_file_set(ic, buf, NULL);
156 elm_icon_scale_set(ic, 0, 0);
157 evas_object_size_hint_align_set(ic, 0.5, 0.0);
158 elm_box_pack_end(bx, ic);
159 evas_object_show(ic);
161 ic = elm_icon_add(win);
162 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
163 elm_icon_file_set(ic, buf, NULL);
164 elm_icon_scale_set(ic, 0, 0);
165 evas_object_size_hint_align_set(ic, 0.0, EVAS_HINT_EXPAND);
166 elm_box_pack_end(bx, ic);
167 evas_object_show(ic);
169 evas_object_show(win);
174 Eina_List *transitions;
176 Evas_Object_Box_Layout last_layout;
180 _test_box_transition_change(void *data)
182 Transitions_Data *tdata = data;
183 Elm_Box_Transition *layout_data;
184 Evas_Object_Box_Layout next_layout;
187 next_layout = eina_list_data_get(tdata->transitions);
188 layout_data = elm_box_transition_new(2.0, tdata->last_layout,
189 NULL, NULL, next_layout, NULL, NULL,
190 _test_box_transition_change, tdata);
191 elm_box_layout_set(tdata->box, elm_box_layout_transition, layout_data, elm_box_transition_free);
192 tdata->last_layout = next_layout;
194 tdata->transitions = eina_list_demote_list(tdata->transitions, tdata->transitions);
198 _win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
200 Transitions_Data *tdata = data;
201 elm_box_layout_set(tdata->box, evas_object_box_layout_horizontal, NULL, NULL);
206 test_box_transition(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
208 Evas_Object *win, *bg, *bx, *bt;
209 Transitions_Data *tdata;
211 win = elm_win_add(NULL, "box-transition", ELM_WIN_BASIC);
212 elm_win_title_set(win, "Box Transition");
213 elm_win_autodel_set(win, 1);
215 bg = elm_bg_add(win);
216 elm_win_resize_object_add(win, bg);
217 evas_object_size_hint_weight_set(bg, 1.0, 1.0);
218 evas_object_show(bg);
220 bx = elm_box_add(win);
221 elm_win_resize_object_add(win, bx);
222 evas_object_size_hint_weight_set(bx, 1.0, 1.0);
224 evas_object_show(bx);
226 bt = elm_button_add(win);
227 elm_button_label_set(bt, "Button 1");
228 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
229 evas_object_size_hint_align_set(bt, -1.0, -1.0);
230 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
231 elm_box_pack_end(bx, bt);
232 evas_object_resize(bt, 100, 100);
233 evas_object_show(bt);
235 bt = elm_button_add(win);
236 elm_button_label_set(bt, "Button 2");
237 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
238 evas_object_size_hint_align_set(bt, -1.0, -1.0);
239 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
240 elm_box_pack_end(bx, bt);
241 evas_object_resize(bt, 100, 100);
242 evas_object_show(bt);
244 bt = elm_button_add(win);
245 elm_button_label_set(bt, "Button 3");
246 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
247 evas_object_size_hint_align_set(bt, -1.0, -1.0);
248 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
249 elm_box_pack_end(bx, bt);
250 evas_object_resize(bt, 100, 100);
251 evas_object_show(bt);
253 tdata = calloc(1, sizeof(Transitions_Data));
255 tdata->last_layout = evas_object_box_layout_horizontal;
256 tdata->transitions = eina_list_append(tdata->transitions,
257 evas_object_box_layout_vertical);
258 tdata->transitions = eina_list_append(tdata->transitions,
259 evas_object_box_layout_horizontal);
260 tdata->transitions = eina_list_append(tdata->transitions,
261 evas_object_box_layout_stack);
262 tdata->transitions = eina_list_append(tdata->transitions,
263 evas_object_box_layout_homogeneous_vertical);
264 tdata->transitions = eina_list_append(tdata->transitions,
265 evas_object_box_layout_homogeneous_horizontal);
266 tdata->transitions = eina_list_append(tdata->transitions,
267 evas_object_box_layout_flow_vertical);
268 tdata->transitions = eina_list_append(tdata->transitions,
269 evas_object_box_layout_flow_horizontal);
270 tdata->transitions = eina_list_append(tdata->transitions,
271 evas_object_box_layout_stack);
273 evas_object_resize(win, 300, 300);
274 evas_object_resize(bx, 300, 300);
275 evas_object_smart_callback_add(win, "delete,request", _win_del, tdata);
276 evas_object_show(win);
277 elm_box_layout_set(bx, evas_object_box_layout_horizontal, NULL, NULL);
278 _test_box_transition_change(tdata);