2 # include "elementary_config.h"
4 #include <Elementary.h>
5 #ifndef ELM_LIB_QUICKLAUNCH
7 my_entry_bt_1(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
9 Evas_Object *en = data;
10 elm_object_text_set(en, "");
14 my_entry_bt_2(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
16 Evas_Object *en = data;
17 const char *s = elm_object_text_get(en);
19 if (s) printf("%s\n", s);
20 printf("ENTRY PLAIN UTF8:\n");
23 s = elm_entry_markup_to_utf8(s);
33 my_entry_bt_3(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
35 Evas_Object *en = data;
36 const char *s = elm_entry_selection_get(en);
37 printf("SELECTION:\n");
38 if (s) printf("%s\n", s);
39 printf("SELECTION PLAIN UTF8:\n");
42 s = elm_entry_markup_to_utf8(s);
52 my_entry_bt_4(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
54 Evas_Object *en = data;
55 elm_entry_entry_insert(en, "Insert some <b>BOLD</> text");
59 my_entry_bt_5(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
61 Evas_Object *en = data;
62 elm_entry_scrollable_set(en, !elm_entry_scrollable_get(en));
66 my_entry_bt_6(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
68 Evas_Object *en = data;
69 static Elm_Wrap_Type wr = ELM_WRAP_NONE;
72 if (wr == ELM_WRAP_LAST) wr = ELM_WRAP_NONE;
73 printf("wr: %i\n", wr);
74 elm_entry_line_wrap_set(en, wr);
78 test_entry(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
80 Evas_Object *win, *bx, *bx2, *bt, *en;
83 win = elm_win_util_standard_add("entry", "Entry");
84 elm_win_autodel_set(win, EINA_TRUE);
86 bx = elm_box_add(win);
87 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
88 elm_win_resize_object_add(win, bx);
91 en = elm_entry_add(win);
92 elm_entry_line_wrap_set(en, ELM_WRAP_NONE);
93 snprintf(buf, sizeof(buf),
94 "This is an entry widget in this window that<br/>"
95 "uses markup <b>like this</> for styling and<br/>"
96 "formatting <em>like this</>, as well as<br/>"
97 "<a href=X><link>links in the text</></a>, so enter text<br/>"
98 "in here to edit it. By the way, links are<br/>"
99 "called <a href=anc-02>Anchors</a> so you will need<br/>"
100 "to refer to them this way.<br/>"
103 "Also you can stick in items with (relsize + ascent): "
104 "<item relsize=16x16 vsize=ascent href=emoticon/evil-laugh></item>"
106 "<item relsize=16x16 vsize=full href=emoticon/guilty-smile></item>"
107 " (to the left)<br/>"
109 "Also (size + ascent): "
110 "<item size=16x16 vsize=ascent href=emoticon/haha></item>"
112 "<item size=16x16 vsize=full href=emoticon/happy-panting></item>"
113 " (before this)<br/>"
115 "And as well (absize + ascent): "
116 "<item absize=64x64 vsize=ascent href=emoticon/knowing-grin></item>"
118 "<item absize=64x64 vsize=full href=emoticon/not-impressed></item>"
119 " or even paths to image files on disk too like: "
120 "<item absize=96x128 vsize=full href=file://%s/images/sky_01.jpg></item>"
122 , elm_app_data_dir_get()
124 elm_object_text_set(en, buf);
125 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
126 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
127 elm_box_pack_end(bx, en);
128 evas_object_show(en);
130 bx2 = elm_box_add(win);
131 elm_box_horizontal_set(bx2, EINA_TRUE);
132 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
133 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
135 bt = elm_button_add(win);
136 elm_object_text_set(bt, "Clr");
137 evas_object_smart_callback_add(bt, "clicked", my_entry_bt_1, en);
138 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
139 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
140 elm_box_pack_end(bx2, bt);
141 evas_object_propagate_events_set(bt, 0);
142 elm_object_focus_allow_set(bt, 0);
143 evas_object_show(bt);
145 bt = elm_button_add(win);
146 elm_object_text_set(bt, "Prnt");
147 evas_object_smart_callback_add(bt, "clicked", my_entry_bt_2, en);
148 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
149 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
150 elm_box_pack_end(bx2, bt);
151 evas_object_propagate_events_set(bt, 0);
152 elm_object_focus_allow_set(bt, 0);
153 evas_object_show(bt);
155 bt = elm_button_add(win);
156 elm_object_text_set(bt, "Sel");
157 evas_object_smart_callback_add(bt, "clicked", my_entry_bt_3, en);
158 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
159 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
160 elm_box_pack_end(bx2, bt);
161 evas_object_propagate_events_set(bt, 0);
162 elm_object_focus_allow_set(bt, 0);
163 evas_object_show(bt);
165 bt = elm_button_add(win);
166 elm_object_text_set(bt, "Ins");
167 evas_object_smart_callback_add(bt, "clicked", my_entry_bt_4, en);
168 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
169 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
170 elm_box_pack_end(bx2, bt);
171 evas_object_propagate_events_set(bt, 0);
172 elm_object_focus_allow_set(bt, 0);
173 evas_object_show(bt);
175 bt = elm_button_add(win);
176 elm_object_text_set(bt, "Scrl");
177 evas_object_smart_callback_add(bt, "clicked", my_entry_bt_5, en);
178 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
179 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
180 elm_box_pack_end(bx2, bt);
181 evas_object_propagate_events_set(bt, 0);
182 elm_object_focus_allow_set(bt, 0);
183 evas_object_show(bt);
185 bt = elm_button_add(win);
186 elm_object_text_set(bt, "Wr");
187 evas_object_smart_callback_add(bt, "clicked", my_entry_bt_6, en);
188 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
189 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
190 elm_box_pack_end(bx2, bt);
191 evas_object_propagate_events_set(bt, 0);
192 elm_object_focus_allow_set(bt, 0);
193 evas_object_show(bt);
195 elm_box_pack_end(bx, bx2);
196 evas_object_show(bx2);
198 elm_object_focus_set(en, EINA_TRUE);
199 evas_object_show(win);
203 my_scrolled_entry_bt_1(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
205 Evas_Object *en = data;
206 elm_object_text_set(en, "");
210 my_scrolled_entry_bt_2(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
212 Evas_Object *en = data;
213 const char *s = elm_object_text_get(en);
215 if (s) printf("%s\n", s);
216 printf("ENTRY PLAIN UTF8:\n");
219 s = elm_entry_markup_to_utf8(s);
229 my_scrolled_entry_bt_3(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
231 Evas_Object *en = data;
232 const char *s = elm_entry_selection_get(en);
233 printf("SELECTION:\n");
234 if (s) printf("%s\n", s);
235 printf("SELECTION PLAIN UTF8:\n");
238 s = elm_entry_markup_to_utf8(s);
248 my_scrolled_entry_bt_4(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
250 Evas_Object *en = data;
251 elm_entry_entry_insert(en, "Insert some <b>BOLD</> text");
255 my_scrolled_entry_bt_5(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
257 Evas_Object *en = data;
258 const char *s = elm_object_text_get(en);
259 printf("PASSWORD: '%s'\n", s ? s : "");
263 scrolled_anchor_test(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
265 Evas_Object *en = data;
266 elm_entry_entry_insert(en, "ANCHOR CLICKED");
270 test_entry_scrolled(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
272 Evas_Object *win, *bx, *bx2, *bt, *en, *en_p, *sp;
273 static Elm_Entry_Filter_Accept_Set digits_filter_data, digits_filter_data2;
274 static Elm_Entry_Filter_Limit_Size limit_filter_data, limit_filter_data2;
276 win = elm_win_util_standard_add("entry-scrolled", "Entry Scrolled");
277 elm_win_autodel_set(win, EINA_TRUE);
279 bx = elm_box_add(win);
280 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
281 elm_win_resize_object_add(win, bx);
282 evas_object_show(bx);
285 en = elm_entry_add(win);
286 elm_entry_scrollable_set(en, EINA_TRUE);
287 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0);
288 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.5);
289 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
290 elm_object_text_set(en, "Disabled entry");
291 elm_entry_single_line_set(en, EINA_TRUE);
292 elm_object_disabled_set(en, EINA_TRUE);
293 evas_object_show(en);
294 elm_box_pack_end(bx, en);
297 en = elm_entry_add(win);
298 elm_entry_scrollable_set(en, EINA_TRUE);
299 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0);
300 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.5);
301 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
302 elm_entry_password_set(en, EINA_TRUE);
303 elm_entry_single_line_set(en, EINA_TRUE);
304 elm_object_text_set(en, "Access denied, give up!");
305 elm_object_disabled_set(en, EINA_TRUE);
306 evas_object_show(en);
307 elm_box_pack_end(bx, en);
309 /* multi-line disable entry */
310 en = elm_entry_add(win);
311 elm_entry_scrollable_set(en, EINA_TRUE);
312 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
313 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
314 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_ON, ELM_SCROLLER_POLICY_ON);
315 elm_object_disabled_set(en, EINA_TRUE);
316 elm_entry_context_menu_item_add(en, "Hello", NULL, ELM_ICON_NONE, NULL, NULL);
317 elm_entry_context_menu_item_add(en, "World", NULL, ELM_ICON_NONE, NULL, NULL);
318 elm_object_text_set(en,
319 "Multi-line disabled entry widget :)<br/>"
320 "We can use markup <b>like this</> for styling and<br/>"
321 "formatting <em>like this</>, as well as<br/>"
322 "<a href=X><link>links in the text</></a>,"
323 "but it won't be editable or clickable.");
324 evas_object_show(en);
325 elm_box_pack_end(bx, en);
327 sp = elm_separator_add(win);
328 elm_separator_horizontal_set(sp, EINA_TRUE);
329 elm_box_pack_end(bx, sp);
330 evas_object_show(sp);
332 /* Single line selected entry */
333 en = elm_entry_add(win);
334 elm_entry_scrollable_set(en, EINA_TRUE);
335 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0);
336 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.5);
337 elm_object_text_set(en, "This is a single line");
338 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
339 elm_entry_single_line_set(en, EINA_TRUE);
340 elm_entry_select_all(en);
341 evas_object_show(en);
342 elm_box_pack_end(bx, en);
344 /* Only digits entry */
345 en = elm_entry_add(win);
346 elm_entry_scrollable_set(en, EINA_TRUE);
347 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0);
348 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.5);
349 elm_object_text_set(en, "01234");
350 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
351 elm_entry_single_line_set(en, EINA_TRUE);
352 evas_object_show(en);
353 elm_box_pack_end(bx, en);
355 digits_filter_data.accepted = "0123456789";
356 digits_filter_data.rejected = NULL;
357 elm_entry_markup_filter_append(en, elm_entry_filter_accept_set, &digits_filter_data);
359 /* No digits entry */
360 en = elm_entry_add(win);
361 elm_entry_scrollable_set(en, EINA_TRUE);
362 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0);
363 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.5);
364 elm_object_text_set(en, "No numbers here");
365 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
366 elm_entry_single_line_set(en, EINA_TRUE);
367 evas_object_show(en);
368 elm_box_pack_end(bx, en);
370 digits_filter_data2.accepted = NULL;
371 digits_filter_data2.rejected = "0123456789";
372 elm_entry_markup_filter_append(en, elm_entry_filter_accept_set, &digits_filter_data2);
374 /* Size limited entry */
375 en = elm_entry_add(win);
376 elm_entry_scrollable_set(en, EINA_TRUE);
377 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0);
378 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.5);
379 elm_object_text_set(en, "Just 20 chars");
380 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
381 elm_entry_single_line_set(en, EINA_TRUE);
382 evas_object_show(en);
383 elm_box_pack_end(bx, en);
385 limit_filter_data.max_char_count = 20;
386 limit_filter_data.max_byte_count = 0;
387 elm_entry_markup_filter_append(en, elm_entry_filter_limit_size, &limit_filter_data);
389 /* Byte size limited entry */
390 en = elm_entry_add(win);
391 elm_entry_scrollable_set(en, EINA_TRUE);
392 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0);
393 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.5);
394 elm_object_text_set(en, "And now only 30 bytes");
395 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
396 elm_entry_single_line_set(en, EINA_TRUE);
397 evas_object_show(en);
398 elm_box_pack_end(bx, en);
400 limit_filter_data2.max_char_count = 0;
401 limit_filter_data2.max_byte_count = 30;
402 elm_entry_markup_filter_append(en, elm_entry_filter_limit_size, &limit_filter_data2);
404 /* Single line password entry */
405 en_p = elm_entry_add(win);
406 elm_entry_scrollable_set(en_p, EINA_TRUE);
407 evas_object_size_hint_weight_set(en_p, EVAS_HINT_EXPAND, 0.0);
408 evas_object_size_hint_align_set(en_p, EVAS_HINT_FILL, 0.5);
409 elm_scroller_policy_set(en_p, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
410 elm_object_text_set(en_p, "Password here");
411 elm_entry_single_line_set(en_p, EINA_TRUE);
412 elm_entry_password_set(en_p, EINA_TRUE);
413 evas_object_show(en_p);
414 elm_box_pack_end(bx, en_p);
416 /* entry with icon/end widgets*/
417 en = elm_entry_add(win);
418 elm_entry_scrollable_set(en, EINA_TRUE);
419 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
420 elm_entry_single_line_set(en, EINA_TRUE);
421 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
422 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
423 bt = elm_icon_add(win);
424 elm_icon_standard_set(bt, "home");
425 evas_object_size_hint_min_set(bt, 48, 48);
426 evas_object_color_set(bt, 128, 0, 0, 128);
427 evas_object_show(bt);
428 elm_object_part_content_set(en, "icon", bt);
429 bt = elm_icon_add(win);
430 elm_icon_standard_set(bt, "delete");
431 evas_object_color_set(bt, 128, 0, 0, 128);
432 evas_object_size_hint_min_set(bt, 48, 48);
433 evas_object_show(bt);
434 elm_object_part_content_set(en, "end", bt);
435 elm_object_text_set(en, "entry with icon and end objects");
436 evas_object_show(en);
437 elm_box_pack_end(bx, en);
440 en = elm_entry_add(win);
441 elm_entry_scrollable_set(en, EINA_TRUE);
442 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
443 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
444 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_ON, ELM_SCROLLER_POLICY_ON);
445 elm_object_text_set(en,
446 "This is an entry widget in this window that<br/>"
447 "uses markup <b>like this</> for styling and<br/>"
448 "formatting <em>like this</>, as well as<br/>"
449 "<a href=X><link>links in the text</></a>, so enter text<br/>"
450 "in here to edit it. By them way, links are<br/>"
451 "called <a href=anc-02>Anchors</a> so you will need<br/>"
452 "to refer to them this way. At the end here is a really long "
453 "line to test line wrapping to see if it works. But just in "
454 "case this line is not long enough I will add more here to "
455 "really test it out, as Elementary really needs some "
456 "good testing to see if entry widgets work as advertised.");
457 evas_object_smart_callback_add(en, "anchor,clicked", scrolled_anchor_test, en);
458 evas_object_show(en);
459 elm_box_pack_end(bx, en);
461 bx2 = elm_box_add(win);
462 elm_box_horizontal_set(bx2, EINA_TRUE);
463 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
464 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
466 bt = elm_button_add(win);
467 elm_object_text_set(bt, "Clear");
468 evas_object_smart_callback_add(bt, "clicked", my_scrolled_entry_bt_1, en);
469 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
470 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
471 elm_box_pack_end(bx2, bt);
472 evas_object_propagate_events_set(bt, 0);
473 elm_object_focus_allow_set(bt, 0);
474 evas_object_show(bt);
476 bt = elm_button_add(win);
477 elm_object_text_set(bt, "Print");
478 evas_object_smart_callback_add(bt, "clicked", my_scrolled_entry_bt_2, en);
479 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
480 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
481 elm_box_pack_end(bx2, bt);
482 evas_object_propagate_events_set(bt, 0);
483 elm_object_focus_allow_set(bt, 0);
484 evas_object_show(bt);
486 bt = elm_button_add(win);
487 elm_object_text_set(bt, "Print pwd");
488 evas_object_smart_callback_add(bt, "clicked", my_scrolled_entry_bt_5, en_p);
489 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
490 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
491 elm_box_pack_end(bx2, bt);
492 evas_object_propagate_events_set(bt, 0);
493 elm_object_focus_allow_set(bt, 0);
494 evas_object_show(bt);
496 bt = elm_button_add(win);
497 elm_object_text_set(bt, "Selection");
498 evas_object_smart_callback_add(bt, "clicked", my_scrolled_entry_bt_3, en);
499 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
500 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
501 elm_box_pack_end(bx2, bt);
502 evas_object_propagate_events_set(bt, 0);
503 elm_object_focus_allow_set(bt, 0);
504 evas_object_show(bt);
506 bt = elm_button_add(win);
507 elm_object_text_set(bt, "Insert");
508 evas_object_smart_callback_add(bt, "clicked", my_scrolled_entry_bt_4, en);
509 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
510 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
511 elm_box_pack_end(bx2, bt);
512 evas_object_propagate_events_set(bt, 0);
513 elm_object_focus_allow_set(bt, 0);
514 evas_object_show(bt);
516 elm_box_pack_end(bx, bx2);
517 evas_object_show(bx2);
519 evas_object_resize(win, 320, 300);
521 elm_object_focus_set(win, EINA_TRUE);
522 evas_object_show(win);
526 my_ent_bt_clr(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
528 Evas_Object *en = data;
529 elm_object_text_set(en, "");
533 my_ent_bt_pri(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
535 Evas_Object *en = data;
536 const char *s = elm_object_text_get(en);
538 if (s) printf("%s\n", s);
539 printf("ENTRY PLAIN UTF8:\n");
542 s = elm_entry_markup_to_utf8(s);
552 my_ent_bt_sel(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
554 Evas_Object *en = data;
555 const char *s = elm_entry_selection_get(en);
556 printf("SELECTION:\n");
557 if (s) printf("%s\n", s);
558 printf("SELECTION PLAIN UTF8:\n");
561 s = elm_entry_markup_to_utf8(s);
571 my_ent_bt_all(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
573 Evas_Object *en = data;
574 elm_entry_select_all(en);
578 my_ent_bt_non(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
580 Evas_Object *en = data;
581 elm_entry_select_none(en);
585 my_ent_bt_ins(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
587 Evas_Object *en = data;
588 elm_entry_entry_insert(en, "Insert text");
592 my_ent_bt_lef(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
594 Evas_Object *en = data;
595 elm_entry_cursor_prev(en);
599 my_ent_bt_rig(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
601 Evas_Object *en = data;
602 elm_entry_cursor_next(en);
606 my_ent_bt_up_(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
608 Evas_Object *en = data;
609 elm_entry_cursor_up(en);
613 my_ent_bt_dow(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
615 Evas_Object *en = data;
616 elm_entry_cursor_down(en);
620 my_ent_bt_beg(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
622 Evas_Object *en = data;
623 elm_entry_cursor_begin_set(en);
627 my_ent_bt_end(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
629 Evas_Object *en = data;
630 elm_entry_cursor_end_set(en);
634 my_ent_bt_lbe(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
636 Evas_Object *en = data;
637 elm_entry_cursor_line_begin_set(en);
641 my_ent_bt_len(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
643 Evas_Object *en = data;
644 elm_entry_cursor_line_end_set(en);
648 my_ent_bt_sbe(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
650 Evas_Object *en = data;
651 elm_entry_cursor_selection_begin(en);
655 my_ent_bt_sen(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
657 Evas_Object *en = data;
658 elm_entry_cursor_selection_end(en);
662 my_ent_bt_fmt(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
664 Evas_Object *en = data;
665 printf("IS FORMAT: %i\n",
666 (int)elm_entry_cursor_is_format_get(en));
670 my_ent_bt_vfm(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
672 Evas_Object *en = data;
673 printf("IS VISIBLE FORMAT %i\n",
674 (int)elm_entry_cursor_is_visible_format_get(en));
678 my_ent_bt_chr(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
680 Evas_Object *en = data;
681 printf("CHAR '%s'\n", elm_entry_cursor_content_get(en));
685 my_ent_bt_cut(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
687 Evas_Object *en = data;
688 elm_entry_selection_cut(en);
692 my_ent_bt_cop(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
694 Evas_Object *en = data;
695 elm_entry_selection_copy(en);
699 my_ent_bt_pas(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
701 Evas_Object *en = data;
702 elm_entry_selection_paste(en);
706 ent_bt_style_user_peek(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
708 Evas_Object *en = data;
709 const char* cur_style = elm_entry_text_style_user_peek(en);
711 printf("Current style user: %s\n", cur_style);
713 printf("Style user stack is empty.\n");
717 ent_bt_style_user_pop(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
719 Evas_Object *en = data;
720 elm_entry_text_style_user_pop(en);
721 printf("Style user popped\n");
725 test_entry_style_user(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
727 Evas_Object *win, *bx, *en, *bt, *bt2;
729 win = elm_win_util_standard_add("entry-style", "Entry Style");
730 elm_win_autodel_set(win, EINA_TRUE);
731 evas_object_resize(win, 300, 300);
733 bx = elm_box_add(win);
734 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
735 elm_win_resize_object_add(win, bx);
736 evas_object_show(bx);
739 en = elm_entry_add(win);
740 elm_entry_line_wrap_set(en, ELM_WRAP_MIXED);
742 elm_entry_text_style_user_push(en, "DEFAULT='font_size=40 color=#FF0000'");
743 elm_object_text_set(en, "Testing Text");
745 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
746 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
747 elm_box_pack_end(bx, en);
748 evas_object_resize(en, 200, 200);
749 evas_object_show(en);
751 bt = elm_button_add(win);
752 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
753 elm_object_text_set(bt, "Peek");
754 evas_object_smart_callback_add(bt, "clicked", ent_bt_style_user_peek, en);
755 evas_object_size_hint_weight_set(bt, 0.0, 0.0);
756 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, 0.5);
757 elm_box_pack_end(bx, bt);
758 evas_object_propagate_events_set(bt, 0);
759 elm_object_focus_allow_set(bt, 0);
760 evas_object_show(bt);
762 bt2 = elm_button_add(win);
763 evas_object_size_hint_weight_set(bt2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
764 elm_object_text_set(bt2, "Pop");
765 evas_object_smart_callback_add(bt2, "clicked", ent_bt_style_user_pop, en);
766 evas_object_size_hint_weight_set(bt2, 0.0, 0.0);
767 evas_object_size_hint_align_set(bt2, EVAS_HINT_FILL, 0.5);
768 elm_box_pack_end(bx, bt2);
769 evas_object_propagate_events_set(bt2, 0);
770 elm_object_focus_allow_set(bt2, 0);
771 evas_object_show(bt2);
773 elm_object_focus_set(en, EINA_TRUE);
774 evas_object_show(win);
778 test_entry3(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
780 Evas_Object *win, *bx, *bx2, *bt, *en;
782 win = elm_win_util_standard_add("entry3", "Entry 3");
783 elm_win_autodel_set(win, EINA_TRUE);
785 bx = elm_box_add(win);
786 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
787 elm_win_resize_object_add(win, bx);
788 evas_object_show(bx);
790 /* Single line selected entry */
791 en = elm_entry_add(win);
792 elm_entry_scrollable_set(en, EINA_TRUE);
793 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0);
794 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.5);
795 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
796 elm_object_text_set(en, "This is a single line");
797 elm_entry_single_line_set(en, EINA_TRUE);
798 elm_box_pack_end(bx, en);
799 evas_object_show(en);
801 bx2 = elm_box_add(win);
802 elm_box_horizontal_set(bx2, EINA_TRUE);
803 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
804 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
806 bt = elm_button_add(win);
807 elm_object_text_set(bt, "Clr");
808 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_clr, en);
809 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
810 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
811 elm_box_pack_end(bx2, bt);
812 evas_object_propagate_events_set(bt, 0);
813 elm_object_focus_allow_set(bt, 0);
814 evas_object_show(bt);
816 bt = elm_button_add(win);
817 elm_object_text_set(bt, "Pri");
818 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_pri, en);
819 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
820 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
821 elm_box_pack_end(bx2, bt);
822 evas_object_propagate_events_set(bt, 0);
823 elm_object_focus_allow_set(bt, 0);
824 evas_object_show(bt);
826 bt = elm_button_add(win);
827 elm_object_text_set(bt, "Sel");
828 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_sel, en);
829 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
830 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
831 elm_box_pack_end(bx2, bt);
832 evas_object_propagate_events_set(bt, 0);
833 elm_object_focus_allow_set(bt, 0);
834 evas_object_show(bt);
836 bt = elm_button_add(win);
837 elm_object_text_set(bt, "All");
838 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_all, en);
839 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
840 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
841 elm_box_pack_end(bx2, bt);
842 evas_object_propagate_events_set(bt, 0);
843 elm_object_focus_allow_set(bt, 0);
844 evas_object_show(bt);
846 bt = elm_button_add(win);
847 elm_object_text_set(bt, "Non");
848 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_non, en);
849 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
850 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
851 elm_box_pack_end(bx2, bt);
852 evas_object_propagate_events_set(bt, 0);
853 elm_object_focus_allow_set(bt, 0);
854 evas_object_show(bt);
856 bt = elm_button_add(win);
857 elm_object_text_set(bt, "Ins");
858 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_ins, en);
859 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
860 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
861 elm_box_pack_end(bx2, bt);
862 evas_object_propagate_events_set(bt, 0);
863 elm_object_focus_allow_set(bt, 0);
864 evas_object_show(bt);
866 elm_box_pack_end(bx, bx2);
867 evas_object_show(bx2);
869 bx2 = elm_box_add(win);
870 elm_box_horizontal_set(bx2, EINA_TRUE);
871 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
872 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
874 bt = elm_button_add(win);
875 elm_object_text_set(bt, "Lef");
876 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_lef, en);
877 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
878 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
879 elm_box_pack_end(bx2, bt);
880 evas_object_propagate_events_set(bt, 0);
881 elm_object_focus_allow_set(bt, 0);
882 evas_object_show(bt);
884 bt = elm_button_add(win);
885 elm_object_text_set(bt, "Rig");
886 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_rig, en);
887 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
888 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
889 elm_box_pack_end(bx2, bt);
890 evas_object_propagate_events_set(bt, 0);
891 elm_object_focus_allow_set(bt, 0);
892 evas_object_show(bt);
894 bt = elm_button_add(win);
895 elm_object_text_set(bt, "Up ");
896 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_up_, en);
897 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
898 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
899 elm_box_pack_end(bx2, bt);
900 evas_object_propagate_events_set(bt, 0);
901 elm_object_focus_allow_set(bt, 0);
902 evas_object_show(bt);
904 bt = elm_button_add(win);
905 elm_object_text_set(bt, "Dow");
906 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_dow, en);
907 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
908 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
909 elm_box_pack_end(bx2, bt);
910 evas_object_propagate_events_set(bt, 0);
911 elm_object_focus_allow_set(bt, 0);
912 evas_object_show(bt);
914 bt = elm_button_add(win);
915 elm_object_text_set(bt, "Beg");
916 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_beg, en);
917 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
918 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
919 elm_box_pack_end(bx2, bt);
920 evas_object_propagate_events_set(bt, 0);
921 elm_object_focus_allow_set(bt, 0);
922 evas_object_show(bt);
924 bt = elm_button_add(win);
925 elm_object_text_set(bt, "End");
926 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_end, en);
927 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
928 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
929 elm_box_pack_end(bx2, bt);
930 evas_object_propagate_events_set(bt, 0);
931 elm_object_focus_allow_set(bt, 0);
932 evas_object_show(bt);
934 elm_box_pack_end(bx, bx2);
935 evas_object_show(bx2);
937 bx2 = elm_box_add(win);
938 elm_box_horizontal_set(bx2, EINA_TRUE);
939 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
940 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
942 bt = elm_button_add(win);
943 elm_object_text_set(bt, "LBe");
944 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_lbe, en);
945 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
946 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
947 elm_box_pack_end(bx2, bt);
948 evas_object_propagate_events_set(bt, 0);
949 elm_object_focus_allow_set(bt, 0);
950 evas_object_show(bt);
952 bt = elm_button_add(win);
953 elm_object_text_set(bt, "LEn");
954 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_len, en);
955 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
956 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
957 elm_box_pack_end(bx2, bt);
958 evas_object_propagate_events_set(bt, 0);
959 elm_object_focus_allow_set(bt, 0);
960 evas_object_show(bt);
962 bt = elm_button_add(win);
963 elm_object_text_set(bt, "SBe");
964 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_sbe, en);
965 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
966 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
967 elm_box_pack_end(bx2, bt);
968 evas_object_propagate_events_set(bt, 0);
969 elm_object_focus_allow_set(bt, 0);
970 evas_object_show(bt);
972 bt = elm_button_add(win);
973 elm_object_text_set(bt, "SEn");
974 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_sen, en);
975 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
976 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
977 elm_box_pack_end(bx2, bt);
978 evas_object_propagate_events_set(bt, 0);
979 elm_object_focus_allow_set(bt, 0);
980 evas_object_show(bt);
982 bt = elm_button_add(win);
983 elm_object_text_set(bt, "Fmt");
984 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_fmt, en);
985 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
986 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
987 elm_box_pack_end(bx2, bt);
988 evas_object_propagate_events_set(bt, 0);
989 elm_object_focus_allow_set(bt, 0);
990 evas_object_show(bt);
992 bt = elm_button_add(win);
993 elm_object_text_set(bt, "VFm");
994 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_vfm, en);
995 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
996 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
997 elm_box_pack_end(bx2, bt);
998 evas_object_propagate_events_set(bt, 0);
999 elm_object_focus_allow_set(bt, 0);
1000 evas_object_show(bt);
1002 elm_box_pack_end(bx, bx2);
1003 evas_object_show(bx2);
1005 bx2 = elm_box_add(win);
1006 elm_box_horizontal_set(bx2, EINA_TRUE);
1007 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
1008 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
1010 bt = elm_button_add(win);
1011 elm_object_text_set(bt, "Chr");
1012 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_chr, en);
1013 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1014 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1015 elm_box_pack_end(bx2, bt);
1016 evas_object_propagate_events_set(bt, 0);
1017 elm_object_focus_allow_set(bt, 0);
1018 evas_object_show(bt);
1020 bt = elm_button_add(win);
1021 elm_object_text_set(bt, "Cut");
1022 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_cut, en);
1023 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1024 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1025 elm_box_pack_end(bx2, bt);
1026 evas_object_propagate_events_set(bt, 0);
1027 elm_object_focus_allow_set(bt, 0);
1028 evas_object_show(bt);
1030 bt = elm_button_add(win);
1031 elm_object_text_set(bt, "Cop");
1032 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_cop, en);
1033 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1034 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1035 elm_box_pack_end(bx2, bt);
1036 evas_object_propagate_events_set(bt, 0);
1037 elm_object_focus_allow_set(bt, 0);
1038 evas_object_show(bt);
1040 bt = elm_button_add(win);
1041 elm_object_text_set(bt, "Pas");
1042 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_pas, en);
1043 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1044 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1045 elm_box_pack_end(bx2, bt);
1046 evas_object_propagate_events_set(bt, 0);
1047 elm_object_focus_allow_set(bt, 0);
1048 evas_object_show(bt);
1050 elm_box_pack_end(bx, bx2);
1051 evas_object_show(bx2);
1054 en = elm_entry_add(win);
1055 elm_entry_scrollable_set(en, EINA_TRUE);
1056 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1057 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
1058 elm_object_text_set(en,
1059 "This is an entry widget in this window that<br/>"
1060 "uses markup <b>like this</> for styling and<br/>"
1061 "formatting <em>like this</>, as well as<br/>"
1062 "<a href=X><link>links in the text</></a>, so enter text<br/>"
1063 "in here to edit it. By them way, links are<br/>"
1064 "called <a href=anc-02>Anchors</a> so you will need<br/>"
1065 "to refer to them this way. At the end here is a really long "
1066 "line to test line wrapping to see if it works. But just in "
1067 "case this line is not long enough I will add more here to "
1068 "really test it out, as Elementary really needs some "
1069 "good testing to see if entry widgets work as advertised."
1071 evas_object_smart_callback_add(en, "anchor,clicked", scrolled_anchor_test, en);
1072 elm_box_pack_end(bx, en);
1073 evas_object_show(en);
1075 bx2 = elm_box_add(win);
1076 elm_box_horizontal_set(bx2, EINA_TRUE);
1077 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
1078 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
1080 bt = elm_button_add(win);
1081 elm_object_text_set(bt, "Clr");
1082 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_clr, en);
1083 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1084 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1085 elm_box_pack_end(bx2, bt);
1086 evas_object_propagate_events_set(bt, 0);
1087 elm_object_focus_allow_set(bt, 0);
1088 evas_object_show(bt);
1090 bt = elm_button_add(win);
1091 elm_object_text_set(bt, "Pri");
1092 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_pri, en);
1093 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1094 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1095 elm_box_pack_end(bx2, bt);
1096 evas_object_propagate_events_set(bt, 0);
1097 elm_object_focus_allow_set(bt, 0);
1098 evas_object_show(bt);
1100 bt = elm_button_add(win);
1101 elm_object_text_set(bt, "Sel");
1102 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_sel, en);
1103 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1104 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1105 elm_box_pack_end(bx2, bt);
1106 evas_object_propagate_events_set(bt, 0);
1107 elm_object_focus_allow_set(bt, 0);
1108 evas_object_show(bt);
1110 bt = elm_button_add(win);
1111 elm_object_text_set(bt, "All");
1112 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_all, en);
1113 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1114 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1115 elm_box_pack_end(bx2, bt);
1116 evas_object_propagate_events_set(bt, 0);
1117 elm_object_focus_allow_set(bt, 0);
1118 evas_object_show(bt);
1120 bt = elm_button_add(win);
1121 elm_object_text_set(bt, "Non");
1122 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_non, en);
1123 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1124 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1125 elm_box_pack_end(bx2, bt);
1126 evas_object_propagate_events_set(bt, 0);
1127 elm_object_focus_allow_set(bt, 0);
1128 evas_object_show(bt);
1130 bt = elm_button_add(win);
1131 elm_object_text_set(bt, "Ins");
1132 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_ins, en);
1133 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1134 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1135 elm_box_pack_end(bx2, bt);
1136 evas_object_propagate_events_set(bt, 0);
1137 elm_object_focus_allow_set(bt, 0);
1138 evas_object_show(bt);
1140 elm_box_pack_end(bx, bx2);
1141 evas_object_show(bx2);
1143 bx2 = elm_box_add(win);
1144 elm_box_horizontal_set(bx2, EINA_TRUE);
1145 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
1146 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
1148 bt = elm_button_add(win);
1149 elm_object_text_set(bt, "Lef");
1150 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_lef, en);
1151 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1152 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1153 elm_box_pack_end(bx2, bt);
1154 evas_object_propagate_events_set(bt, 0);
1155 elm_object_focus_allow_set(bt, 0);
1156 evas_object_show(bt);
1158 bt = elm_button_add(win);
1159 elm_object_text_set(bt, "Rig");
1160 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_rig, en);
1161 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1162 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1163 elm_box_pack_end(bx2, bt);
1164 evas_object_propagate_events_set(bt, 0);
1165 elm_object_focus_allow_set(bt, 0);
1166 evas_object_show(bt);
1168 bt = elm_button_add(win);
1169 elm_object_text_set(bt, "Up ");
1170 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_up_, en);
1171 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1172 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1173 elm_box_pack_end(bx2, bt);
1174 evas_object_propagate_events_set(bt, 0);
1175 elm_object_focus_allow_set(bt, 0);
1176 evas_object_show(bt);
1178 bt = elm_button_add(win);
1179 elm_object_text_set(bt, "Dow");
1180 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_dow, en);
1181 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1182 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1183 elm_box_pack_end(bx2, bt);
1184 evas_object_propagate_events_set(bt, 0);
1185 elm_object_focus_allow_set(bt, 0);
1186 evas_object_show(bt);
1188 bt = elm_button_add(win);
1189 elm_object_text_set(bt, "Beg");
1190 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_beg, en);
1191 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1192 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1193 elm_box_pack_end(bx2, bt);
1194 evas_object_propagate_events_set(bt, 0);
1195 elm_object_focus_allow_set(bt, 0);
1196 evas_object_show(bt);
1198 bt = elm_button_add(win);
1199 elm_object_text_set(bt, "End");
1200 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_end, en);
1201 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1202 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1203 elm_box_pack_end(bx2, bt);
1204 evas_object_propagate_events_set(bt, 0);
1205 elm_object_focus_allow_set(bt, 0);
1206 evas_object_show(bt);
1208 elm_box_pack_end(bx, bx2);
1209 evas_object_show(bx2);
1211 bx2 = elm_box_add(win);
1212 elm_box_horizontal_set(bx2, EINA_TRUE);
1213 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
1214 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
1216 bt = elm_button_add(win);
1217 elm_object_text_set(bt, "LBe");
1218 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_lbe, en);
1219 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1220 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1221 elm_box_pack_end(bx2, bt);
1222 evas_object_propagate_events_set(bt, 0);
1223 elm_object_focus_allow_set(bt, 0);
1224 evas_object_show(bt);
1226 bt = elm_button_add(win);
1227 elm_object_text_set(bt, "LEn");
1228 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_len, en);
1229 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1230 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1231 elm_box_pack_end(bx2, bt);
1232 evas_object_propagate_events_set(bt, 0);
1233 elm_object_focus_allow_set(bt, 0);
1234 evas_object_show(bt);
1236 bt = elm_button_add(win);
1237 elm_object_text_set(bt, "SBe");
1238 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_sbe, en);
1239 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1240 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1241 elm_box_pack_end(bx2, bt);
1242 evas_object_propagate_events_set(bt, 0);
1243 elm_object_focus_allow_set(bt, 0);
1244 evas_object_show(bt);
1246 bt = elm_button_add(win);
1247 elm_object_text_set(bt, "SEn");
1248 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_sen, en);
1249 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1250 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1251 elm_box_pack_end(bx2, bt);
1252 evas_object_propagate_events_set(bt, 0);
1253 elm_object_focus_allow_set(bt, 0);
1254 evas_object_show(bt);
1256 bt = elm_button_add(win);
1257 elm_object_text_set(bt, "Fmt");
1258 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_fmt, en);
1259 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1260 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1261 elm_box_pack_end(bx2, bt);
1262 evas_object_propagate_events_set(bt, 0);
1263 elm_object_focus_allow_set(bt, 0);
1264 evas_object_show(bt);
1266 bt = elm_button_add(win);
1267 elm_object_text_set(bt, "VFm");
1268 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_vfm, en);
1269 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1270 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1271 elm_box_pack_end(bx2, bt);
1272 evas_object_propagate_events_set(bt, 0);
1273 elm_object_focus_allow_set(bt, 0);
1274 evas_object_show(bt);
1276 elm_box_pack_end(bx, bx2);
1277 evas_object_show(bx2);
1279 bx2 = elm_box_add(win);
1280 elm_box_horizontal_set(bx2, EINA_TRUE);
1281 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
1282 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
1284 bt = elm_button_add(win);
1285 elm_object_text_set(bt, "Chr");
1286 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_chr, en);
1287 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1288 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1289 elm_box_pack_end(bx2, bt);
1290 evas_object_propagate_events_set(bt, 0);
1291 elm_object_focus_allow_set(bt, 0);
1292 evas_object_show(bt);
1294 bt = elm_button_add(win);
1295 elm_object_text_set(bt, "Cut");
1296 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_cut, en);
1297 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1298 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1299 elm_box_pack_end(bx2, bt);
1300 evas_object_propagate_events_set(bt, 0);
1301 elm_object_focus_allow_set(bt, 0);
1302 evas_object_show(bt);
1304 bt = elm_button_add(win);
1305 elm_object_text_set(bt, "Cop");
1306 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_cop, en);
1307 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1308 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1309 elm_box_pack_end(bx2, bt);
1310 evas_object_propagate_events_set(bt, 0);
1311 elm_object_focus_allow_set(bt, 0);
1312 evas_object_show(bt);
1314 bt = elm_button_add(win);
1315 elm_object_text_set(bt, "Pas");
1316 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_pas, en);
1317 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1318 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1319 elm_box_pack_end(bx2, bt);
1320 evas_object_propagate_events_set(bt, 0);
1321 elm_object_focus_allow_set(bt, 0);
1322 evas_object_show(bt);
1324 elm_box_pack_end(bx, bx2);
1325 evas_object_show(bx2);
1327 evas_object_resize(win, 320, 480);
1329 elm_object_focus_set(win, EINA_TRUE);
1330 evas_object_show(win);
1334 test_entry4(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
1336 Evas_Object *win, *ly, *en;
1339 win = elm_win_util_standard_add("entry4", "Entry 4");
1340 elm_win_autodel_set(win, EINA_TRUE);
1342 ly = elm_layout_add(win);
1343 snprintf(buf, sizeof(buf), "%s/objects/test.edj", elm_app_data_dir_get());
1344 elm_layout_file_set(ly, buf, "layout");
1345 evas_object_size_hint_weight_set(ly, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1346 elm_win_resize_object_add(win, ly);
1347 evas_object_show(ly);
1349 en = elm_entry_add(win);
1350 elm_entry_scrollable_set(en, EINA_TRUE);
1351 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, 0.0);
1352 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, 0.5);
1353 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
1354 elm_object_text_set(en, "This is a single line");
1355 elm_entry_single_line_set(en, EINA_TRUE);
1356 elm_object_part_content_set(ly, "element1", en);
1357 evas_object_show(en);
1359 en = elm_entry_add(win);
1360 elm_entry_line_wrap_set(en, ELM_WRAP_NONE);
1361 elm_object_text_set(en,
1362 "This is an entry widget<br/>"
1363 "that uses markup<br/>"
1364 "<b>like this</> and has<br/>"
1365 "no scroller, so you can<br/>"
1366 "use it more flexibly.");
1367 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1368 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
1369 elm_object_part_content_set(ly, "element2", en);
1370 evas_object_show(en);
1372 en = elm_entry_add(win);
1373 elm_entry_scrollable_set(en, EINA_TRUE);
1374 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1375 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
1376 elm_object_text_set(en,
1377 "This is an entry widget in this window that<br/>"
1378 "uses markup <b>like this</> for styling and<br/>"
1379 "formatting <em>like this</>, as well as<br/>"
1380 "<a href=X><link>links in the text</></a>, so enter text<br/>"
1381 "in here to edit it. By them way, links are<br/>"
1382 "called <a href=anc-02>Anchors</a> so you will need<br/>"
1383 "to refer to them this way. At the end here is a really long "
1384 "line to test line wrapping to see if it works. But just in "
1385 "case this line is not long enough I will add more here to "
1386 "really test it out, as Elementary really needs some "
1387 "good testing to see if entry widgets work as advertised."
1389 evas_object_smart_callback_add(en, "anchor,clicked", scrolled_anchor_test, en);
1390 elm_object_part_content_set(ly, "element3", en);
1391 evas_object_show(en);
1393 evas_object_show(win);
1397 test_entry5(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
1399 Evas_Object *win, *bx, *bx2, *bt, *en;
1401 win = elm_win_util_standard_add("entry5", "Entry 5");
1402 elm_win_autodel_set(win, EINA_TRUE);
1404 bx = elm_box_add(win);
1405 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1406 elm_win_resize_object_add(win, bx);
1407 evas_object_show(bx);
1409 en = elm_entry_add(win);
1410 elm_entry_scrollable_set(en, EINA_TRUE);
1411 elm_entry_line_wrap_set(en, ELM_WRAP_CHAR);
1412 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1413 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
1414 elm_object_text_set(en,
1415 "This is an entry widget in this window that "
1416 "uses markup like this for styling and "
1417 "formatting like this, as well as "
1418 "to refer to them this way. At the end here is a really long "
1419 "line to test line wrapping to see if it works. But just in "
1420 "case this line is not long enough I will add more here to "
1421 "really test it out, as Elementary really needs some "
1422 "good testing to see if entry widgets work as advertised."
1424 evas_object_smart_callback_add(en, "anchor,clicked", scrolled_anchor_test, en);
1425 elm_box_pack_end(bx, en);
1426 evas_object_show(en);
1428 bx2 = elm_box_add(win);
1429 elm_box_horizontal_set(bx2, EINA_TRUE);
1430 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
1431 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
1433 bt = elm_button_add(win);
1434 elm_object_text_set(bt, "Clr");
1435 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_clr, en);
1436 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1437 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1438 elm_box_pack_end(bx2, bt);
1439 evas_object_propagate_events_set(bt, 0);
1440 elm_object_focus_allow_set(bt, 0);
1441 evas_object_show(bt);
1443 bt = elm_button_add(win);
1444 elm_object_text_set(bt, "Pri");
1445 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_pri, en);
1446 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1447 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1448 elm_box_pack_end(bx2, bt);
1449 evas_object_propagate_events_set(bt, 0);
1450 elm_object_focus_allow_set(bt, 0);
1451 evas_object_show(bt);
1453 bt = elm_button_add(win);
1454 elm_object_text_set(bt, "Sel");
1455 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_sel, en);
1456 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1457 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1458 elm_box_pack_end(bx2, bt);
1459 evas_object_propagate_events_set(bt, 0);
1460 elm_object_focus_allow_set(bt, 0);
1461 evas_object_show(bt);
1463 bt = elm_button_add(win);
1464 elm_object_text_set(bt, "All");
1465 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_all, en);
1466 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1467 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1468 elm_box_pack_end(bx2, bt);
1469 evas_object_propagate_events_set(bt, 0);
1470 elm_object_focus_allow_set(bt, 0);
1471 evas_object_show(bt);
1473 bt = elm_button_add(win);
1474 elm_object_text_set(bt, "Non");
1475 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_non, en);
1476 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1477 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1478 elm_box_pack_end(bx2, bt);
1479 evas_object_propagate_events_set(bt, 0);
1480 elm_object_focus_allow_set(bt, 0);
1481 evas_object_show(bt);
1483 bt = elm_button_add(win);
1484 elm_object_text_set(bt, "Ins");
1485 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_ins, en);
1486 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1487 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1488 elm_box_pack_end(bx2, bt);
1489 evas_object_propagate_events_set(bt, 0);
1490 elm_object_focus_allow_set(bt, 0);
1491 evas_object_show(bt);
1493 elm_box_pack_end(bx, bx2);
1494 evas_object_show(bx2);
1496 bx2 = elm_box_add(win);
1497 elm_box_horizontal_set(bx2, EINA_TRUE);
1498 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
1499 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
1501 bt = elm_button_add(win);
1502 elm_object_text_set(bt, "Lef");
1503 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_lef, en);
1504 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1505 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1506 elm_box_pack_end(bx2, bt);
1507 evas_object_propagate_events_set(bt, 0);
1508 elm_object_focus_allow_set(bt, 0);
1509 evas_object_show(bt);
1511 bt = elm_button_add(win);
1512 elm_object_text_set(bt, "Rig");
1513 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_rig, en);
1514 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1515 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1516 elm_box_pack_end(bx2, bt);
1517 evas_object_propagate_events_set(bt, 0);
1518 elm_object_focus_allow_set(bt, 0);
1519 evas_object_show(bt);
1521 bt = elm_button_add(win);
1522 elm_object_text_set(bt, "Up ");
1523 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_up_, en);
1524 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1525 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1526 elm_box_pack_end(bx2, bt);
1527 evas_object_propagate_events_set(bt, 0);
1528 elm_object_focus_allow_set(bt, 0);
1529 evas_object_show(bt);
1531 bt = elm_button_add(win);
1532 elm_object_text_set(bt, "Dow");
1533 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_dow, en);
1534 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1535 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1536 elm_box_pack_end(bx2, bt);
1537 evas_object_propagate_events_set(bt, 0);
1538 elm_object_focus_allow_set(bt, 0);
1539 evas_object_show(bt);
1541 bt = elm_button_add(win);
1542 elm_object_text_set(bt, "Beg");
1543 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_beg, en);
1544 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1545 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1546 elm_box_pack_end(bx2, bt);
1547 evas_object_propagate_events_set(bt, 0);
1548 elm_object_focus_allow_set(bt, 0);
1549 evas_object_show(bt);
1551 bt = elm_button_add(win);
1552 elm_object_text_set(bt, "End");
1553 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_end, en);
1554 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1555 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1556 elm_box_pack_end(bx2, bt);
1557 evas_object_propagate_events_set(bt, 0);
1558 elm_object_focus_allow_set(bt, 0);
1559 evas_object_show(bt);
1561 elm_box_pack_end(bx, bx2);
1562 evas_object_show(bx2);
1564 bx2 = elm_box_add(win);
1565 elm_box_horizontal_set(bx2, EINA_TRUE);
1566 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
1567 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
1569 bt = elm_button_add(win);
1570 elm_object_text_set(bt, "LBe");
1571 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_lbe, en);
1572 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1573 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1574 elm_box_pack_end(bx2, bt);
1575 evas_object_propagate_events_set(bt, 0);
1576 elm_object_focus_allow_set(bt, 0);
1577 evas_object_show(bt);
1579 bt = elm_button_add(win);
1580 elm_object_text_set(bt, "LEn");
1581 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_len, en);
1582 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1583 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1584 elm_box_pack_end(bx2, bt);
1585 evas_object_propagate_events_set(bt, 0);
1586 elm_object_focus_allow_set(bt, 0);
1587 evas_object_show(bt);
1589 bt = elm_button_add(win);
1590 elm_object_text_set(bt, "SBe");
1591 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_sbe, en);
1592 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1593 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1594 elm_box_pack_end(bx2, bt);
1595 evas_object_propagate_events_set(bt, 0);
1596 elm_object_focus_allow_set(bt, 0);
1597 evas_object_show(bt);
1599 bt = elm_button_add(win);
1600 elm_object_text_set(bt, "SEn");
1601 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_sen, en);
1602 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1603 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1604 elm_box_pack_end(bx2, bt);
1605 evas_object_propagate_events_set(bt, 0);
1606 elm_object_focus_allow_set(bt, 0);
1607 evas_object_show(bt);
1609 bt = elm_button_add(win);
1610 elm_object_text_set(bt, "Fmt");
1611 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_fmt, en);
1612 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1613 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1614 elm_box_pack_end(bx2, bt);
1615 evas_object_propagate_events_set(bt, 0);
1616 elm_object_focus_allow_set(bt, 0);
1617 evas_object_show(bt);
1619 bt = elm_button_add(win);
1620 elm_object_text_set(bt, "VFm");
1621 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_vfm, en);
1622 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1623 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1624 elm_box_pack_end(bx2, bt);
1625 evas_object_propagate_events_set(bt, 0);
1626 elm_object_focus_allow_set(bt, 0);
1627 evas_object_show(bt);
1629 elm_box_pack_end(bx, bx2);
1630 evas_object_show(bx2);
1632 bx2 = elm_box_add(win);
1633 elm_box_horizontal_set(bx2, EINA_TRUE);
1634 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
1635 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
1637 bt = elm_button_add(win);
1638 elm_object_text_set(bt, "Chr");
1639 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_chr, en);
1640 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1641 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1642 elm_box_pack_end(bx2, bt);
1643 evas_object_propagate_events_set(bt, 0);
1644 elm_object_focus_allow_set(bt, 0);
1645 evas_object_show(bt);
1647 bt = elm_button_add(win);
1648 elm_object_text_set(bt, "Cut");
1649 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_cut, en);
1650 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1651 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1652 elm_box_pack_end(bx2, bt);
1653 evas_object_propagate_events_set(bt, 0);
1654 elm_object_focus_allow_set(bt, 0);
1655 evas_object_show(bt);
1657 bt = elm_button_add(win);
1658 elm_object_text_set(bt, "Cop");
1659 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_cop, en);
1660 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1661 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1662 elm_box_pack_end(bx2, bt);
1663 evas_object_propagate_events_set(bt, 0);
1664 elm_object_focus_allow_set(bt, 0);
1665 evas_object_show(bt);
1667 bt = elm_button_add(win);
1668 elm_object_text_set(bt, "Pas");
1669 evas_object_smart_callback_add(bt, "clicked", my_ent_bt_pas, en);
1670 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
1671 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
1672 elm_box_pack_end(bx2, bt);
1673 evas_object_propagate_events_set(bt, 0);
1674 elm_object_focus_allow_set(bt, 0);
1675 evas_object_show(bt);
1677 elm_box_pack_end(bx, bx2);
1678 evas_object_show(bx2);
1680 evas_object_resize(win, 320, 480);
1682 elm_object_focus_set(win, EINA_TRUE);
1683 evas_object_show(win);
1687 test_entry6(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
1689 Evas_Object *win, *bx, *en;
1691 win = elm_win_util_standard_add("entry6", "Entry 6");
1692 elm_win_autodel_set(win, EINA_TRUE);
1694 bx = elm_box_add(win);
1695 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1696 elm_win_resize_object_add(win, bx);
1697 evas_object_show(bx);
1699 en = elm_entry_add(win);
1700 elm_entry_scrollable_set(en, EINA_TRUE);
1701 elm_entry_line_wrap_set(en, ELM_WRAP_CHAR);
1702 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1703 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
1704 elm_object_text_set(en,
1705 "input_panel_enabled: TRUE.<br>"
1706 "When this entry gets a focus, virtual keyboard will be shown "
1707 "in illume environment.");
1708 elm_box_pack_end(bx, en);
1709 evas_object_show(en);
1711 en = elm_entry_add(win);
1712 elm_entry_scrollable_set(en, EINA_TRUE);
1713 elm_entry_line_wrap_set(en, ELM_WRAP_CHAR);
1714 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1715 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
1716 elm_object_text_set(en,
1717 "input_panel_enabled: FALSE.<br>"
1718 "This entry doesn't allow to show virtual keyboard automatically.<br>"
1719 "it is used in case that wants its own keypad such as calculator.");
1720 elm_entry_input_panel_enabled_set(en, EINA_FALSE);
1721 elm_box_pack_end(bx, en);
1722 evas_object_show(en);
1724 evas_object_resize(win, 320, 300);
1726 elm_object_focus_set(win, EINA_TRUE);
1727 evas_object_show(win);
1731 changed_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
1734 en = (Evas_Object*)data;
1736 elm_entry_editable_set(en, elm_check_state_get(obj));
1740 en_changed_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
1742 Evas_Object *sp, *en;
1743 sp = (Evas_Object *)data;
1744 en = (Evas_Object *)obj;
1745 elm_spinner_min_max_set(sp, 0, strlen(elm_object_text_get(en)));
1749 sp_changed_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
1751 Evas_Object *en, *sp;
1752 en = (Evas_Object *)data;
1753 sp = (Evas_Object *)obj;
1754 elm_entry_cursor_pos_set(en, elm_spinner_value_get(sp));
1755 elm_object_focus_set(en, EINA_TRUE);
1759 add_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
1762 en = (Evas_Object *)data;
1764 elm_entry_context_menu_item_add(en, "item", NULL, ELM_ICON_NONE, NULL, NULL);
1768 clear_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
1771 en = (Evas_Object *)data;
1773 elm_entry_context_menu_clear(en);
1776 static Evas_Object *
1777 item_provider(void *images __UNUSED__, Evas_Object *en, const char *item)
1779 Evas_Object *o = NULL;;
1782 if (!strcmp(item, "itemprovider"))
1784 snprintf(buf, sizeof(buf), "%s/images/icon_00.png",
1785 elm_app_data_dir_get());
1786 o = evas_object_image_filled_add(evas_object_evas_get(en));
1787 evas_object_image_file_set(o, buf, NULL);
1793 static Evas_Object *
1794 prepend_item_provider(void *images __UNUSED__, Evas_Object *en, const char *item)
1796 Evas_Object *o = NULL;;
1799 if (!strcmp(item, "itemprovider"))
1801 snprintf(buf, sizeof(buf), "%s/images/icon_10.png",
1802 elm_app_data_dir_get());
1803 o = evas_object_image_filled_add(evas_object_evas_get(en));
1804 evas_object_image_file_set(o, buf, NULL);
1811 prepend_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
1814 en = (Evas_Object *)data;
1816 elm_entry_item_provider_prepend(en, prepend_item_provider, NULL);
1817 elm_object_text_set(en,
1819 "<item size=50x50 vsize=full href=itemprovider></item>"
1824 remove_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
1827 en = (Evas_Object *)data;
1829 elm_entry_item_provider_remove(en, item_provider, NULL);
1830 elm_entry_item_provider_remove(en, prepend_item_provider, NULL);
1831 elm_object_text_set(en,
1833 "<item size=50x50 vsize=full href=itemprovider></item>"
1838 enable_changed_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
1841 en = (Evas_Object*)data;
1843 elm_entry_context_menu_disabled_set(en, elm_check_state_get(obj));
1847 test_entry7(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
1849 Evas_Object *win, *gd, *bg, *en, *tg, *lb, *sp;
1850 Evas_Object *bt, *en2;
1852 win = elm_win_util_standard_add("entry7", "Entry 7");
1853 elm_win_autodel_set(win, EINA_TRUE);
1855 gd = elm_grid_add(win);
1856 elm_grid_size_set(gd, 100, 100);
1857 evas_object_size_hint_weight_set(gd, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1858 elm_win_resize_object_add(win, gd);
1859 evas_object_show(gd);
1861 /* upper entry group */
1862 bg = elm_bg_add(win);
1863 elm_bg_color_set(bg, 255, 0, 0);
1864 elm_grid_pack(gd, bg, 10, 10, 60, 30);
1865 evas_object_show(bg);
1867 en = elm_entry_add(win);
1868 elm_entry_scrollable_set(en, EINA_TRUE);
1869 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1870 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
1871 elm_object_text_set(en, "Editable, Cursor Positioin");
1872 evas_object_show(en);
1873 elm_grid_pack(gd, en, 10, 10, 60, 30);
1875 tg = elm_check_add(win);
1876 evas_object_size_hint_weight_set(tg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1877 evas_object_size_hint_align_set(tg, EVAS_HINT_FILL, EVAS_HINT_FILL);
1878 elm_object_text_set(tg, "Editable");
1879 elm_check_state_set(tg, EINA_TRUE);
1880 evas_object_smart_callback_add(tg, "changed", changed_cb, en);
1881 elm_grid_pack(gd, tg, 70, 10, 22, 10);
1882 evas_object_show(tg);
1884 lb = elm_label_add(win);
1885 elm_object_text_set(lb, "Cursor position:");
1886 evas_object_size_hint_weight_set(lb, 0.0, 0.0);
1887 evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, EVAS_HINT_FILL);
1888 elm_grid_pack(gd, lb, 70, 25, 25, 5);
1889 evas_object_show(lb);
1891 sp = elm_spinner_add(win);
1892 elm_spinner_label_format_set(sp, "%1.0f");
1893 elm_spinner_step_set(sp, 1);
1894 elm_spinner_wrap_set(sp, ELM_WRAP_CHAR);
1895 elm_spinner_min_max_set(sp, 0, strlen(elm_object_text_get(en)));
1896 evas_object_size_hint_align_set(sp, EVAS_HINT_FILL, EVAS_HINT_FILL);
1897 evas_object_size_hint_weight_set(sp, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1898 elm_grid_pack(gd, sp, 70, 30, 25, 10);
1899 evas_object_smart_callback_add(en, "changed", en_changed_cb, sp);
1900 evas_object_smart_callback_add(sp, "delay,changed", sp_changed_cb, en);
1901 evas_object_show(sp);
1903 /* bottom entry group */
1904 bg = elm_bg_add(win);
1905 elm_bg_color_set(bg, 0, 255, 0);
1906 elm_grid_pack(gd, bg, 10, 50, 45, 30);
1907 evas_object_show(bg);
1909 en2 = elm_entry_add(win);
1910 elm_entry_scrollable_set(en2, EINA_TRUE);
1911 evas_object_size_hint_weight_set(en2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1912 evas_object_size_hint_align_set(en2, EVAS_HINT_FILL, EVAS_HINT_FILL);
1913 elm_object_text_set(en2,
1915 "<item size=50x50 vsize=full href=itemprovider></item>"
1917 elm_entry_item_provider_append(en2, item_provider, NULL);
1918 elm_entry_context_menu_disabled_set(en, EINA_TRUE);
1919 elm_grid_pack(gd, en2, 10, 50, 45, 30);
1920 evas_object_show(en2);
1922 tg = elm_check_add(win);
1923 evas_object_size_hint_weight_set(tg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
1924 evas_object_size_hint_align_set(tg, EVAS_HINT_FILL, EVAS_HINT_FILL);
1925 elm_object_text_set(tg, "Disable Context Menu");
1926 elm_check_state_set(tg, EINA_TRUE);
1927 evas_object_smart_callback_add(tg, "changed", enable_changed_cb, en2);
1928 elm_grid_pack(gd, tg, 55, 50, 40, 10);
1929 evas_object_show(tg);
1931 bt = elm_button_add(win);
1932 elm_object_text_set(bt, "Add Context Menu");
1933 elm_grid_pack(gd, bt, 55, 60, 40, 10);
1934 evas_object_smart_callback_add(bt, "clicked", add_bt_clicked, en2);
1935 evas_object_show(bt);
1937 bt = elm_button_add(win);
1938 elm_object_text_set(bt, "Clear Context Menu");
1939 elm_grid_pack(gd, bt, 55, 70, 40, 10);
1940 evas_object_smart_callback_add(bt, "clicked", clear_bt_clicked, en2);
1941 evas_object_show(bt);
1943 bt = elm_button_add(win);
1944 elm_object_text_set(bt, "Prepend Item Provider");
1945 elm_grid_pack(gd, bt, 10, 80, 45, 10);
1946 evas_object_smart_callback_add(bt, "clicked", prepend_bt_clicked, en2);
1947 evas_object_show(bt);
1949 bt = elm_button_add(win);
1950 elm_object_text_set(bt, "Remove Item Provider");
1951 elm_grid_pack(gd, bt, 55, 80, 40, 10);
1952 evas_object_smart_callback_add(bt, "clicked", remove_bt_clicked, en2);
1953 evas_object_show(bt);
1955 evas_object_resize(win, 320, 320);
1956 evas_object_show(win);
1960 filter_prepend_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
1962 Evas_Object *en, *en2;
1963 static Elm_Entry_Filter_Accept_Set digits_filter_data;
1965 en = (Evas_Object *)data;
1966 en2 = evas_object_data_get(en, "filter-entry");
1967 digits_filter_data.accepted = elm_object_text_get(en2);
1968 digits_filter_data.rejected = NULL;
1970 elm_entry_markup_filter_append(en, elm_entry_filter_accept_set,
1971 &digits_filter_data);
1972 elm_object_text_set(en, "Markup Filter Prepend Test:");
1976 filter_remove_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
1979 en = (Evas_Object *)data;
1981 elm_entry_markup_filter_remove(en, elm_entry_filter_accept_set, NULL);
1982 elm_object_text_set(en, "Markup Filter Prepend Test:");
1986 icon_visible_changed_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
1989 en = (Evas_Object*)data;
1991 elm_entry_icon_visible_set(en, elm_check_state_get(obj));
1995 end_visible_changed_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
1998 en = (Evas_Object*)data;
2000 elm_entry_end_visible_set(en, elm_check_state_get(obj));
2004 horizontal_bounce_changed_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
2008 Eina_Bool bounce = elm_check_state_get(obj);
2009 en = (Evas_Object*)data;
2011 elm_scroller_bounce_get(en, NULL, &vb);
2012 elm_scroller_bounce_set(en, bounce, bounce);
2016 vertical_bounce_changed_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
2020 Eina_Bool bounce = elm_check_state_get(obj);
2021 en = (Evas_Object*)data;
2023 elm_scroller_bounce_get(en, &hb, NULL);
2024 elm_scroller_bounce_set(en, hb, bounce);
2028 test_entry8(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
2030 Evas_Object *win, *gd, *rect, *en, *lb;
2031 Evas_Object *bt, *en2;
2032 Evas_Object *ch, *en3;
2034 static Elm_Entry_Filter_Limit_Size limit_filter_data;
2036 win = elm_win_util_standard_add("entry8", "Entry 8");
2037 elm_win_autodel_set(win, EINA_TRUE);
2039 gd = elm_grid_add(win);
2040 elm_grid_size_set(gd, 100, 100);
2041 elm_win_resize_object_add(win, gd);
2042 evas_object_size_hint_weight_set(gd, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2043 evas_object_show(gd);
2045 rect = evas_object_rectangle_add(evas_object_evas_get(win));
2046 elm_grid_pack(gd, rect, 5, 5, 90, 10);
2047 evas_object_color_set(rect, 125, 125, 255, 255);
2048 evas_object_show(rect);
2050 en = elm_entry_add(win);
2051 elm_entry_scrollable_set(en, EINA_TRUE);
2052 elm_scroller_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
2053 evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2054 evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
2055 elm_object_text_set(en, "Markup Filter Prepend Test");
2056 elm_grid_pack(gd, en, 5, 5, 90, 10);
2057 evas_object_show(en);
2059 lb = elm_label_add(win);
2060 elm_object_text_set(lb, "Markup Filter (20 Characters):");
2061 evas_object_size_hint_weight_set(lb, 0.0, 0.0);
2062 evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, EVAS_HINT_FILL);
2063 elm_grid_pack(gd, lb, 5, 15, 50, 10);
2064 evas_object_show(lb);
2066 rect = evas_object_rectangle_add(evas_object_evas_get(win));
2067 elm_grid_pack(gd, rect, 55, 15, 40, 10);
2068 evas_object_color_set(rect, 0, 125, 255, 255);
2069 evas_object_show(rect);
2071 en2 = elm_entry_add(win);
2072 elm_entry_scrollable_set(en2, EINA_TRUE);
2073 elm_scroller_policy_set(en2, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
2074 evas_object_size_hint_weight_set(en2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2075 evas_object_size_hint_align_set(en2, EVAS_HINT_FILL, EVAS_HINT_FILL);
2076 limit_filter_data.max_char_count = 20;
2077 limit_filter_data.max_byte_count = 0;
2078 elm_entry_markup_filter_append(en2, elm_entry_filter_limit_size, &limit_filter_data);
2079 evas_object_data_set(en, "filter-entry", en2);
2080 evas_object_show(en2);
2081 elm_grid_pack(gd, en2, 55, 15, 40, 10);
2083 bt = elm_button_add(win);
2084 elm_object_text_set(bt, "Markup Filter Prepend");
2085 elm_grid_pack(gd, bt, 5, 25, 45, 10);
2086 evas_object_smart_callback_add(bt, "clicked", filter_prepend_bt_clicked, en);
2087 evas_object_show(bt);
2089 bt = elm_button_add(win);
2090 elm_object_text_set(bt, "Markup Filter Remove");
2091 elm_grid_pack(gd, bt, 50, 25, 45, 10);
2092 evas_object_smart_callback_add(bt, "clicked", filter_remove_bt_clicked, en);
2093 evas_object_show(bt);
2095 en3 = elm_entry_add(win);
2096 elm_entry_scrollable_set(en3, EINA_TRUE);
2097 elm_scroller_policy_set(en3, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
2098 elm_entry_single_line_set(en3, EINA_TRUE);
2099 evas_object_size_hint_weight_set(en3, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2100 evas_object_size_hint_align_set(en3, EVAS_HINT_FILL, EVAS_HINT_FILL);
2101 evas_object_show(en3);
2102 elm_grid_pack(gd, en3, 5, 35, 90, 20);
2104 bt = elm_icon_add(win);
2105 elm_icon_standard_set(bt, "home");
2106 evas_object_size_hint_min_set(bt, 48, 48);
2107 evas_object_color_set(bt, 128, 0, 0, 128);
2108 evas_object_show(bt);
2109 elm_object_part_content_set(en3, "icon", bt);
2111 bt = elm_icon_add(win);
2112 elm_icon_standard_set(bt, "delete");
2113 evas_object_color_set(bt, 128, 0, 0, 128);
2114 evas_object_size_hint_min_set(bt, 48, 48);
2115 evas_object_show(bt);
2116 elm_object_part_content_set(en3, "end", bt);
2118 ch = elm_check_add(win);
2119 evas_object_size_hint_weight_set(ch, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2120 evas_object_size_hint_align_set(ch, EVAS_HINT_FILL, EVAS_HINT_FILL);
2121 elm_object_text_set(ch, "Icon Visible");
2122 elm_check_state_set(ch, EINA_TRUE);
2123 evas_object_smart_callback_add(ch, "changed", icon_visible_changed_cb, en3);
2124 elm_grid_pack(gd, ch, 5, 55, 30, 10);
2125 evas_object_show(ch);
2127 ch = elm_check_add(win);
2128 evas_object_size_hint_weight_set(ch, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2129 evas_object_size_hint_align_set(ch, EVAS_HINT_FILL, EVAS_HINT_FILL);
2130 elm_object_text_set(ch, "End Visible");
2131 elm_check_state_set(ch, EINA_TRUE);
2132 evas_object_smart_callback_add(ch, "changed", end_visible_changed_cb, en3);
2133 elm_grid_pack(gd, ch, 70, 55, 25, 10);
2134 evas_object_show(ch);
2136 rect = evas_object_rectangle_add(evas_object_evas_get(win));
2137 elm_grid_pack(gd, rect, 5, 65, 90, 20);
2138 evas_object_color_set(rect, 255, 125, 125, 255);
2139 evas_object_show(rect);
2141 en4 = elm_entry_add(win);
2142 elm_object_part_text_set(en4, "guide", "Type in here");
2143 elm_entry_scrollable_set(en4, EINA_TRUE);
2144 elm_scroller_bounce_set(en4, EINA_TRUE, EINA_TRUE);
2145 elm_entry_autocapital_type_set(en4, EINA_TRUE);
2146 evas_object_size_hint_weight_set(en4, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2147 evas_object_size_hint_align_set(en4, EVAS_HINT_FILL, EVAS_HINT_FILL);
2148 elm_grid_pack(gd, en4, 5, 65, 90, 20);
2149 evas_object_show(en4);
2151 ch = elm_check_add(win);
2152 evas_object_size_hint_weight_set(ch, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2153 evas_object_size_hint_align_set(ch, EVAS_HINT_FILL, EVAS_HINT_FILL);
2154 elm_object_text_set(ch, "Horizontal Bounce Set");
2155 elm_check_state_set(ch, EINA_TRUE);
2156 evas_object_smart_callback_add(ch, "changed", horizontal_bounce_changed_cb, en4);
2157 elm_grid_pack(gd, ch, 5, 85, 45, 10);
2158 evas_object_show(ch);
2160 ch = elm_check_add(win);
2161 evas_object_size_hint_weight_set(ch, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2162 evas_object_size_hint_align_set(ch, EVAS_HINT_FILL, EVAS_HINT_FILL);
2163 elm_object_text_set(ch, "Vertical Bounce Set");
2164 elm_check_state_set(ch, EINA_TRUE);
2165 evas_object_smart_callback_add(ch, "changed", vertical_bounce_changed_cb, en4);
2166 elm_grid_pack(gd, ch, 50, 85, 45, 10);
2167 evas_object_show(ch);
2169 evas_object_resize(win, 320, 320);
2170 evas_object_show(win);
2174 _scrolled_entry_clear(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
2176 Evas_Object *en = data;
2177 elm_object_text_set(en, "");
2181 _scrolled_entry_save(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
2183 Evas_Object *en = data;
2184 elm_entry_file_save(en);
2188 auto_save_changed_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
2191 en = (Evas_Object*)data;
2193 elm_entry_autosave_set(en, elm_check_state_get(obj));
2197 test_entry_notepad(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
2199 Evas_Object *win, *bx, *bx2, *bt, *np, *ch;
2201 win = elm_win_util_standard_add("entry-notepad", "Entry Notepad");
2202 elm_win_autodel_set(win, EINA_TRUE);
2204 bx = elm_box_add(win);
2205 evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2206 elm_win_resize_object_add(win, bx);
2207 evas_object_show(bx);
2209 np = elm_entry_add(win);
2210 elm_entry_scrollable_set(np, EINA_TRUE);
2211 elm_entry_file_set(np, "note.txt", ELM_TEXT_FORMAT_PLAIN_UTF8);
2212 evas_object_size_hint_weight_set(np, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2213 evas_object_size_hint_align_set(np, EVAS_HINT_FILL, EVAS_HINT_FILL);
2214 elm_box_pack_end(bx, np);
2215 evas_object_show(np);
2217 bx2 = elm_box_add(win);
2218 elm_box_horizontal_set(bx2, EINA_TRUE);
2219 elm_box_homogeneous_set(bx2, EINA_TRUE);
2220 evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
2221 evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
2223 bt = elm_button_add(win);
2224 elm_object_text_set(bt, "Clear");
2225 evas_object_smart_callback_add(bt, "clicked", _scrolled_entry_clear, np);
2226 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
2227 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
2228 elm_box_pack_end(bx2, bt);
2229 evas_object_show(bt);
2231 bt = elm_button_add(win);
2232 elm_object_text_set(bt, "Save");
2233 evas_object_smart_callback_add(bt, "clicked", _scrolled_entry_save, np);
2234 evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
2235 evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
2236 elm_box_pack_end(bx2, bt);
2237 evas_object_show(bt);
2239 ch = elm_check_add(win);
2240 evas_object_size_hint_weight_set(ch, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
2241 evas_object_size_hint_align_set(ch, EVAS_HINT_FILL, EVAS_HINT_FILL);
2242 elm_object_text_set(ch, "Auto Save");
2243 elm_check_state_set(ch, EINA_FALSE);
2244 evas_object_smart_callback_add(ch, "changed", auto_save_changed_cb, np);
2245 elm_box_pack_end(bx2, ch);
2246 evas_object_show(ch);
2248 elm_box_pack_end(bx, bx2);
2249 evas_object_show(bx2);
2251 evas_object_resize(win, 320, 300);
2253 elm_object_focus_set(win, EINA_TRUE);
2254 evas_object_show(win);