herdsman pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=dcfbeb60634aa353d2409776169ebe6199be1552

commit dcfbeb60634aa353d2409776169ebe6199be1552
Author: Daniel Hirt <daniel.h...@samsung.com>
Date:   Thu Dec 8 12:03:02 2016 +0200

    Ui text: move tests to test_efl_ui_text.c
    
    Merge this into the file that already tests the label-like behavior.
---
 src/bin/elementary/test_efl_ui_text.c | 186 ++++++++++++++++++++++++++++++++++
 src/bin/elementary/test_entry.c       | 175 --------------------------------
 2 files changed, 186 insertions(+), 175 deletions(-)

diff --git a/src/bin/elementary/test_efl_ui_text.c 
b/src/bin/elementary/test_efl_ui_text.c
index a25f0f2..6ac5e57 100644
--- a/src/bin/elementary/test_efl_ui_text.c
+++ b/src/bin/elementary/test_efl_ui_text.c
@@ -4,6 +4,8 @@
 #define EO_BETA_API
 #include <Elementary.h>
 
+// 1. Label-equivalent setup
+
 static void
 _apply_style(Eo *obj, size_t start_pos, size_t end_pos, const char *style)
 {
@@ -65,3 +67,187 @@ test_efl_ui_text_label(void *data EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED, voi
    evas_object_resize(win, 480, 320);
    evas_object_show(win);
 }
+
+// 2. Entry-equivalent setup
+
+typedef struct
+{
+   const char *wrap_mode[4];
+   size_t cur_wrap;
+} Test_Data;
+
+static void
+my_efl_ui_text_anchor_hover_opened(void *data EINA_UNUSED, const Efl_Event 
*event)
+{
+   Eo *bt;
+   Eo *en = data;
+
+   Efl_Ui_Text_Anchor_Hover_Info *ei = event->info;
+
+   bt = efl_add(ELM_BUTTON_CLASS, en);
+   elm_object_text_set(bt, ei->anchor_info->name);
+   evas_object_show(bt);
+   elm_object_part_content_set(ei->hover, "middle", bt);
+
+   printf("anchor hover\n");
+}
+
+static void
+my_efl_ui_text_bt_3(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
+{
+   Eo *sel_start, *sel_end;
+
+   efl_ui_text_interactive_selection_cursors_get(data, &sel_start, &sel_end);
+   const char *s = efl_canvas_text_range_text_get(data, sel_start, sel_end);
+
+   printf("SELECTION REGION: %d - %d\n",
+         efl_canvas_text_cursor_position_get(sel_start),
+         efl_canvas_text_cursor_position_get(sel_end));
+   printf("SELECTION:\n");
+   if (s) printf("%s\n", s);
+}
+
+static void
+my_efl_ui_text_bt_4(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
+{
+   Evas_Object *en = data;
+   efl_canvas_text_cursor_object_item_insert(efl_canvas_text_cursor_get(en),
+         "size=32x32 href=emoticon");
+}
+
+const char *_wrap_modes[4] = { "none", "char", "word", "mixed" };
+
+static void
+my_efl_ui_text_bt_6(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
+{
+   char style[128];
+   Evas_Object *en = data;
+   size_t idx = (size_t) efl_key_data_get(en, "wrap_idx");
+   idx = (idx + 1) % 4;
+   efl_key_data_set(en, "wrap_idx", (void *)idx);
+
+   sprintf(style, "DEFAULT='font=Sans font_size=12 color=#fff wrap=%s'",
+         _wrap_modes[idx]);
+   efl_canvas_text_style_set(en, NULL, style);
+   printf("wrap mode changed to '%s'\n", _wrap_modes[idx]);
+
+}
+
+static void
+my_efl_ui_text_bt_5(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
+{
+   Evas_Object *en = data;
+   efl_ui_text_scrollable_set(en, !efl_ui_text_scrollable_get(en));
+}
+
+void
+test_efl_ui_text(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
+{
+   Evas_Object *win, *bx, *bx2, *bx3, *bt, *en;
+   Efl_Canvas_Text_Cursor *main_cur, *cur;
+
+   win = elm_win_util_standard_add("entry", "Entry");
+   elm_win_autodel_set(win, EINA_TRUE);
+
+   bx = elm_box_add(win);
+   evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   elm_win_resize_object_add(win, bx);
+   evas_object_show(bx);
+
+   en = efl_add(EFL_UI_TEXT_CLASS, win);
+
+   printf("Added Efl.Ui.Text object\n");
+   efl_key_data_set(en, "wrap_idx", 0);
+   efl_text_set(en, "Hello world! Goodbye world! This is a test text for the"
+         " new UI Text widget.\xE2\x80\xA9This is the next paragraph.\nThis"
+         " is the next line.\nThis is Yet another line! Line and paragraph"
+         " separators are actually different!");
+
+   main_cur = efl_canvas_text_cursor_get(en);
+   cur = efl_ui_text_cursor_new(en);
+
+   efl_canvas_text_cursor_position_set(cur, 2);
+   efl_canvas_text_cursor_object_item_insert(cur, "size=32x32 href=emoticon");
+   efl_canvas_text_cursor_position_set(cur, 50);
+   efl_canvas_text_cursor_object_item_insert(cur, "size=32x32 href=emoticon");
+
+   efl_canvas_text_cursor_position_set(main_cur, 5);
+   efl_canvas_text_cursor_position_set(cur, 20);
+
+   efl_canvas_text_annotation_insert(en, main_cur, cur, "a href=#hello");
+
+   efl_ui_text_interactive_editable_set(en, EINA_TRUE);
+   efl_ui_text_scrollable_set(en, EINA_TRUE);
+   evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   elm_box_pack_end(bx, en);
+   evas_object_show(en);
+   elm_object_focus_set(en, EINA_TRUE);
+
+   bx2 = elm_box_add(win);
+   elm_box_horizontal_set(bx2, EINA_TRUE);
+   evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
+   evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+   bt = elm_button_add(win);
+   elm_object_text_set(bt, "Sel");
+   evas_object_smart_callback_add(bt, "clicked", my_efl_ui_text_bt_3, en);
+   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
+   elm_box_pack_end(bx2, bt);
+   elm_object_focus_allow_set(bt, EINA_FALSE);
+   evas_object_show(bt);
+
+   bt = elm_button_add(win);
+   elm_object_text_set(bt, "Ins");
+   evas_object_smart_callback_add(bt, "clicked", my_efl_ui_text_bt_4, en);
+   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
+   elm_box_pack_end(bx2, bt);
+   elm_object_focus_allow_set(bt, EINA_FALSE);
+   evas_object_show(bt);
+
+   bt = elm_button_add(win);
+   elm_object_text_set(bt, "Scrl");
+   evas_object_smart_callback_add(bt, "clicked", my_efl_ui_text_bt_5, en);
+   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
+   elm_box_pack_end(bx2, bt);
+   elm_object_focus_allow_set(bt, EINA_FALSE);
+   evas_object_show(bt);
+
+   bt = elm_button_add(win);
+   elm_object_text_set(bt, "Wr");
+   evas_object_smart_callback_add(bt, "clicked", my_efl_ui_text_bt_6, en);
+   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
+   elm_box_pack_end(bx2, bt);
+   elm_object_focus_allow_set(bt, EINA_FALSE);
+   evas_object_show(bt);
+
+#if 0
+   bt = elm_button_add(win);
+   elm_object_text_set(bt, "Edit");
+   evas_object_smart_callback_add(bt, "clicked", my_entry_bt_7, en);
+   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
+   elm_box_pack_end(bx2, bt);
+   elm_object_focus_allow_set(bt, EINA_FALSE);
+   evas_object_show(bt);
+#endif
+
+   bx3 = elm_box_add(win);
+   elm_box_horizontal_set(bx3, EINA_TRUE);
+   evas_object_size_hint_weight_set(bx3, EVAS_HINT_EXPAND, 0.0);
+   evas_object_size_hint_align_set(bx3, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+   elm_box_pack_end(bx, bx3);
+   elm_box_pack_end(bx, bx2);
+   evas_object_show(bx3);
+   evas_object_show(bx2);
+
+   efl_event_callback_add(en, EFL_UI_TEXT_EVENT_ANCHOR_HOVER_OPENED, 
my_efl_ui_text_anchor_hover_opened, en);
+
+   evas_object_resize(win, 480, 320);
+   evas_object_show(win);
+}
diff --git a/src/bin/elementary/test_entry.c b/src/bin/elementary/test_entry.c
index e2fb2aa..77e2fa8 100644
--- a/src/bin/elementary/test_entry.c
+++ b/src/bin/elementary/test_entry.c
@@ -2961,178 +2961,3 @@ test_entry_password(void *data EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED, void *
    evas_object_show(win);
 }
 
-static void
-my_efl_ui_text_anchor_hover_opened(void *data EINA_UNUSED, const Efl_Event 
*event)
-{
-   Eo *bt;
-   Eo *en = data;
-
-   Efl_Ui_Text_Anchor_Hover_Info *ei = event->info;
-
-   bt = efl_add(ELM_BUTTON_CLASS, en);
-   elm_object_text_set(bt, ei->anchor_info->name);
-   evas_object_show(bt);
-   elm_object_part_content_set(ei->hover, "middle", bt);
-
-   printf("anchor hover\n");
-}
-
-static void
-my_efl_ui_text_bt_3(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
-{
-   Eo *sel_start, *sel_end;
-
-   efl_ui_text_interactive_selection_cursors_get(data, &sel_start, &sel_end);
-   const char *s = efl_canvas_text_range_text_get(data, sel_start, sel_end);
-
-   printf("SELECTION REGION: %d - %d\n",
-         efl_canvas_text_cursor_position_get(sel_start),
-         efl_canvas_text_cursor_position_get(sel_end));
-   printf("SELECTION:\n");
-   if (s) printf("%s\n", s);
-}
-
-static void
-my_efl_ui_text_bt_4(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
-{
-   Evas_Object *en = data;
-   efl_canvas_text_cursor_object_item_insert(efl_canvas_text_cursor_get(en),
-         "size=32x32 href=emoticon");
-}
-
-static void
-my_efl_ui_text_bt_5(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
-{
-   Evas_Object *en = data;
-   efl_ui_text_scrollable_set(en, !efl_ui_text_scrollable_get(en));
-}
-
-void
-test_efl_ui_text(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
-{
-   Evas_Object *win, *bx, *bx2, *bx3, *bt, *en, *ck;
-   Efl_Canvas_Text_Cursor *main_cur, *cur;
-
-   win = elm_win_util_standard_add("entry", "Entry");
-   elm_win_autodel_set(win, EINA_TRUE);
-
-   bx = elm_box_add(win);
-   evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   elm_win_resize_object_add(win, bx);
-   evas_object_show(bx);
-
-   en = efl_add(EFL_UI_TEXT_CLASS, win);
-   printf("Added Efl.Ui.Text object\n");
-   efl_text_set(en, "Hello world! Goodbye world! This is a test text for the"
-         " new UI Text widget.\xE2\x80\xA9This is the next paragraph.\nThis"
-         " is the next line.\nThis is Yet another line! Line and paragraph"
-         " separators are actually different!");
-
-   main_cur = efl_canvas_text_cursor_get(en);
-   cur = efl_ui_text_cursor_new(en);
-
-   efl_canvas_text_cursor_position_set(cur, 2);
-   efl_canvas_text_cursor_object_item_insert(cur, "size=32x32 href=emoticon");
-   efl_canvas_text_cursor_position_set(cur, 50);
-   efl_canvas_text_cursor_object_item_insert(cur, "size=32x32 href=emoticon");
-
-   efl_canvas_text_cursor_position_set(main_cur, 5);
-   efl_canvas_text_cursor_position_set(cur, 20);
-
-   efl_canvas_text_annotation_insert(en, main_cur, cur, "a href=#hello");
-
-   efl_ui_text_interactive_editable_set(en, EINA_TRUE);
-   efl_ui_text_scrollable_set(en, EINA_TRUE);
-   evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_box_pack_end(bx, en);
-   evas_object_show(en);
-   elm_object_focus_set(en, EINA_TRUE);
-
-   bx2 = elm_box_add(win);
-   elm_box_horizontal_set(bx2, EINA_TRUE);
-   evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, 0.0);
-   evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
-
-   bt = elm_button_add(win);
-   elm_object_text_set(bt, "Prnt");
-   evas_object_smart_callback_add(bt, "clicked", my_entry_bt_2, en);
-   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
-   elm_box_pack_end(bx2, bt);
-   elm_object_focus_allow_set(bt, EINA_FALSE);
-   evas_object_show(bt);
-
-   bt = elm_button_add(win);
-   elm_object_text_set(bt, "Sel");
-   evas_object_smart_callback_add(bt, "clicked", my_efl_ui_text_bt_3, en);
-   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
-   elm_box_pack_end(bx2, bt);
-   elm_object_focus_allow_set(bt, EINA_FALSE);
-   evas_object_show(bt);
-
-   bt = elm_button_add(win);
-   elm_object_text_set(bt, "Ins");
-   evas_object_smart_callback_add(bt, "clicked", my_efl_ui_text_bt_4, en);
-   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
-   elm_box_pack_end(bx2, bt);
-   elm_object_focus_allow_set(bt, EINA_FALSE);
-   evas_object_show(bt);
-
-   bt = elm_button_add(win);
-   elm_object_text_set(bt, "Scrl");
-   evas_object_smart_callback_add(bt, "clicked", my_efl_ui_text_bt_5, en);
-   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
-   elm_box_pack_end(bx2, bt);
-   elm_object_focus_allow_set(bt, EINA_FALSE);
-   evas_object_show(bt);
-
-   bt = elm_button_add(win);
-   elm_object_text_set(bt, "Wr");
-   evas_object_smart_callback_add(bt, "clicked", my_entry_bt_6, en);
-   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
-   elm_box_pack_end(bx2, bt);
-   elm_object_focus_allow_set(bt, EINA_FALSE);
-   evas_object_show(bt);
-
-   bt = elm_button_add(win);
-   elm_object_text_set(bt, "Edit");
-   evas_object_smart_callback_add(bt, "clicked", my_entry_bt_7, en);
-   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 0.0);
-   elm_box_pack_end(bx2, bt);
-   elm_object_focus_allow_set(bt, EINA_FALSE);
-   evas_object_show(bt);
-
-   bx3 = elm_box_add(win);
-   elm_box_horizontal_set(bx3, EINA_TRUE);
-   evas_object_size_hint_weight_set(bx3, EVAS_HINT_EXPAND, 0.0);
-   evas_object_size_hint_align_set(bx3, EVAS_HINT_FILL, EVAS_HINT_FILL);
-
-   ck = elm_check_add(win);
-   elm_object_text_set(ck, "Context Menu Disable");
-   evas_object_smart_callback_add(ck, "changed", changed_cb1, ck);
-   elm_box_pack_end(bx3, ck);
-   evas_object_show(ck);
-
-   ck = elm_check_add(win);
-   elm_object_text_set(ck, "Select Allow");
-//   elm_check_state_set(ck, elm_entry_select_allow_get(en));
-   evas_object_smart_callback_add(ck, "changed", 
select_allow_check_changed_cb, en);
-   elm_box_pack_end(bx3, ck);
-   evas_object_show(ck);
-
-   elm_box_pack_end(bx, bx3);
-   elm_box_pack_end(bx, bx2);
-   evas_object_show(bx3);
-   evas_object_show(bx2);
-
-   efl_event_callback_add(en, EFL_UI_TEXT_EVENT_ANCHOR_HOVER_OPENED, 
my_efl_ui_text_anchor_hover_opened, en);
-
-   evas_object_resize(win, 480, 320);
-   evas_object_show(win);
-}

-- 


Reply via email to