1 #include <Elementary.h>
3 # include "elementary_config.h"
5 #ifndef ELM_LIB_QUICKLAUNCH
10 _cb_size_radio_changed(void *data, Evas_Object *obj, void *event __UNUSED__)
12 Evas_Object *o_bg = data;
14 size = elm_radio_value_get((Evas_Object *)obj);
15 elm_bg_load_size_set(o_bg, size, size);
19 >>>>>>> remotes/origin/upstream
20 _cb_radio_changed(void *data, Evas_Object *obj, void *event __UNUSED__)
22 Evas_Object *o_bg = data;
24 elm_bg_option_set(o_bg, elm_radio_value_get((Evas_Object *)obj));
28 _cb_overlay_changed(void *data, Evas_Object *obj, void *event __UNUSED__)
30 Evas_Object *o_bg = data;
32 if (elm_check_state_get(obj))
34 Evas_Object *parent, *over;
37 snprintf(buff, sizeof(buff), "%s/objects/test.edj", elm_app_data_dir_get());
38 parent = elm_object_parent_widget_get(o_bg);
39 over = edje_object_add(evas_object_evas_get(parent));
40 edje_object_file_set(over, buff, "bg_overlay");
41 elm_object_part_content_set(o_bg, "overlay", over);
44 elm_object_part_content_set(o_bg, "overlay", NULL);
48 _cb_color_changed(void *data, Evas_Object *obj, void *event __UNUSED__)
50 Evas_Object *o_bg = data;
53 val = elm_spinner_value_get(obj);
55 elm_bg_color_set(o_bg, 255, 255, 255);
57 elm_bg_color_set(o_bg, 255, 0, 0);
59 elm_bg_color_set(o_bg, 0, 0, 255);
61 elm_bg_color_set(o_bg, 0, 255, 0);
65 test_bg_plain(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
67 Evas_Object *win, *bg;
69 win = elm_win_add(NULL, "bg-plain", ELM_WIN_BASIC);
70 elm_win_title_set(win, "Bg Plain");
71 elm_win_autodel_set(win, EINA_TRUE);
74 /* allow bg to expand in x & y */
75 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
76 elm_win_resize_object_add(win, bg);
79 /* set size hints. a minimum size for the bg. this should propagate back
80 * to the window thus limiting its size based off the bg as the bg is one
81 * of the window's resize objects. */
82 evas_object_size_hint_min_set(bg, 160, 160);
83 /* and set a maximum size. not needed very often. normally used together
84 * with evas_object_size_hint_min_set() at the same size to make a
85 * window not resizable */
86 evas_object_size_hint_max_set(bg, 640, 640);
87 /* and now just resize the window to a size you want. normally widgets
88 * will determine the initial size though */
89 evas_object_resize(win, 320, 320);
90 /* and show the window */
91 evas_object_show(win);
95 test_bg_image(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
97 Evas_Object *win, *bg;
100 Evas_Object *box, *hbox, *o_bg;
101 Evas_Object *rd, *rdg;
102 >>>>>>> remotes/origin/upstream
105 win = elm_win_add(NULL, "bg-image", ELM_WIN_BASIC);
106 elm_win_title_set(win, "Bg Image");
107 elm_win_autodel_set(win, EINA_TRUE);
109 bg = elm_bg_add(win);
111 snprintf(buf, sizeof(buf), "%s/images/plant_01.jpg", elm_app_data_dir_get());
112 elm_bg_file_set(bg, buf, NULL);
114 >>>>>>> remotes/origin/upstream
115 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
116 elm_win_resize_object_add(win, bg);
117 evas_object_show(bg);
121 box = elm_box_add(win);
122 evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
123 elm_win_resize_object_add(win, box);
124 evas_object_show(box);
126 o_bg = elm_bg_add(win);
127 snprintf(buf, sizeof(buf), "%s/images/plant_01.jpg", elm_app_data_dir_get());
128 elm_bg_file_set(o_bg, buf, NULL);
129 evas_object_size_hint_weight_set(o_bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
130 evas_object_size_hint_align_set(o_bg, EVAS_HINT_FILL, EVAS_HINT_FILL);
131 elm_box_pack_end(box, o_bg);
133 hbox = elm_box_add(win);
134 elm_box_horizontal_set(hbox, EINA_TRUE);
135 evas_object_size_hint_weight_set(hbox, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
136 evas_object_size_hint_align_set(hbox, EVAS_HINT_FILL, EVAS_HINT_FILL);
138 rd = elm_radio_add(win);
139 elm_radio_state_value_set(rd, 50);
140 elm_object_text_set(rd, "50 x 50");
141 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
142 evas_object_smart_callback_add(rd, "changed", _cb_size_radio_changed, o_bg);
143 elm_box_pack_end(hbox, rd);
144 evas_object_show(rd);
147 rd = elm_radio_add(win);
148 elm_radio_state_value_set(rd, 100);
149 elm_radio_group_add(rd, rdg);
150 elm_object_text_set(rd, "100 x 100");
151 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
152 evas_object_smart_callback_add(rd, "changed", _cb_size_radio_changed, o_bg);
153 elm_box_pack_end(hbox, rd);
154 evas_object_show(rd);
156 rd = elm_radio_add(win);
157 elm_radio_state_value_set(rd, 200);
158 elm_radio_group_add(rd, rdg);
159 elm_object_text_set(rd, "200 x 200");
160 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
161 evas_object_smart_callback_add(rd, "changed", _cb_size_radio_changed, o_bg);
162 elm_box_pack_end(hbox, rd);
163 evas_object_show(rd);
165 elm_radio_value_set(rdg, 200);
167 elm_box_pack_end(box, hbox);
168 evas_object_show(hbox);
170 evas_object_show(o_bg);
171 >>>>>>> remotes/origin/upstream
172 evas_object_size_hint_min_set(bg, 160, 160);
173 evas_object_size_hint_max_set(bg, 640, 640);
174 evas_object_resize(win, 320, 320);
175 evas_object_show(win);
179 test_bg_options(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
181 Evas_Object *win, *bg;
182 Evas_Object *box, *hbox, *o_bg;
183 Evas_Object *rd, *rdg;
186 win = elm_win_add(NULL, "bg-options", ELM_WIN_BASIC);
187 elm_win_title_set(win, "Bg Options");
188 elm_win_autodel_set(win, EINA_TRUE);
190 bg = elm_bg_add(win);
191 evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
192 elm_win_resize_object_add(win, bg);
193 evas_object_show(bg);
195 box = elm_box_add(win);
196 evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
197 elm_win_resize_object_add(win, box);
198 evas_object_show(box);
200 o_bg = elm_bg_add(win);
201 snprintf(buf, sizeof(buf), "%s/images/plant_01.jpg", elm_app_data_dir_get());
202 elm_bg_file_set(o_bg, buf, NULL);
203 evas_object_size_hint_weight_set(o_bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
204 evas_object_size_hint_align_set(o_bg, EVAS_HINT_FILL, EVAS_HINT_FILL);
205 elm_box_pack_end(box, o_bg);
206 evas_object_show(o_bg);
208 hbox = elm_box_add(win);
209 elm_box_horizontal_set(hbox, EINA_TRUE);
210 evas_object_size_hint_weight_set(hbox, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
211 evas_object_size_hint_align_set(hbox, EVAS_HINT_FILL, EVAS_HINT_FILL);
213 rd = elm_radio_add(win);
214 elm_radio_state_value_set(rd, ELM_BG_OPTION_CENTER);
215 elm_object_text_set(rd, "Center");
216 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
217 evas_object_smart_callback_add(rd, "changed", _cb_radio_changed, o_bg);
218 elm_box_pack_end(hbox, rd);
219 evas_object_show(rd);
222 rd = elm_radio_add(win);
223 elm_radio_state_value_set(rd, ELM_BG_OPTION_SCALE);
224 elm_radio_group_add(rd, rdg);
225 elm_object_text_set(rd, "Scale");
226 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
227 evas_object_smart_callback_add(rd, "changed", _cb_radio_changed, o_bg);
228 elm_box_pack_end(hbox, rd);
229 evas_object_show(rd);
231 rd = elm_radio_add(win);
232 elm_radio_state_value_set(rd, ELM_BG_OPTION_STRETCH);
233 elm_radio_group_add(rd, rdg);
234 elm_object_text_set(rd, "Stretch");
235 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
236 evas_object_smart_callback_add(rd, "changed", _cb_radio_changed, o_bg);
237 elm_box_pack_end(hbox, rd);
238 evas_object_show(rd);
240 rd = elm_radio_add(win);
241 elm_radio_state_value_set(rd, ELM_BG_OPTION_TILE);
242 elm_radio_group_add(rd, rdg);
243 elm_object_text_set(rd, "Tile");
244 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
245 evas_object_smart_callback_add(rd, "changed", _cb_radio_changed, o_bg);
246 elm_box_pack_end(hbox, rd);
247 evas_object_show(rd);
249 elm_radio_value_set(rdg, ELM_BG_OPTION_SCALE);
251 rd = elm_check_add(win);
252 elm_object_text_set(rd, "Show Overlay");
253 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
254 evas_object_smart_callback_add(rd, "changed", _cb_overlay_changed, o_bg);
255 elm_box_pack_end(hbox, rd);
256 evas_object_show(rd);
258 /* color choices ... this is ghetto, but we don't have a 'colorpicker'
260 rd = elm_spinner_add(win);
261 elm_object_style_set(rd, "vertical");
262 elm_spinner_min_max_set(rd, 1, 4);
263 elm_spinner_label_format_set(rd, "%.0f");
264 elm_spinner_editable_set(rd, EINA_FALSE);
265 elm_spinner_special_value_add(rd, 1, "White");
266 elm_spinner_special_value_add(rd, 2, "Red");
267 elm_spinner_special_value_add(rd, 3, "Blue");
268 elm_spinner_special_value_add(rd, 4, "Green");
269 evas_object_size_hint_weight_set(rd, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
270 evas_object_size_hint_align_set(rd, EVAS_HINT_FILL, EVAS_HINT_FILL);
271 evas_object_smart_callback_add(rd, "changed", _cb_color_changed, o_bg);
272 elm_box_pack_end(hbox, rd);
273 evas_object_show(rd);
275 elm_box_pack_end(box, hbox);
276 evas_object_show(hbox);
278 evas_object_size_hint_min_set(bg, 160, 160);
279 evas_object_size_hint_max_set(bg, 640, 640);
280 evas_object_resize(win, 320, 320);
281 evas_object_show(win);