elm test_box.c: Added more test sample. Patch by Shinwoo Kim
[framework/uifw/elementary.git] / src / bin / test_box.c
1 #include <Elementary.h>
2 #ifdef HAVE_CONFIG_H
3 # include "elementary_config.h"
4 #endif
5 #ifndef ELM_LIB_QUICKLAUNCH
6
7 #define ICON_MAX 24
8
9 typedef enum
10 {
11   BOX_PACK_POSITION_START,
12   BOX_PACK_POSITION_BEFORE,
13   BOX_PACK_POSITION_AFTER,
14   BOX_PACK_POSITION_END
15 } Box_Pack_Position;
16
17 void
18 test_box_vert(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
19 {
20    Evas_Object *win, *bg, *bx, *ic;
21    char buf[PATH_MAX];
22
23    win = elm_win_add(NULL, "box-vert", ELM_WIN_BASIC);
24    elm_win_title_set(win, "Box Vert");
25    elm_win_autodel_set(win, EINA_TRUE);
26
27    bg = elm_bg_add(win);
28    elm_win_resize_object_add(win, bg);
29    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
30    evas_object_show(bg);
31
32    bx = elm_box_add(win);
33    elm_win_resize_object_add(win, bx);
34    evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
35    evas_object_show(bx);
36
37    ic = elm_icon_add(win);
38    snprintf(buf, sizeof(buf), "%s/images/logo_small.png", elm_app_data_dir_get());
39    elm_icon_file_set(ic, buf, NULL);
40    elm_icon_scale_set(ic, 0, 0);
41    evas_object_size_hint_align_set(ic, 0.5, 0.5);
42    elm_box_pack_end(bx, ic);
43    evas_object_show(ic);
44
45    ic = elm_icon_add(win);
46    snprintf(buf, sizeof(buf), "%s/images/logo_small.png", elm_app_data_dir_get());
47    elm_icon_file_set(ic, buf, NULL);
48    elm_icon_scale_set(ic, 0, 0);
49    evas_object_size_hint_align_set(ic, 0.0, 0.5);
50    elm_box_pack_end(bx, ic);
51    evas_object_show(ic);
52
53    ic = elm_icon_add(win);
54    snprintf(buf, sizeof(buf), "%s/images/logo_small.png", elm_app_data_dir_get());
55    elm_icon_file_set(ic, buf, NULL);
56    elm_icon_scale_set(ic, 0, 0);
57    evas_object_size_hint_align_set(ic, EVAS_HINT_EXPAND, 0.5);
58    elm_box_pack_end(bx, ic);
59    evas_object_show(ic);
60
61    evas_object_show(win);
62 }
63
64 static void
65 _del_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
66 {
67    elm_box_unpack(data, obj);
68    evas_object_move(obj, 0, 0);
69    evas_object_color_set(obj, 128, 64, 0, 128);
70 //   evas_object_del(obj);
71 }
72
73 void
74 test_box_vert2(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
75 {
76    Evas_Object *win, *bg, *bx, *bt;
77
78    win = elm_win_add(NULL, "box-vert2", ELM_WIN_BASIC);
79    elm_win_title_set(win, "Box Vert 2");
80    elm_win_autodel_set(win, EINA_TRUE);
81
82    bg = elm_bg_add(win);
83    elm_win_resize_object_add(win, bg);
84    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
85    evas_object_show(bg);
86
87    bx = elm_box_add(win);
88    elm_win_resize_object_add(win, bx);
89    elm_box_padding_set(bx, 10, 10);
90    evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
91    evas_object_show(bx);
92
93    bt = elm_button_add(win);
94    elm_object_text_set(bt, "Button 1");
95    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
96    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
97    evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
98    elm_box_pack_end(bx, bt);
99    evas_object_show(bt);
100
101    bt = elm_button_add(win);
102    elm_object_text_set(bt, "Button 2");
103    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
104    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
105    evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
106    elm_box_pack_end(bx, bt);
107    evas_object_show(bt);
108
109    bt = elm_button_add(win);
110    elm_object_text_set(bt, "Button 3");
111    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
112    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
113    evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
114    elm_box_pack_end(bx, bt);
115    evas_object_show(bt);
116
117    bt = elm_button_add(win);
118    elm_object_text_set(bt, "Button 4");
119    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
120    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
121    evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
122    elm_box_pack_end(bx, bt);
123    evas_object_show(bt);
124
125    bt = elm_button_add(win);
126    elm_object_text_set(bt, "Button 5");
127    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
128    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
129    evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
130    elm_box_pack_end(bx, bt);
131    evas_object_show(bt);
132
133    evas_object_show(win);
134 }
135
136 void
137 test_box_horiz(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
138 {
139    Evas_Object *win, *bg, *bx, *ic;
140    char buf[PATH_MAX];
141
142    win = elm_win_add(NULL, "box-horiz", ELM_WIN_BASIC);
143    elm_win_title_set(win, "Box Horiz");
144    elm_win_autodel_set(win, EINA_TRUE);
145
146    bg = elm_bg_add(win);
147    elm_win_resize_object_add(win, bg);
148    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
149    evas_object_show(bg);
150
151    bx = elm_box_add(win);
152    elm_box_horizontal_set(bx, EINA_TRUE);
153    elm_win_resize_object_add(win, bx);
154    evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
155    evas_object_show(bx);
156
157    ic = elm_icon_add(win);
158    snprintf(buf, sizeof(buf), "%s/images/logo_small.png", elm_app_data_dir_get());
159    elm_icon_file_set(ic, buf, NULL);
160    elm_icon_scale_set(ic, 0, 0);
161    evas_object_size_hint_align_set(ic, 0.5, 0.5);
162    elm_box_pack_end(bx, ic);
163    evas_object_show(ic);
164
165    ic = elm_icon_add(win);
166    snprintf(buf, sizeof(buf), "%s/images/logo_small.png", elm_app_data_dir_get());
167    elm_icon_file_set(ic, buf, NULL);
168    elm_icon_scale_set(ic, 0, 0);
169    evas_object_size_hint_align_set(ic, 0.5, 0.0);
170    elm_box_pack_end(bx, ic);
171    evas_object_show(ic);
172
173    ic = elm_icon_add(win);
174    snprintf(buf, sizeof(buf), "%s/images/logo_small.png", elm_app_data_dir_get());
175    elm_icon_file_set(ic, buf, NULL);
176    elm_icon_scale_set(ic, 0, 0);
177    evas_object_size_hint_align_set(ic, 0.0, EVAS_HINT_EXPAND);
178    elm_box_pack_end(bx, ic);
179    evas_object_show(ic);
180
181    evas_object_show(win);
182 }
183
184 static void
185 _unpack_btn_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
186 {
187    Evas_Object *box, *radio;
188    Eina_List *rl, *l;
189    int value, svalue;
190
191    box = (Evas_Object *)data;
192
193    rl = (Eina_List *) evas_object_data_get(box, "radio-list");
194    EINA_LIST_FOREACH(rl, l, radio)
195      {
196         value = elm_radio_value_get(radio);
197         svalue = elm_radio_state_value_get(radio);
198
199         if (value != svalue) continue;
200
201         elm_radio_value_set(radio, -1);
202         elm_box_unpack(box, radio);
203         rl = eina_list_remove(rl, radio);
204         evas_object_data_set(box, "radio-list", rl);
205         evas_object_del(radio);
206      }
207 }
208
209 static void
210 _unpack_all_btn_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
211 {
212    Evas_Object *box, *radio;
213    Eina_List *rl, *l;
214
215    box = (Evas_Object *)data;
216    elm_box_unpack_all(box);
217
218    rl = (Eina_List *) evas_object_data_get(box, "radio-list");
219    EINA_LIST_FOREACH(rl, l, radio) evas_object_del(radio);
220
221    evas_object_data_del(box, "radio-list");
222    eina_list_free(rl);
223 }
224
225 static Evas_Object *
226 _radio_new(Evas_Object *obj, int index)
227 {
228    Evas_Object *ic, *rd;
229    char buf[PATH_MAX];
230
231    if (index >= ICON_MAX) return NULL;
232
233    ic = elm_icon_add(obj);
234    snprintf(buf, sizeof(buf), "%s/images/icon_%02d.png",
235             elm_app_data_dir_get(), index);
236    elm_icon_file_set(ic, buf, NULL);
237    evas_object_size_hint_aspect_set(ic, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
238
239    rd = elm_radio_add(obj);
240    elm_radio_state_value_set(rd, index);
241    evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
242    evas_object_size_hint_align_set(rd, EVAS_HINT_FILL, 0.5);
243    elm_object_part_content_set(rd, "icon", ic);
244
245    evas_object_show(rd);
246    evas_object_show(ic);
247
248    return rd;
249 }
250
251 static void
252 _pack(Evas_Object *box, Box_Pack_Position pos)
253 {
254    Evas_Object *radio;
255    Evas_Object *rd, *rdg = NULL;
256    Eina_List *rl, *l = NULL;
257    int value, svalue, count;
258
259    rl = (Eina_List *) evas_object_data_get(box, "radio-list");
260    if (!rl && ((pos == BOX_PACK_POSITION_START) ||
261                (pos == BOX_PACK_POSITION_END)))
262      {
263         rd = _radio_new(box, 0);
264         if (pos == BOX_PACK_POSITION_START) elm_box_pack_start(box, rd);
265         else elm_box_pack_end(box, rd);
266
267         l = eina_list_append(l, rd);
268         evas_object_data_set(box, "radio-list", l);
269
270         rdg = rd;
271         evas_object_data_set(box, "radio-group", rdg);
272
273         return;
274      }
275
276    count = eina_list_count(rl);
277    EINA_LIST_FOREACH(rl, l, radio)
278      {
279         value = elm_radio_value_get(radio);
280         svalue = elm_radio_state_value_get(radio);
281
282         if (value != svalue) continue;
283
284         rd = _radio_new(box, count);
285         if (!rd) break;
286
287         switch (pos)
288           {
289            case BOX_PACK_POSITION_START:
290               elm_box_pack_start(box, rd);
291               break;
292            case BOX_PACK_POSITION_BEFORE:
293               elm_box_pack_before(box, rd, radio);
294               break;
295            case BOX_PACK_POSITION_AFTER:
296               elm_box_pack_after(box, rd, radio);
297               break;
298            case BOX_PACK_POSITION_END:
299               elm_box_pack_end(box, rd);
300               break;
301           }
302
303         rdg = evas_object_data_get(box, "radio-group");
304         elm_radio_group_add(rd, rdg);
305
306         rl = eina_list_append(rl, rd);
307         evas_object_data_set(box, "radio-list", rl);
308      }
309 }
310
311 static void
312 _pack_start_btn_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
313 {
314    Evas_Object *box;
315    if (!data) return;
316
317    box = (Evas_Object *)data;
318    _pack(box, BOX_PACK_POSITION_START);
319 }
320
321 static void
322 _pack_before_btn_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
323 {
324    Evas_Object *box;
325    if (!data) return;
326
327    box = (Evas_Object *)data;
328    _pack(box, BOX_PACK_POSITION_BEFORE);
329 }
330
331 static void
332 _pack_after_btn_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
333 {
334    Evas_Object *box;
335    if (!data) return;
336
337    box = (Evas_Object *)data;
338    _pack(box, BOX_PACK_POSITION_AFTER);
339 }
340
341 static void
342 _pack_end_btn_cb(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
343 {
344    Evas_Object *box;
345    if (!data) return;
346
347    box = (Evas_Object *)data;
348    _pack(box, BOX_PACK_POSITION_END);
349 }
350
351 void
352 test_box_pack(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
353 {
354    Evas_Object *win, *sc, *bt;
355    Evas_Object *box, *lbox, *rbox;
356    Evas_Object *rd, *rdg = NULL;
357    Eina_List *l = NULL;
358    int i;
359
360    win = elm_win_util_standard_add("box-pack", "Box Pack");
361    elm_win_autodel_set(win, EINA_TRUE);
362
363    box = elm_box_add(win);
364    elm_box_horizontal_set(box, EINA_TRUE);
365    evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
366    evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
367    elm_win_resize_object_add(win, box);
368    evas_object_show(box);
369
370    // left side
371    lbox = elm_box_add(win);
372    evas_object_size_hint_weight_set(lbox, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
373    evas_object_size_hint_align_set(lbox, EVAS_HINT_FILL, EVAS_HINT_FILL);
374
375    sc = elm_scroller_add(win);
376    elm_scroller_bounce_set(sc, EINA_FALSE, EINA_TRUE);
377    evas_object_size_hint_weight_set(sc, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
378    evas_object_size_hint_align_set(sc, EVAS_HINT_FILL, EVAS_HINT_FILL);
379
380    for(i = 0; i < 3; i++)
381      {
382         rd = _radio_new(win, i);
383         elm_box_pack_end(lbox, rd);
384         l = eina_list_append(l, rd);
385         if (i == 0) rdg = rd;
386         else elm_radio_group_add(rd, rdg);
387      }
388
389    evas_object_data_set(lbox, "radio-list", l);
390    evas_object_data_set(lbox, "radio-group", rdg);
391    elm_object_content_set(sc, lbox);
392    evas_object_show(lbox);
393    elm_box_pack_end(box, sc);
394    evas_object_show(sc);
395
396    // right side
397    rbox = elm_box_add(win);
398    evas_object_size_hint_weight_set(rbox, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
399    evas_object_size_hint_align_set(rbox, EVAS_HINT_FILL, EVAS_HINT_FILL);
400    evas_object_show(rbox);
401    elm_box_pack_end(box, rbox);
402
403    bt = elm_button_add(win);
404    elm_object_text_set(bt, "Pack Start");
405    evas_object_show(bt);
406    elm_box_pack_end(rbox, bt);
407    evas_object_smart_callback_add(bt, "clicked", _pack_start_btn_cb, lbox);
408
409    bt = elm_button_add(win);
410    elm_object_text_set(bt, "Pack Before");
411    evas_object_show(bt);
412    elm_box_pack_end(rbox, bt);
413    evas_object_smart_callback_add(bt, "clicked", _pack_before_btn_cb, lbox);
414
415    bt = elm_button_add(win);
416    elm_object_text_set(bt, "Pack After");
417    evas_object_show(bt);
418    elm_box_pack_end(rbox, bt);
419    evas_object_smart_callback_add(bt, "clicked", _pack_after_btn_cb, lbox);
420
421    bt = elm_button_add(win);
422    elm_object_text_set(bt, "Pack End");
423    evas_object_show(bt);
424    elm_box_pack_end(rbox, bt);
425    evas_object_smart_callback_add(bt, "clicked", _pack_end_btn_cb, lbox);
426
427    bt = elm_button_add(win);
428    elm_object_text_set(bt, "Unpack");
429    evas_object_show(bt);
430    elm_box_pack_end(rbox, bt);
431    evas_object_smart_callback_add(bt, "clicked", _unpack_btn_cb, lbox);
432
433    bt = elm_button_add(win);
434    elm_object_text_set(bt, "Unpack All");
435    evas_object_show(bt);
436    elm_box_pack_end(rbox, bt);
437    evas_object_smart_callback_add(bt, "clicked", _unpack_all_btn_cb, lbox);
438
439    evas_object_resize(win, 320, 320);
440    evas_object_show(win);
441 }
442
443 static void
444 _cb_check_changed(void *data, Evas_Object *obj, void *event __UNUSED__)
445 {
446    Eina_Bool homo;
447    Evas_Object *box = data;
448
449    homo = elm_check_state_get(obj);
450    elm_box_homogeneous_set(box, homo);
451 }
452
453 void
454 test_box_homo(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
455 {
456    Evas_Object *win;
457    Evas_Object *box, *o_bg;
458    Evas_Object *rd;
459    char buf[PATH_MAX];
460
461    win = elm_win_util_standard_add("box-homogeneous", "Box Homogeneous");
462    elm_win_autodel_set(win, EINA_TRUE);
463
464    box = elm_box_add(win);
465    evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
466    elm_win_resize_object_add(win, box);
467    evas_object_show(box);
468
469    o_bg = elm_bg_add(win);
470    snprintf(buf, sizeof(buf), "%s/images/twofish.jpg", elm_app_data_dir_get());
471    elm_bg_file_set(o_bg, buf, NULL);
472    evas_object_size_hint_weight_set(o_bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
473    evas_object_size_hint_align_set(o_bg, EVAS_HINT_FILL, EVAS_HINT_FILL);
474    elm_box_pack_end(box, o_bg);
475
476    rd = elm_check_add(win);
477    elm_object_text_set(rd, "Homogeneous");
478    evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
479    evas_object_smart_callback_add(rd, "changed", _cb_check_changed, box);
480    elm_box_pack_end(box, rd);
481    evas_object_show(rd);
482    evas_object_show(o_bg);
483
484    evas_object_resize(win, 320, 320);
485    evas_object_show(win);
486 }
487
488 typedef struct
489 {
490    Eina_List *transitions;
491    Evas_Object *box;
492    Evas_Object_Box_Layout last_layout;
493 } Transitions_Data;
494
495 static void
496 _test_box_transition_change(void *data)
497 {
498    Transitions_Data *tdata = data;
499    Elm_Box_Transition *layout_data;
500    Evas_Object_Box_Layout next_layout;
501
502    if (!data) return;
503    next_layout = eina_list_data_get(tdata->transitions);
504    layout_data = elm_box_transition_new(2.0, tdata->last_layout,
505                                         NULL, NULL, next_layout, NULL, NULL,
506                                         _test_box_transition_change, tdata);
507    elm_box_layout_set(tdata->box, elm_box_layout_transition, layout_data, elm_box_transition_free);
508    tdata->last_layout = next_layout;
509
510    tdata->transitions = eina_list_demote_list(tdata->transitions, tdata->transitions);
511 }
512
513 static void
514 _win_del(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
515 {
516    Transitions_Data *tdata = data;
517    if (!data) return;
518    free(tdata);
519 }
520
521 void
522 test_box_transition(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
523 {
524    Evas_Object *win, *bg, *bx, *bt;
525    Transitions_Data *tdata;
526
527    win = elm_win_add(NULL, "box-transition", ELM_WIN_BASIC);
528    elm_win_title_set(win, "Box Transition");
529    elm_win_autodel_set(win, EINA_TRUE);
530
531    bg = elm_bg_add(win);
532    elm_win_resize_object_add(win, bg);
533    evas_object_size_hint_weight_set(bg, 1.0, 1.0);
534    evas_object_show(bg);
535
536    bx = elm_box_add(win);
537    elm_win_resize_object_add(win, bx);
538    evas_object_size_hint_weight_set(bx, 1.0, 1.0);
539    evas_object_show(bx);
540
541    bt = elm_button_add(win);
542    elm_object_text_set(bt, "Button 1");
543    evas_object_size_hint_weight_set(bt, 1.0, 1.0);
544    evas_object_size_hint_align_set(bt, -1.0, -1.0);
545    evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
546    elm_box_pack_end(bx, bt);
547    evas_object_resize(bt, 100, 100);
548    evas_object_show(bt);
549
550    bt = elm_button_add(win);
551    elm_object_text_set(bt, "Button 2");
552    evas_object_size_hint_weight_set(bt, 1.0, 1.0);
553    evas_object_size_hint_align_set(bt, -1.0, -1.0);
554    evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
555    elm_box_pack_end(bx, bt);
556    evas_object_resize(bt, 100, 100);
557    evas_object_show(bt);
558
559    bt = elm_button_add(win);
560    elm_object_text_set(bt, "Button 3");
561    evas_object_size_hint_weight_set(bt, 1.0, 1.0);
562    evas_object_size_hint_align_set(bt, -1.0, -1.0);
563    evas_object_smart_callback_add(bt, "clicked", _del_cb, bx);
564    elm_box_pack_end(bx, bt);
565    evas_object_resize(bt, 100, 100);
566    evas_object_show(bt);
567
568    tdata = calloc(1, sizeof(Transitions_Data));
569    tdata->box = bx;
570    tdata->last_layout = evas_object_box_layout_horizontal;
571    tdata->transitions = eina_list_append(tdata->transitions,
572          evas_object_box_layout_vertical);
573    tdata->transitions = eina_list_append(tdata->transitions,
574          evas_object_box_layout_horizontal);
575    tdata->transitions = eina_list_append(tdata->transitions,
576          evas_object_box_layout_stack);
577    tdata->transitions = eina_list_append(tdata->transitions,
578          evas_object_box_layout_homogeneous_vertical);
579    tdata->transitions = eina_list_append(tdata->transitions,
580          evas_object_box_layout_homogeneous_horizontal);
581    tdata->transitions = eina_list_append(tdata->transitions,
582          evas_object_box_layout_flow_vertical);
583    tdata->transitions = eina_list_append(tdata->transitions,
584          evas_object_box_layout_flow_horizontal);
585    tdata->transitions = eina_list_append(tdata->transitions,
586          evas_object_box_layout_stack);
587
588    evas_object_resize(win, 300, 300);
589    evas_object_resize(bx, 300, 300);
590    evas_object_smart_callback_add(win, "delete,request", _win_del, tdata);
591    evas_object_show(win);
592    elm_box_layout_set(bx, evas_object_box_layout_horizontal, NULL, NULL);
593    _test_box_transition_change(tdata);
594 }
595 #endif