svn update: 48945 (latest:48959)
[framework/uifw/elementary.git] / src / bin / test_flip.c
1 #include <Elementary.h>
2 #ifndef ELM_LIB_QUICKLAUNCH
3
4 void
5 my_fl_1(void *data, Evas_Object *obj, void *event_info)
6 {
7    Evas_Object *fl = data;
8    elm_flip_go(fl, ELM_FLIP_ROTATE_Y_CENTER_AXIS);
9 }
10
11 void
12 my_fl_2(void *data, Evas_Object *obj, void *event_info)
13 {
14    Evas_Object *fl = data;
15    elm_flip_go(fl, ELM_FLIP_ROTATE_X_CENTER_AXIS);
16 }
17
18 void
19 my_fl_3(void *data, Evas_Object *obj, void *event_info)
20 {
21    Evas_Object *fl = data;
22    elm_flip_go(fl, ELM_FLIP_ROTATE_XZ_CENTER_AXIS);
23 }
24
25 void
26 my_fl_4(void *data, Evas_Object *obj, void *event_info)
27 {
28    Evas_Object *fl = data;
29    elm_flip_go(fl, ELM_FLIP_ROTATE_YZ_CENTER_AXIS);
30 }
31
32 void
33 test_flip(void *data, Evas_Object *obj, void *event_info)
34 {
35    Evas_Object *win, *bg, *bx, *bx2, *fl, *o, *bt, *ly;
36    char buf[PATH_MAX];
37    
38    win = elm_win_add(NULL, "flip", ELM_WIN_BASIC);
39    elm_win_title_set(win, "Flip");
40    elm_win_autodel_set(win, 1);
41
42    bg = elm_bg_add(win);
43    elm_win_resize_object_add(win, bg);
44    evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
45    evas_object_show(bg);
46
47    bx = elm_box_add(win);
48    evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
49    elm_win_resize_object_add(win, bx);
50    evas_object_show(bx);
51    
52    fl = elm_flip_add(win);
53    evas_object_size_hint_align_set(fl, EVAS_HINT_FILL, EVAS_HINT_FILL);
54    evas_object_size_hint_weight_set(fl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
55    elm_box_pack_end(bx, fl);
56
57    o = elm_bg_add(win);
58    evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL);
59    evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
60    snprintf(buf, sizeof(buf), "%s/images/%s", PACKAGE_DATA_DIR, "sky_01.jpg");
61    elm_bg_file_set(o, buf, NULL);
62    elm_flip_content_front_set(fl, o);
63    evas_object_show(o);
64    
65    ly = elm_layout_add(win);
66    snprintf(buf, sizeof(buf), "%s/objects/test.edj", PACKAGE_DATA_DIR);
67    elm_layout_file_set(ly, buf, "layout");
68    evas_object_size_hint_align_set(ly, EVAS_HINT_FILL, EVAS_HINT_FILL);
69    evas_object_size_hint_weight_set(ly, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
70    elm_flip_content_back_set(fl, ly);
71    evas_object_show(ly);
72
73    bt = elm_button_add(win);
74    elm_button_label_set(bt, "Button 1");
75    elm_layout_content_set(ly, "element1", bt);
76    evas_object_show(bt);
77
78    bt = elm_button_add(win);
79    elm_button_label_set(bt, "Button 2");
80    elm_layout_content_set(ly, "element2", bt);
81    evas_object_show(bt);
82
83    bt = elm_button_add(win);
84    elm_button_label_set(bt, "Button 3");
85    elm_layout_content_set(ly, "element3", bt);
86    evas_object_show(bt);
87
88    evas_object_show(fl);
89
90    bx2 = elm_box_add(win);
91    elm_box_horizontal_set(bx2, 1);
92    evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
93    evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
94    
95    bt = elm_button_add(win);
96    elm_button_label_set(bt, "1");
97    evas_object_smart_callback_add(bt, "clicked", my_fl_1, fl);
98    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
99    evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
100    elm_box_pack_end(bx2, bt);
101    evas_object_show(bt);
102    
103    bt = elm_button_add(win);
104    elm_button_label_set(bt, "2");
105    evas_object_smart_callback_add(bt, "clicked", my_fl_2, fl);
106    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
107    evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
108    elm_box_pack_end(bx2, bt);
109    evas_object_show(bt);
110    
111    bt = elm_button_add(win);
112    elm_button_label_set(bt, "3");
113    evas_object_smart_callback_add(bt, "clicked", my_fl_3, fl);
114    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
115    evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
116    elm_box_pack_end(bx2, bt);
117    evas_object_show(bt);
118    
119    bt = elm_button_add(win);
120    elm_button_label_set(bt, "4");
121    evas_object_smart_callback_add(bt, "clicked", my_fl_4, fl);
122    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
123    evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
124    elm_box_pack_end(bx2, bt);
125    evas_object_show(bt);
126    
127    elm_box_pack_end(bx, bx2);
128    evas_object_show(bx2);
129
130    evas_object_resize(win, 320, 480);
131    evas_object_show(win);
132 }
133
134 void
135 test_flip2(void *data, Evas_Object *obj, void *event_info)
136 {
137    Evas_Object *win, *bg, *bx, *bx2, *fl, *o, *bt, *tb, *ic, *li;
138    char buf[PATH_MAX];
139    
140    win = elm_win_add(NULL, "flip2", ELM_WIN_BASIC);
141    elm_win_title_set(win, "Flip 2");
142    elm_win_autodel_set(win, 1);
143
144    bg = elm_bg_add(win);
145    snprintf(buf, sizeof(buf), "%s/images/%s", PACKAGE_DATA_DIR, "sky_01.jpg");
146    elm_bg_file_set(bg, buf, NULL);
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    evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
153    elm_win_resize_object_add(win, bx);
154    evas_object_show(bx);
155    
156    fl = elm_flip_add(win);
157    evas_object_size_hint_align_set(fl, EVAS_HINT_FILL, EVAS_HINT_FILL);
158    evas_object_size_hint_weight_set(fl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
159    elm_box_pack_end(bx, fl);
160
161    o = elm_box_add(win);
162    evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL);
163    evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
164    
165    tb = elm_toolbar_add(win);
166    elm_toolbar_homogenous_set(tb, 0);
167    evas_object_size_hint_weight_set(tb, 0.0, 0.0);
168    evas_object_size_hint_align_set(tb, EVAS_HINT_FILL, 0.0);
169
170    ic = elm_icon_add(win);
171    snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
172    elm_icon_file_set(ic, buf, NULL);
173    elm_toolbar_item_add(tb, ic, "Hello", NULL, NULL);
174    
175    ic = elm_icon_add(win);
176    snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
177    elm_icon_file_set(ic, buf, NULL);
178    elm_toolbar_item_add(tb, ic, "Out", NULL, NULL);
179    
180    ic = elm_icon_add(win);
181    snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
182    elm_icon_file_set(ic, buf, NULL);
183    elm_toolbar_item_add(tb, ic, "There", NULL, NULL);
184    
185    ic = elm_icon_add(win);
186    snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
187    elm_icon_file_set(ic, buf, NULL);
188    elm_toolbar_item_add(tb, ic, "World", NULL, NULL);
189    
190    elm_box_pack_end(o, tb);
191    evas_object_show(tb);
192    
193    li = elm_list_add(win);
194    evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL);
195    evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
196    
197    elm_list_item_append(li, "This is a list", NULL, NULL,  NULL, NULL);
198    elm_list_item_append(li, "Second item", NULL, NULL,  NULL, NULL);
199    elm_list_item_append(li, "3rd", NULL, NULL,  NULL, NULL);
200    elm_list_item_append(li, "Fourth", NULL, NULL,  NULL, NULL);
201    elm_list_item_append(li, "Number five is alive!", NULL, NULL,  NULL, NULL);
202    elm_list_item_append(li, "The quick brown fox jumps over the lazy dog", NULL, NULL,  NULL, NULL);
203    elm_list_item_append(li, "Booyah", NULL, NULL,  NULL, NULL);
204    elm_list_item_append(li, "And another item", NULL, NULL,  NULL, NULL);
205    elm_list_item_append(li, "More of them", NULL, NULL,  NULL, NULL);
206    elm_list_item_append(li, "Get with it", NULL, NULL,  NULL, NULL);
207    
208    elm_list_go(li);
209    
210    elm_box_pack_end(o, li);
211    evas_object_show(li);
212    
213    elm_flip_content_front_set(fl, o);
214    evas_object_show(o);
215    
216    li = elm_list_add(win);
217    evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL);
218    evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
219    
220    elm_list_item_append(li, "This is a list", NULL, NULL,  NULL, NULL);
221    elm_list_item_append(li, "Second item", NULL, NULL,  NULL, NULL);
222    elm_list_item_append(li, "3rd", NULL, NULL,  NULL, NULL);
223    
224    elm_list_go(li);
225    
226    elm_flip_content_back_set(fl, li);
227    evas_object_show(li);
228
229    evas_object_show(fl);
230
231    bx2 = elm_box_add(win);
232    elm_box_horizontal_set(bx2, 1);
233    evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
234    evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
235    
236    bt = elm_button_add(win);
237    elm_button_label_set(bt, "1");
238    evas_object_smart_callback_add(bt, "clicked", my_fl_1, fl);
239    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
240    evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
241    elm_box_pack_end(bx2, bt);
242    evas_object_show(bt);
243    
244    bt = elm_button_add(win);
245    elm_button_label_set(bt, "2");
246    evas_object_smart_callback_add(bt, "clicked", my_fl_2, fl);
247    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
248    evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
249    elm_box_pack_end(bx2, bt);
250    evas_object_show(bt);
251    
252    bt = elm_button_add(win);
253    elm_button_label_set(bt, "3");
254    evas_object_smart_callback_add(bt, "clicked", my_fl_3, fl);
255    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
256    evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
257    elm_box_pack_end(bx2, bt);
258    evas_object_show(bt);
259    
260    bt = elm_button_add(win);
261    elm_button_label_set(bt, "4");
262    evas_object_smart_callback_add(bt, "clicked", my_fl_4, fl);
263    evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
264    evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
265    elm_box_pack_end(bx2, bt);
266    evas_object_show(bt);
267    
268    elm_box_pack_end(bx, bx2);
269    evas_object_show(bx2);
270
271    evas_object_resize(win, 320, 480);
272    evas_object_show(win);
273 }
274 #endif