1 #include <Elementary.h>
2 #ifndef ELM_LIB_QUICKLAUNCH
3 typedef struct _Testitem
5 Elm_Genlist_Item *item;
9 static int rotate_with_resize = 0;
12 my_bt_38_alpha_on(void *data, Evas_Object *obj, void *event_info)
14 Evas_Object *win = data;
15 Evas_Object *bg = evas_object_data_get(win, "bg");
17 elm_win_alpha_set(win, 1);
21 my_bt_38_alpha_off(void *data, Evas_Object *obj, void *event_info)
23 Evas_Object *win = data;
24 Evas_Object *bg = evas_object_data_get(win, "bg");
26 elm_win_alpha_set(win, 0);
30 my_ck_38_resize(void *data, Evas_Object *obj, void *event_info)
32 // Evas_Object *win = data;
33 rotate_with_resize = elm_check_state_get(obj);
37 my_bt_38_rot_0(void *data, Evas_Object *obj, void *event_info)
39 Evas_Object *win = data;
40 if (rotate_with_resize)
41 elm_win_rotation_with_resize_set(win, 0);
43 elm_win_rotation_set(win, 0);
47 my_bt_38_rot_90(void *data, Evas_Object *obj, void *event_info)
49 Evas_Object *win = data;
50 if (rotate_with_resize)
51 elm_win_rotation_with_resize_set(win, 90);
53 elm_win_rotation_set(win, 90);
57 my_bt_38_rot_180(void *data, Evas_Object *obj, void *event_info)
59 Evas_Object *win = data;
60 if (rotate_with_resize)
61 elm_win_rotation_with_resize_set(win, 180);
63 elm_win_rotation_set(win, 180);
67 my_bt_38_rot_270(void *data, Evas_Object *obj, void *event_info)
69 Evas_Object *win = data;
70 if (rotate_with_resize)
71 elm_win_rotation_with_resize_set(win, 270);
73 elm_win_rotation_set(win, 270);
77 my_win_move(void *data, Evas_Object *obj, void *event_info)
80 elm_win_screen_position_get(obj, &x, &y);
81 printf("MOVE - win geom: %4i %4i\n", x, y);
85 _win_resize(void *data, Evas *e, Evas_Object *obj, void *event_info)
88 evas_object_geometry_get(obj, NULL, NULL, &w, &h);
89 printf("RESIZE - win geom: %4ix%4i\n", w, h);
93 _win_foc_in(void *data, Evas *e, void *event_info)
99 _win_foc_out(void *data, Evas *e, void *event_info)
105 _close_win(void *data, Evas_Object *obj, void *event_info)
107 evas_object_del(data);
111 test_win_state(void *data, Evas_Object *obj, void *event_info)
113 Evas_Object *win, *bg, *sl, *bx, *bx2, *bt, *ck;
115 win = elm_win_add(NULL, "window-state", ELM_WIN_BASIC);
116 elm_win_title_set(win, "Window States");
117 evas_object_smart_callback_add(win, "moved", my_win_move, NULL);
118 evas_object_event_callback_add(win, EVAS_CALLBACK_RESIZE, _win_resize, NULL);
119 evas_event_callback_add(evas_object_evas_get(win), EVAS_CALLBACK_CANVAS_FOCUS_IN, _win_foc_in, NULL);
120 evas_event_callback_add(evas_object_evas_get(win), EVAS_CALLBACK_CANVAS_FOCUS_OUT, _win_foc_out, NULL);
121 elm_win_autodel_set(win, 1);
123 bg = elm_bg_add(win);
124 elm_win_resize_object_add(win, bg);
125 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
126 evas_object_show(bg);
127 evas_object_data_set(win, "bg", bg);
129 bx = elm_box_add(win);
130 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
131 elm_win_resize_object_add(win, bx);
132 evas_object_show(bx);
134 bx2 = elm_box_add(win);
135 elm_box_horizontal_set(bx2, 1);
136 elm_box_homogenous_set(bx2, 1);
137 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
138 evas_object_size_hint_fill_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
140 bt = elm_button_add(win);
141 elm_button_label_set(bt, "Alpha On");
142 evas_object_smart_callback_add(bt, "clicked", my_bt_38_alpha_on, win);
143 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
144 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
145 elm_box_pack_end(bx2, bt);
146 evas_object_show(bt);
148 bt = elm_button_add(win);
149 elm_button_label_set(bt, "Alpha Off");
150 evas_object_smart_callback_add(bt, "clicked", my_bt_38_alpha_off, win);
151 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
152 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
153 elm_box_pack_end(bx2, bt);
154 evas_object_show(bt);
156 elm_box_pack_end(bx, bx2);
157 evas_object_show(bx2);
159 bx2 = elm_box_add(win);
160 elm_box_horizontal_set(bx2, 1);
161 elm_box_homogenous_set(bx2, 1);
162 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
163 evas_object_size_hint_fill_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
165 sl = elm_slider_add(win);
166 elm_slider_label_set(sl, "Test");
167 elm_slider_span_size_set(sl, 100);
168 evas_object_size_hint_align_set(sl, 0.5, 0.5);
169 evas_object_size_hint_weight_set(sl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
170 elm_slider_indicator_format_set(sl, "%3.0f");
171 elm_slider_min_max_set(sl, 50, 150);
172 elm_slider_value_set(sl, 50);
173 elm_slider_inverted_set(sl, 1);
174 elm_box_pack_end(bx2, sl);
175 evas_object_show(sl);
177 elm_box_pack_end(bx, bx2);
178 evas_object_show(bx2);
180 ck = elm_check_add(win);
181 elm_check_label_set(ck, "resize");
182 elm_check_state_set(ck, rotate_with_resize);
183 evas_object_smart_callback_add(ck, "changed", my_ck_38_resize, win);
184 evas_object_size_hint_weight_set(ck, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
185 evas_object_size_hint_align_set(ck, 0.02, 0.99);
186 evas_object_show(ck);
187 elm_box_pack_end(bx, ck);
189 bx2 = elm_box_add(win);
190 elm_box_horizontal_set(bx2, 1);
191 elm_box_homogenous_set(bx2, 1);
192 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
193 evas_object_size_hint_fill_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
195 bt = elm_button_add(win);
196 elm_button_label_set(bt, "Rot 0");
197 evas_object_smart_callback_add(bt, "clicked", my_bt_38_rot_0, win);
198 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
199 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
200 elm_box_pack_end(bx2, bt);
201 evas_object_show(bt);
203 bt = elm_button_add(win);
204 elm_button_label_set(bt, "Rot 90");
205 evas_object_smart_callback_add(bt, "clicked", my_bt_38_rot_90, win);
206 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
207 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
208 elm_box_pack_end(bx2, bt);
209 evas_object_show(bt);
211 bt = elm_button_add(win);
212 elm_button_label_set(bt, "Rot 180");
213 evas_object_smart_callback_add(bt, "clicked", my_bt_38_rot_180, win);
214 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
215 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
216 elm_box_pack_end(bx2, bt);
217 evas_object_show(bt);
219 bt = elm_button_add(win);
220 elm_button_label_set(bt, "Rot 270");
221 evas_object_smart_callback_add(bt, "clicked", my_bt_38_rot_270, win);
222 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
223 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
224 elm_box_pack_end(bx2, bt);
225 evas_object_show(bt);
227 elm_box_pack_end(bx, bx2);
228 evas_object_show(bx2);
230 evas_object_resize(win, 280, 400);
231 evas_object_show(win);
235 test_win_state2(void *data, Evas_Object *obj, void *event_info)
237 Evas_Object *win, *bg, *sl, *bx, *bx2, *bt, *ck;
240 win = elm_win_add(NULL, "window-state2", ELM_WIN_BASIC);
241 elm_win_override_set(win, 1);
242 evas_object_smart_callback_add(win, "moved", my_win_move, NULL);
243 evas_object_event_callback_add(win, EVAS_CALLBACK_RESIZE, _win_resize, NULL);
244 elm_win_title_set(win, "Window States 2");
245 elm_win_autodel_set(win, 1);
247 bg = elm_bg_add(win);
248 snprintf(buf, sizeof(buf), "%s/images/sky_02.jpg", PACKAGE_DATA_DIR);
249 elm_bg_file_set(bg, buf, NULL);
250 elm_win_resize_object_add(win, bg);
251 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
252 evas_object_show(bg);
253 evas_object_data_set(win, "bg", bg);
255 bx = elm_box_add(win);
256 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
257 elm_win_resize_object_add(win, bx);
258 evas_object_show(bx);
260 bx2 = elm_box_add(win);
261 elm_box_horizontal_set(bx2, 1);
262 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
263 evas_object_size_hint_fill_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
265 bt = elm_button_add(win);
266 elm_button_label_set(bt, "Alpha On");
267 evas_object_smart_callback_add(bt, "clicked", my_bt_38_alpha_on, win);
268 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
269 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
270 elm_box_pack_end(bx2, bt);
271 evas_object_show(bt);
273 bt = elm_button_add(win);
274 elm_button_label_set(bt, "Alpha Off");
275 evas_object_smart_callback_add(bt, "clicked", my_bt_38_alpha_off, win);
276 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
277 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
278 elm_box_pack_end(bx2, bt);
279 evas_object_show(bt);
281 bt = elm_button_add(win);
282 elm_button_label_set(bt, "Close");
283 evas_object_smart_callback_add(bt, "clicked", _close_win, win);
284 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
285 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
286 elm_box_pack_end(bx2, bt);
287 evas_object_show(bt);
289 elm_box_pack_end(bx, bx2);
290 evas_object_show(bx2);
292 bx2 = elm_box_add(win);
293 elm_box_horizontal_set(bx2, 1);
294 elm_box_homogenous_set(bx2, 1);
295 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
296 evas_object_size_hint_fill_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
298 sl = elm_slider_add(win);
299 elm_slider_label_set(sl, "Override Redirect");
300 elm_slider_span_size_set(sl, 100);
301 evas_object_size_hint_align_set(sl, 0.5, 0.5);
302 evas_object_size_hint_weight_set(sl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
303 elm_slider_indicator_format_set(sl, "%3.0f");
304 elm_slider_min_max_set(sl, 50, 150);
305 elm_slider_value_set(sl, 50);
306 elm_slider_inverted_set(sl, 1);
307 elm_box_pack_end(bx2, sl);
308 evas_object_show(sl);
310 elm_box_pack_end(bx, bx2);
311 evas_object_show(bx2);
313 ck = elm_check_add(win);
314 elm_check_label_set(ck, "resize");
315 elm_check_state_set(ck, rotate_with_resize);
316 evas_object_smart_callback_add(ck, "changed", my_ck_38_resize, win);
317 evas_object_size_hint_weight_set(ck, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
318 evas_object_size_hint_align_set(ck, 0.02, 0.99);
319 evas_object_show(ck);
320 elm_box_pack_end(bx, ck);
322 bx2 = elm_box_add(win);
323 elm_box_horizontal_set(bx2, 1);
324 elm_box_homogenous_set(bx2, 1);
325 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
326 evas_object_size_hint_fill_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
328 bt = elm_button_add(win);
329 elm_button_label_set(bt, "Rot 0");
330 evas_object_smart_callback_add(bt, "clicked", my_bt_38_rot_0, win);
331 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
332 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
333 elm_box_pack_end(bx2, bt);
334 evas_object_show(bt);
336 bt = elm_button_add(win);
337 elm_button_label_set(bt, "Rot 90");
338 evas_object_smart_callback_add(bt, "clicked", my_bt_38_rot_90, win);
339 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
340 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
341 elm_box_pack_end(bx2, bt);
342 evas_object_show(bt);
344 bt = elm_button_add(win);
345 elm_button_label_set(bt, "Rot 180");
346 evas_object_smart_callback_add(bt, "clicked", my_bt_38_rot_180, win);
347 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
348 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
349 elm_box_pack_end(bx2, bt);
350 evas_object_show(bt);
352 bt = elm_button_add(win);
353 elm_button_label_set(bt, "Rot 270");
354 evas_object_smart_callback_add(bt, "clicked", my_bt_38_rot_270, win);
355 evas_object_size_hint_fill_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
356 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
357 elm_box_pack_end(bx2, bt);
358 evas_object_show(bt);
360 elm_box_pack_end(bx, bx2);
361 evas_object_show(bx2);
363 evas_object_resize(win, 320, 480);
364 evas_object_show(win);