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 elm_box_padding_set(bx, 10, 10);
79 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
82 bt = elm_button_add(win);
83 elm_button_label_set(bt, "Button 1");
84 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
85 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
86 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
87 elm_box_pack_end(bx, bt);
90 bt = elm_button_add(win);
91 elm_button_label_set(bt, "Button 2");
92 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
93 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
94 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
95 elm_box_pack_end(bx, bt);
98 bt = elm_button_add(win);
99 elm_button_label_set(bt, "Button 3");
100 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
101 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
102 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
103 elm_box_pack_end(bx, bt);
104 evas_object_show(bt);
106 bt = elm_button_add(win);
107 elm_button_label_set(bt, "Button 4");
108 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
109 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
110 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
111 elm_box_pack_end(bx, bt);
112 evas_object_show(bt);
114 bt = elm_button_add(win);
115 elm_button_label_set(bt, "Button 5");
116 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
117 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
118 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
119 elm_box_pack_end(bx, bt);
120 evas_object_show(bt);
122 evas_object_show(win);
126 test_box_horiz(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
128 Evas_Object *win, *bg, *bx, *ic;
131 win = elm_win_add(NULL, "box-horiz", ELM_WIN_BASIC);
132 elm_win_title_set(win, "Box Horiz");
133 elm_win_autodel_set(win, 1);
135 bg = elm_bg_add(win);
136 elm_win_resize_object_add(win, bg);
137 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
138 evas_object_show(bg);
140 bx = elm_box_add(win);
141 elm_box_horizontal_set(bx, EINA_TRUE);
142 elm_win_resize_object_add(win, bx);
143 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
144 evas_object_show(bx);
146 ic = elm_icon_add(win);
147 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
148 elm_icon_file_set(ic, buf, NULL);
149 elm_icon_scale_set(ic, 0, 0);
150 evas_object_size_hint_align_set(ic, 0.5, 0.5);
151 elm_box_pack_end(bx, ic);
152 evas_object_show(ic);
154 ic = elm_icon_add(win);
155 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
156 elm_icon_file_set(ic, buf, NULL);
157 elm_icon_scale_set(ic, 0, 0);
158 evas_object_size_hint_align_set(ic, 0.5, 0.0);
159 elm_box_pack_end(bx, ic);
160 evas_object_show(ic);
162 ic = elm_icon_add(win);
163 snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
164 elm_icon_file_set(ic, buf, NULL);
165 elm_icon_scale_set(ic, 0, 0);
166 evas_object_size_hint_align_set(ic, 0.0, EVAS_HINT_EXPAND);
167 elm_box_pack_end(bx, ic);
168 evas_object_show(ic);
170 evas_object_show(win);
175 Eina_List *transitions;
177 Evas_Object_Box_Layout last_layout;
181 _test_box_transition_change(void *data)
183 Transitions_Data *tdata = data;
184 Elm_Box_Transition *layout_data;
185 Evas_Object_Box_Layout next_layout;
188 next_layout = eina_list_data_get(tdata->transitions);
189 layout_data = elm_box_transition_new(2.0, tdata->last_layout,
190 NULL, NULL, next_layout, NULL, NULL,
191 _test_box_transition_change, tdata);
192 elm_box_layout_set(tdata->box, elm_box_layout_transition, layout_data, elm_box_transition_free);
193 tdata->last_layout = next_layout;
195 tdata->transitions = eina_list_demote_list(tdata->transitions, tdata->transitions);
199 _win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
201 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);