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_object_text_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_object_text_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_object_text_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_object_text_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_object_text_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;
207 test_box_transition(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
209 Evas_Object *win, *bg, *bx, *bt;
210 Transitions_Data *tdata;
212 win = elm_win_add(NULL, "box-transition", ELM_WIN_BASIC);
213 elm_win_title_set(win, "Box Transition");
214 elm_win_autodel_set(win, 1);
216 bg = elm_bg_add(win);
217 elm_win_resize_object_add(win, bg);
218 evas_object_size_hint_weight_set(bg, 1.0, 1.0);
219 evas_object_show(bg);
221 bx = elm_box_add(win);
222 elm_win_resize_object_add(win, bx);
223 evas_object_size_hint_weight_set(bx, 1.0, 1.0);
225 evas_object_show(bx);
227 bt = elm_button_add(win);
228 elm_object_text_set(bt, "Button 1");
229 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
230 evas_object_size_hint_align_set(bt, -1.0, -1.0);
231 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
232 elm_box_pack_end(bx, bt);
233 evas_object_resize(bt, 100, 100);
234 evas_object_show(bt);
236 bt = elm_button_add(win);
237 elm_object_text_set(bt, "Button 2");
238 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
239 evas_object_size_hint_align_set(bt, -1.0, -1.0);
240 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
241 elm_box_pack_end(bx, bt);
242 evas_object_resize(bt, 100, 100);
243 evas_object_show(bt);
245 bt = elm_button_add(win);
246 elm_object_text_set(bt, "Button 3");
247 evas_object_size_hint_weight_set(bt, 1.0, 1.0);
248 evas_object_size_hint_align_set(bt, -1.0, -1.0);
249 evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
250 elm_box_pack_end(bx, bt);
251 evas_object_resize(bt, 100, 100);
252 evas_object_show(bt);
254 tdata = calloc(1, sizeof(Transitions_Data));
256 tdata->last_layout = evas_object_box_layout_horizontal;
257 tdata->transitions = eina_list_append(tdata->transitions,
258 evas_object_box_layout_vertical);
259 tdata->transitions = eina_list_append(tdata->transitions,
260 evas_object_box_layout_horizontal);
261 tdata->transitions = eina_list_append(tdata->transitions,
262 evas_object_box_layout_stack);
263 tdata->transitions = eina_list_append(tdata->transitions,
264 evas_object_box_layout_homogeneous_vertical);
265 tdata->transitions = eina_list_append(tdata->transitions,
266 evas_object_box_layout_homogeneous_horizontal);
267 tdata->transitions = eina_list_append(tdata->transitions,
268 evas_object_box_layout_flow_vertical);
269 tdata->transitions = eina_list_append(tdata->transitions,
270 evas_object_box_layout_flow_horizontal);
271 tdata->transitions = eina_list_append(tdata->transitions,
272 evas_object_box_layout_stack);
274 evas_object_resize(win, 300, 300);
275 evas_object_resize(bx, 300, 300);
276 evas_object_smart_callback_add(win, "delete,request", _win_del, tdata);
277 evas_object_show(win);
278 elm_box_layout_set(bx, evas_object_box_layout_horizontal, NULL, NULL);
279 _test_box_transition_change(tdata);