From 621d2cdecf8f53526f1e8ca427bf815086768a28 Mon Sep 17 00:00:00 2001 From: Ali Alzyod Date: Tue, 10 Dec 2019 17:39:59 +0900 Subject: Efl.Canvas.Text rename into Efl.Canvas.Textblock Summary: Efl.Canvas.Text renamed into **Efl.Canvas.Textblock** Efl.Canvas.Text_Factory renamed into **Efl.Canvas.Textblock_Factory** Reviewers: woohyun, segfaultxavi, zmike, bu5hm4n, YOhoho Reviewed By: segfaultxavi Subscribers: cedric, #committers, #reviewers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10808 --- NEWS | 2 +- src/bin/elementary/test_gfx_filters.c | 2 +- src/lib/edje/edje_textblock.c | 44 +- .../elementary/efl_ui_internal_text_interactive.c | 68 +-- .../elementary/efl_ui_internal_text_interactive.eo | 2 +- src/lib/elementary/efl_ui_internal_text_scroller.c | 6 +- .../elementary/efl_ui_internal_text_scroller.eo | 6 +- src/lib/elementary/efl_ui_text.c | 24 +- src/lib/elementary/efl_ui_text.eo | 2 +- src/lib/elementary/efl_ui_text_factory_emoticons.c | 2 +- .../elementary/efl_ui_text_factory_emoticons.eo | 4 +- src/lib/elementary/efl_ui_text_factory_fallback.c | 8 +- src/lib/elementary/efl_ui_text_factory_fallback.eo | 4 +- src/lib/elementary/efl_ui_text_factory_images.c | 2 +- src/lib/elementary/efl_ui_text_factory_images.eo | 4 +- src/lib/evas/Efl_Canvas.h | 4 +- src/lib/evas/Evas_Eo.h | 6 +- src/lib/evas/canvas/efl_canvas_text.eo | 565 ------------------- src/lib/evas/canvas/efl_canvas_text_eo.legacy.c | 72 --- src/lib/evas/canvas/efl_canvas_text_eo.legacy.h | 222 -------- src/lib/evas/canvas/efl_canvas_text_factory.eo | 23 - src/lib/evas/canvas/efl_canvas_text_internal.h | 315 ----------- src/lib/evas/canvas/efl_canvas_textblock.eo | 565 +++++++++++++++++++ .../evas/canvas/efl_canvas_textblock_eo.legacy.c | 72 +++ .../evas/canvas/efl_canvas_textblock_eo.legacy.h | 222 ++++++++ .../evas/canvas/efl_canvas_textblock_factory.eo | 23 + .../evas/canvas/efl_canvas_textblock_internal.h | 315 +++++++++++ src/lib/evas/canvas/efl_text_attribute_factory.c | 4 +- src/lib/evas/canvas/efl_text_attribute_factory.eo | 4 +- src/lib/evas/canvas/efl_text_cursor.c | 4 +- src/lib/evas/canvas/evas_object_textblock.c | 600 ++++++++++----------- src/lib/evas/canvas/evas_textblock_hyphenation.x | 4 +- src/lib/evas/canvas/evas_textblock_legacy.h | 12 +- src/lib/evas/canvas/meson.build | 6 +- src/tests/evas/evas_test_textblock.c | 102 ++-- 35 files changed, 1660 insertions(+), 1660 deletions(-) delete mode 100644 src/lib/evas/canvas/efl_canvas_text.eo delete mode 100644 src/lib/evas/canvas/efl_canvas_text_eo.legacy.c delete mode 100644 src/lib/evas/canvas/efl_canvas_text_eo.legacy.h delete mode 100644 src/lib/evas/canvas/efl_canvas_text_factory.eo delete mode 100644 src/lib/evas/canvas/efl_canvas_text_internal.h create mode 100644 src/lib/evas/canvas/efl_canvas_textblock.eo create mode 100644 src/lib/evas/canvas/efl_canvas_textblock_eo.legacy.c create mode 100644 src/lib/evas/canvas/efl_canvas_textblock_eo.legacy.h create mode 100644 src/lib/evas/canvas/efl_canvas_textblock_factory.eo create mode 100644 src/lib/evas/canvas/efl_canvas_textblock_internal.h diff --git a/NEWS b/NEWS index 1906fe9bed..3cfa365650 100644 --- a/NEWS +++ b/NEWS @@ -385,7 +385,7 @@ Features: * eo: Add "destruct" event * efl-wl: move to xdg-shell vfinal * wayland: add xdg-shell vfinal support for client-side - * Canvas image: add Efl.Canvas.Text.Factory + use in Ui.Text + * Canvas image: add Efl.Canvas.Textblock.Factory + use in Ui.Text * efl-wl: add functionality for directly passing through xkb objects * ecore-x: add more info to Ecore_X_Event_Xkb event * ecore-x: add some useful xkb function wrappers diff --git a/src/bin/elementary/test_gfx_filters.c b/src/bin/elementary/test_gfx_filters.c index 47e83d7707..eee77afdad 100644 --- a/src/bin/elementary/test_gfx_filters.c +++ b/src/bin/elementary/test_gfx_filters.c @@ -491,7 +491,7 @@ test_gfx_filters(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *eve // Experimental textblock support o = tb = evas_object_textblock_add(evas_object_evas_get(win)); - efl_event_callback_add(o, EFL_CANVAS_TEXT_EVENT_STYLE_INSETS_CHANGED, _textblock_resize, NULL); + efl_event_callback_add(o, EFL_CANVAS_TEXTBLOCK_EVENT_STYLE_INSETS_CHANGED, _textblock_resize, NULL); efl_event_callback_add(o, EFL_GFX_ENTITY_EVENT_SIZE_CHANGED, _textblock_resize, NULL); Evas_Textblock_Style *st = evas_textblock_style_new(); evas_textblock_style_set(st, "DEFAULT='font=Sans font_size=20 color=#FFF wrap=word'"); diff --git a/src/lib/edje/edje_textblock.c b/src/lib/edje/edje_textblock.c index 8b9d97ebe1..76f3b2a8a3 100644 --- a/src/lib/edje/edje_textblock.c +++ b/src/lib/edje/edje_textblock.c @@ -62,10 +62,10 @@ _edje_part_recalc_single_textblock_min_max_calc_legacy(Edje_Real_Part *ep, if (!minx2) { efl_gfx_entity_size_set(ep->object, EINA_SIZE2D(TO_INT(params->eval.w), TO_INT(params->eval.h))); - size = efl_canvas_text_size_formatted_get(ep->object); + size = efl_canvas_textblock_size_formatted_get(ep->object); } else - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); evas_object_textblock_style_insets_get(ep->object, &ins_l, &ins_r, &ins_t, &ins_b); mw = ins_l + size.w + ins_r; @@ -88,10 +88,10 @@ _edje_part_recalc_single_textblock_min_max_calc_legacy(Edje_Real_Part *ep, if (!maxx2) { efl_gfx_entity_size_set(ep->object, EINA_SIZE2D(TO_INT(params->eval.w), TO_INT(params->eval.h))); - size = efl_canvas_text_size_formatted_get(ep->object); + size = efl_canvas_textblock_size_formatted_get(ep->object); } else - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); evas_object_textblock_style_insets_get(ep->object, &ins_l, &ins_r, &ins_t, &ins_b); mw = ins_l + size.w + ins_r; @@ -180,7 +180,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, if (temp_w > 0) { efl_gfx_entity_size_set(ep->object, EINA_SIZE2D(temp_w, temp_h)); - size = efl_canvas_text_size_formatted_get(ep->object); + size = efl_canvas_textblock_size_formatted_get(ep->object); tw = size.w; th = size.h; @@ -189,7 +189,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, } else { - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); th = size.h; th += ins_t + ins_b; @@ -221,7 +221,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, } efl_gfx_entity_size_set(ep->object, EINA_SIZE2D(temp_w, temp_h)); - size = efl_canvas_text_size_formatted_get(ep->object); + size = efl_canvas_textblock_size_formatted_get(ep->object); tw = size.w; th = size.h; @@ -232,7 +232,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, * don't get meaningless height for multiline */ if (temp_w <= 0) { - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); th = size.h; th += ins_t + ins_b; @@ -246,7 +246,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, * text.min: 1 X * text.max: 0 X without max width. * It is a singleline Textblock. */ - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); tw = size.w; th = size.h; @@ -311,7 +311,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, if (temp_w > 0) { efl_gfx_entity_size_set(ep->object, EINA_SIZE2D(temp_w, temp_h)); - size = efl_canvas_text_size_formatted_get(ep->object); + size = efl_canvas_textblock_size_formatted_get(ep->object); tw = size.w; th = size.h; @@ -320,7 +320,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, } else { - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); th = size.h; th += ins_t + ins_b; @@ -335,7 +335,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, /* text.min: 1 X * text.max: 1 X * Singleline. */ - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); tw = size.w; th = size.h; @@ -374,7 +374,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, * text.max: 1 1 */ efl_gfx_entity_size_set(ep->object, EINA_SIZE2D(temp_w, temp_h)); - size = efl_canvas_text_size_formatted_get(ep->object); + size = efl_canvas_textblock_size_formatted_get(ep->object); tw = size.w; th = size.h; @@ -385,7 +385,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, * don't get meaningless height for multiline */ if (temp_w <= 0) { - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); th = size.h; th += ins_t + ins_b; @@ -404,7 +404,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, temp_h = efl_gfx_entity_size_get(ep->object).h; efl_gfx_entity_size_set(ep->object, EINA_SIZE2D(temp_w, temp_h)); - size = efl_canvas_text_size_formatted_get(ep->object); + size = efl_canvas_textblock_size_formatted_get(ep->object); tw = size.w; th = size.h; @@ -415,7 +415,7 @@ _edje_part_recalc_single_textblock_min_max_calc(Edje_Real_Part *ep, * don't get meaningless height for multiline */ if (temp_w <= 0) { - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); th = size.h; th += ins_t + ins_b; @@ -545,7 +545,7 @@ _edje_part_recalc_single_textblock(FLOAT_T sc, if (ep->part->scale) base_s = TO_DOUBLE(sc); efl_gfx_entity_scale_set(ep->object, base_s); - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); orig_s = base_s; /* Now make it bigger so calculations will be more accurate @@ -554,7 +554,7 @@ _edje_part_recalc_single_textblock(FLOAT_T sc, orig_s = _edje_part_recalc_single_textblock_scale_range_adjust(chosen_desc, base_s, orig_s * TO_INT(params->eval.w) / size.w); efl_gfx_entity_scale_set(ep->object, orig_s); - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); } if (chosen_desc->text.fit_x) { @@ -563,7 +563,7 @@ _edje_part_recalc_single_textblock(FLOAT_T sc, s = _edje_part_recalc_single_textblock_scale_range_adjust(chosen_desc, base_s, orig_s * TO_INT(params->eval.w) / size.w); efl_gfx_entity_scale_set(ep->object, s); - efl_canvas_text_size_native_get(ep->object); + efl_canvas_textblock_size_native_get(ep->object); } } if (chosen_desc->text.fit_y) @@ -580,7 +580,7 @@ _edje_part_recalc_single_textblock(FLOAT_T sc, } efl_gfx_entity_scale_set(ep->object, s); - efl_canvas_text_size_native_get(ep->object); + efl_canvas_textblock_size_native_get(ep->object); } } @@ -589,7 +589,7 @@ _edje_part_recalc_single_textblock(FLOAT_T sc, { int i = 5; /* Tries before we give up. */ Eina_Size2D size; - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); /* If we are still too big, try reducing the size to * 95% each try. */ @@ -605,7 +605,7 @@ _edje_part_recalc_single_textblock(FLOAT_T sc, s = tmp_s; efl_gfx_entity_scale_set(ep->object, s); - size = efl_canvas_text_size_native_get(ep->object); + size = efl_canvas_textblock_size_native_get(ep->object); i--; } } diff --git a/src/lib/elementary/efl_ui_internal_text_interactive.c b/src/lib/elementary/efl_ui_internal_text_interactive.c index 0a35d2f795..017f2a884b 100644 --- a/src/lib/elementary/efl_ui_internal_text_interactive.c +++ b/src/lib/elementary/efl_ui_internal_text_interactive.c @@ -4,7 +4,7 @@ #include "elm_priv.h" #include "efl_ui_internal_text_interactive.h" -#include "efl_canvas_text_internal.h" +#include "efl_canvas_textblock_internal.h" #define MY_CLASS EFL_UI_INTERNAL_TEXT_INTERACTIVE_CLASS @@ -52,25 +52,25 @@ static const char *_entry_selection_get(Efl_Ui_Internal_Text_Interactive *obj, E static void _entry_imf_cursor_info_set(Efl_Ui_Internal_Text_Interactive_Data *en); static void -_text_filter_format_prepend(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_Interactive_Data *en, +_text_filter_format_prepend(Efl_Canvas_Textblock *obj, Efl_Ui_Internal_Text_Interactive_Data *en, Efl_Text_Cursor *c, const char *text); static Efl_Text_Change_Info * -_text_filter_text_prepend(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_Interactive_Data *en, +_text_filter_text_prepend(Efl_Canvas_Textblock *obj, Efl_Ui_Internal_Text_Interactive_Data *en, Efl_Text_Cursor *c, const char *text, const char *fmtpre, const char *fmtpost, Eina_Bool clearsel, Eina_Bool changeinfo); static Efl_Text_Change_Info * -_text_filter_markup_prepend_internal(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_Interactive_Data *en, +_text_filter_markup_prepend_internal(Efl_Canvas_Textblock *obj, Efl_Ui_Internal_Text_Interactive_Data *en, Efl_Text_Cursor *c, char *text, const char *fmtpre, const char *fmtpost, Eina_Bool clearsel, Eina_Bool changeinfo); static Efl_Text_Change_Info * -_text_filter_markup_prepend(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_Interactive_Data *en, +_text_filter_markup_prepend(Efl_Canvas_Textblock *obj, Efl_Ui_Internal_Text_Interactive_Data *en, Efl_Text_Cursor *c, const char *text, const char *fmtpre, const char *fmtpost, @@ -109,7 +109,7 @@ _preedit_del(Eo *obj EINA_UNUSED, Efl_Ui_Internal_Text_Interactive_Data *en) static Eina_Bool _entry_imf_retrieve_surrounding_cb(void *data, Ecore_IMF_Context *ctx EINA_UNUSED, char **text, int *cursor_pos) { - Efl_Canvas_Text *obj = data; + Efl_Canvas_Textblock *obj = data; Efl_Text_Cursor *cur = efl_text_interactive_main_cursor_get(obj); const char *str; @@ -144,7 +144,7 @@ _return_key_update(Evas_Object *obj) if (sd->input_panel_return_key_state != EFL_INPUT_TEXT_PANEL_RETURN_KEY_STATE_AUTO) return; - if (efl_canvas_text_is_empty_get(obj) == EINA_TRUE) + if (efl_canvas_textblock_is_empty_get(obj) == EINA_TRUE) return_key_disabled = EINA_TRUE; if (sd->imf_context) @@ -180,7 +180,7 @@ _entry_hide_visible_password(Eo *obj) static void _entry_imf_event_commit_cb(void *data, Ecore_IMF_Context *ctx EINA_UNUSED, void *event_info) { - Efl_Canvas_Text *obj = data; + Efl_Canvas_Textblock *obj = data; Efl_Ui_Internal_Text_Interactive_Data *en = efl_data_scope_get(obj, MY_CLASS); char *commit_str = event_info; Efl_Text_Change_Info *info = NULL; @@ -231,7 +231,7 @@ _entry_imf_event_commit_cb(void *data, Ecore_IMF_Context *ctx EINA_UNUSED, void } static Efl_Text_Change_Info * -_text_filter_markup_prepend_internal(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_Interactive_Data *en, +_text_filter_markup_prepend_internal(Efl_Canvas_Textblock *obj, Efl_Ui_Internal_Text_Interactive_Data *en, Efl_Text_Cursor *c, char *text, const char *fmtpre, const char *fmtpost, @@ -284,7 +284,7 @@ _text_filter_markup_prepend_internal(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_ } static Efl_Text_Change_Info * -_text_filter_markup_prepend(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_Interactive_Data *en, +_text_filter_markup_prepend(Efl_Canvas_Textblock *obj, Efl_Ui_Internal_Text_Interactive_Data *en, Efl_Text_Cursor *c, const char *text, const char *fmtpre, const char *fmtpost, @@ -313,7 +313,7 @@ _text_filter_markup_prepend(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_Interacti } static Efl_Text_Change_Info * -_text_filter_text_prepend(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_Interactive_Data *en, +_text_filter_text_prepend(Efl_Canvas_Textblock *obj, Efl_Ui_Internal_Text_Interactive_Data *en, Efl_Text_Cursor *c, const char *text, const char *fmtpre, const char *fmtpost, @@ -342,7 +342,7 @@ _text_filter_text_prepend(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_Interactive } static void -_text_filter_format_prepend(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_Interactive_Data *en, +_text_filter_format_prepend(Efl_Canvas_Textblock *obj, Efl_Ui_Internal_Text_Interactive_Data *en, Efl_Text_Cursor *c, const char *text) { EINA_SAFETY_ON_NULL_RETURN(text); @@ -416,7 +416,7 @@ _text_filter_format_prepend(Efl_Canvas_Text *obj, Efl_Ui_Internal_Text_Interacti static void _entry_imf_event_preedit_changed_cb(void *data, Ecore_IMF_Context *ctx EINA_UNUSED, void *event_info EINA_UNUSED) { - Efl_Canvas_Text *obj = data; + Efl_Canvas_Textblock *obj = data; Efl_Text_Cursor *cur = efl_text_interactive_main_cursor_get(obj); Efl_Ui_Internal_Text_Interactive_Data *en = efl_data_scope_get(obj, MY_CLASS); Efl_Text_Change_Info *info = NULL; @@ -518,12 +518,12 @@ _entry_imf_event_preedit_changed_cb(void *data, Ecore_IMF_Context *ctx EINA_UNUS { /* set preedit start cursor */ if (!en->preedit_start) - en->preedit_start = efl_canvas_text_cursor_create(obj); + en->preedit_start = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_copy(cur, en->preedit_start); /* set preedit end cursor */ if (!en->preedit_end) - en->preedit_end = efl_canvas_text_cursor_create(obj); + en->preedit_end = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_copy(cur, en->preedit_end); preedit_end_pos = efl_text_cursor_position_get(cur); @@ -561,7 +561,7 @@ _entry_imf_event_preedit_changed_cb(void *data, Ecore_IMF_Context *ctx EINA_UNUS static void _entry_imf_event_delete_surrounding_cb(void *data, Ecore_IMF_Context *ctx EINA_UNUSED, void *event_info) { - Efl_Canvas_Text *obj = data; + Efl_Canvas_Textblock *obj = data; Efl_Text_Cursor *cur = efl_text_interactive_main_cursor_get(obj); Efl_Ui_Internal_Text_Interactive_Data *en = efl_data_scope_get(obj, MY_CLASS); Ecore_IMF_Event_Delete_Surrounding *ev = event_info; @@ -573,10 +573,10 @@ _entry_imf_event_delete_surrounding_cb(void *data, Ecore_IMF_Context *ctx EINA_U cursor_pos = efl_text_cursor_position_get(cur); - del_start = efl_canvas_text_cursor_create(obj); + del_start = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_position_set(del_start, cursor_pos + ev->offset); - del_end = efl_canvas_text_cursor_create(obj); + del_end = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_position_set(del_end, cursor_pos + ev->offset + ev->n_chars); start = efl_text_cursor_position_get(del_start); @@ -605,7 +605,7 @@ end: static void _entry_imf_event_selection_set_cb(void *data, Ecore_IMF_Context *ctx EINA_UNUSED, void *event_info) { - Efl_Canvas_Text *obj = data; + Efl_Canvas_Textblock *obj = data; Efl_Text_Cursor *cur = efl_text_interactive_main_cursor_get(obj); Efl_Ui_Internal_Text_Interactive_Data *en = efl_data_scope_get(obj, MY_CLASS); Ecore_IMF_Event_Selection *ev = event_info; @@ -628,7 +628,7 @@ _entry_imf_event_selection_set_cb(void *data, Ecore_IMF_Context *ctx EINA_UNUSED static Eina_Bool _entry_imf_retrieve_selection_cb(void *data, Ecore_IMF_Context *ctx EINA_UNUSED, char **text) { - Efl_Canvas_Text *obj = data; + Efl_Canvas_Textblock *obj = data; Efl_Ui_Internal_Text_Interactive_Data *en = efl_data_scope_get(obj, MY_CLASS); const char *selection_text = NULL; @@ -1106,7 +1106,7 @@ _key_down_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj, void { if (multiline) { - if (shift || efl_canvas_text_newline_as_paragraph_separator_get(obj)) + if (shift || efl_canvas_textblock_newline_as_paragraph_separator_get(obj)) { string = "\n"; } @@ -1193,7 +1193,7 @@ _key_down_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj, void if (control && !en->have_selection) { // del to start of previous word - Efl_Text_Cursor *tc = efl_canvas_text_cursor_create(obj); + Efl_Text_Cursor *tc = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_copy(tc, cur); efl_text_cursor_move(cur, EFL_TEXT_CURSOR_MOVE_TYPE_CHAR_PREV); @@ -1228,7 +1228,7 @@ _key_down_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj, void if (control) { // del to end of next word - Efl_Text_Cursor *tc = efl_canvas_text_cursor_create(obj); + Efl_Text_Cursor *tc = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_copy(tc, cur); efl_text_cursor_move(cur, EFL_TEXT_CURSOR_MOVE_TYPE_WORD_END); @@ -1466,20 +1466,20 @@ end: } static void -_cursor_char_coord_set(Efl_Canvas_Text *obj, Efl_Text_Cursor *cur, Evas_Coord canvasx, Evas_Coord canvasy, Evas_Coord *_cx, Evas_Coord *_cy) +_cursor_char_coord_set(Efl_Canvas_Textblock *obj, Efl_Text_Cursor *cur, Evas_Coord canvasx, Evas_Coord canvasy, Evas_Coord *_cx, Evas_Coord *_cy) { Evas_Coord cx, cy; Evas_Coord x, y, lh = 0, cly = 0; Efl_Text_Cursor *line_cur; Efl_Text_Cursor *tc; - tc = efl_canvas_text_cursor_create(obj); + tc = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_copy(cur, tc); evas_object_geometry_get(obj, &x, &y, NULL, NULL); cx = canvasx - x; cy = canvasy - y; - line_cur = efl_canvas_text_cursor_create(obj); + line_cur = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_move(line_cur, EFL_TEXT_CURSOR_MOVE_TYPE_LAST); evas_textblock_cursor_line_geometry_get(efl_text_cursor_handle_get(line_cur), NULL, &cly, NULL, &lh); /* Consider a threshold of half the line height */ @@ -1538,7 +1538,7 @@ _mouse_down_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj EIN { if (shift) { - tc = efl_canvas_text_cursor_create(obj); + tc = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_copy(cur, tc); if (efl_text_cursor_compare(cur, en->sel_start) < 0) efl_text_cursor_move(cur, EFL_TEXT_CURSOR_MOVE_TYPE_LINE_START); @@ -1551,7 +1551,7 @@ _mouse_down_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj EIN en->have_selection = EINA_FALSE; en->selecting = EINA_FALSE; _sel_clear(obj, en); - tc = efl_canvas_text_cursor_create(obj); + tc = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_copy(cur, tc); efl_text_cursor_move(cur, EFL_TEXT_CURSOR_MOVE_TYPE_LINE_START); _sel_init(cur, obj, en); @@ -1564,7 +1564,7 @@ _mouse_down_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj EIN { if (shift) { - tc = efl_canvas_text_cursor_create(obj); + tc = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_copy(cur, tc); if (efl_text_cursor_compare(cur, en->sel_start) < 0) efl_text_cursor_move(cur, EFL_TEXT_CURSOR_MOVE_TYPE_WORD_START); @@ -1580,7 +1580,7 @@ _mouse_down_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj EIN en->have_selection = EINA_FALSE; en->selecting = EINA_FALSE; _sel_clear(obj, en); - tc = efl_canvas_text_cursor_create(obj); + tc = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_copy(cur, tc); efl_text_cursor_move(cur, EFL_TEXT_CURSOR_MOVE_TYPE_WORD_START); _sel_init(cur, obj, en); @@ -1679,7 +1679,7 @@ _mouse_move_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj, vo if (en->selecting) { - tc = efl_canvas_text_cursor_create(obj); + tc = efl_canvas_textblock_cursor_create(obj); efl_text_cursor_copy(cur, tc); evas_object_geometry_get(obj, &x, &y, &w, &h); cx = ev->cur.canvas.x - x; @@ -1733,9 +1733,9 @@ _efl_ui_internal_text_interactive_efl_object_finalize(Eo *obj, Efl_Ui_Internal_T evas_object_event_callback_add(obj, EVAS_CALLBACK_MOUSE_UP, _mouse_up_cb, NULL); evas_object_event_callback_add(obj, EVAS_CALLBACK_MOUSE_MOVE, _mouse_move_cb, NULL); - en->main_cursor = efl_canvas_text_cursor_create(obj); - en->sel_start = efl_canvas_text_cursor_create(obj); - en->sel_end = efl_canvas_text_cursor_create(obj); + en->main_cursor = efl_canvas_textblock_cursor_create(obj); + en->sel_start = efl_canvas_textblock_cursor_create(obj); + en->sel_end = efl_canvas_textblock_cursor_create(obj); efl_event_callback_add(efl_text_interactive_main_cursor_get(obj), EFL_TEXT_CURSOR_EVENT_CHANGED, _sel_cursor_changed, obj); diff --git a/src/lib/elementary/efl_ui_internal_text_interactive.eo b/src/lib/elementary/efl_ui_internal_text_interactive.eo index 8c8a4cd1f1..44e871cb9b 100644 --- a/src/lib/elementary/efl_ui_internal_text_interactive.eo +++ b/src/lib/elementary/efl_ui_internal_text_interactive.eo @@ -1,4 +1,4 @@ -class @beta Efl.Ui.Internal.Text.Interactive extends Efl.Canvas.Text implements Efl.Text_Interactive, Efl.Input_Text +class @beta Efl.Ui.Internal.Text.Interactive extends Efl.Canvas.Textblock implements Efl.Text_Interactive, Efl.Input_Text { [[An internal object in charge of the interactive aspect of the text widget. diff --git a/src/lib/elementary/efl_ui_internal_text_scroller.c b/src/lib/elementary/efl_ui_internal_text_scroller.c index f5e366deb0..3387759e38 100644 --- a/src/lib/elementary/efl_ui_internal_text_scroller.c +++ b/src/lib/elementary/efl_ui_internal_text_scroller.c @@ -36,7 +36,7 @@ typedef struct _Efl_Ui_Internal_Text_Scroller_Data { - Efl_Canvas_Text *text_obj; + Efl_Canvas_Textblock *text_obj; Efl_Ui_Table *text_table; Eo *smanager; @@ -101,7 +101,7 @@ _efl_ui_internal_text_scroller_efl_canvas_group_group_calculate(Eo *obj, efl_event_freeze(sd->text_obj); efl_gfx_entity_size_set(sd->text_table, view.size); efl_gfx_entity_size_set(sd->text_obj, view.size); - fsz = efl_canvas_text_size_formatted_get(sd->text_obj); + fsz = efl_canvas_textblock_size_formatted_get(sd->text_obj); efl_gfx_entity_size_set(sd->text_table, sz); efl_gfx_entity_size_set(sd->text_obj, sz); efl_event_thaw(sd->text_obj); @@ -152,7 +152,7 @@ _efl_ui_internal_text_scroller_efl_object_destructor(Eo *obj, EOLIAN static void _efl_ui_internal_text_scroller_initialize(Eo *obj, Efl_Ui_Internal_Text_Scroller_Data *sd, - Efl_Canvas_Text *text_obj, + Efl_Canvas_Textblock *text_obj, Efl_Ui_Table *text_table) { if (efl_finalized_get(obj)) diff --git a/src/lib/elementary/efl_ui_internal_text_scroller.eo b/src/lib/elementary/efl_ui_internal_text_scroller.eo index 3108000d83..b616674944 100644 --- a/src/lib/elementary/efl_ui_internal_text_scroller.eo +++ b/src/lib/elementary/efl_ui_internal_text_scroller.eo @@ -10,7 +10,7 @@ class @beta Efl.Ui.Internal_Text_Scroller extends Efl.Ui.Scroller [[Internal-usage text scroller class. This class is a special scroller that evaluates its size based on the - @Efl.Canvas.Text object it holds. On initialization the object is meant + @Efl.Canvas.Textblock object it holds. On initialization the object is meant to be passed along a container (so that other objects such as a "guide hint" text object are store in such container. ]] @@ -32,11 +32,11 @@ class @beta Efl.Ui.Internal_Text_Scroller extends Efl.Ui.Scroller } } initialize { - [[The Efl.Canvas.Text content of this scroller. + [[The Efl.Canvas.Textblock content of this scroller. This should be called upon constructing the object. ]] params { - text_obj: Efl.Canvas.Text; [[The text object to query]] + text_obj: Efl.Canvas.Textblock; [[The text object to query]] text_table: Efl.Ui.Table; [[The table container of the $text_obj]] } diff --git a/src/lib/elementary/efl_ui_text.c b/src/lib/elementary/efl_ui_text.c index e716f25aac..c65d59017d 100644 --- a/src/lib/elementary/efl_ui_text.c +++ b/src/lib/elementary/efl_ui_text.c @@ -18,7 +18,7 @@ #include "elm_hoversel_eo.h" #include "efl_ui_text_part.eo.h" #include "elm_part_helper.h" -#include "efl_canvas_text_internal.h" +#include "efl_canvas_textblock_internal.h" typedef struct _Efl_Ui_Text_Data Efl_Ui_Text_Data; typedef struct _Efl_Ui_Text_Rectangle Efl_Ui_Text_Rectangle; @@ -65,8 +65,8 @@ struct _Efl_Ui_Text_Data int gen; Eina_List *sel; Eina_List *items; /** context menu item list */ - Efl_Canvas_Text_Factory *item_factory; - Efl_Canvas_Text_Factory *item_fallback_factory; + Efl_Canvas_Textblock_Factory *item_factory; + Efl_Canvas_Textblock_Factory *item_fallback_factory; Eina_List *markup_filters; Ecore_Job *hov_deljob; Mod_Api *api; // module api if supplied @@ -851,9 +851,9 @@ _efl_ui_text_efl_canvas_group_group_calculate(Eo *obj, Efl_Ui_Text_Data *sd) efl_gfx_entity_size_set(sd->text_obj, EINA_SIZE2D(sz.w, 0)); /* ignore current object size for single-line since we always need to know the actual size */ if (!efl_text_multiline_get(obj)) - min = efl_canvas_text_size_native_get(sd->text_obj); + min = efl_canvas_textblock_size_native_get(sd->text_obj); else - min = efl_canvas_text_size_formatted_get(sd->text_obj); + min = efl_canvas_textblock_size_formatted_get(sd->text_obj); efl_gfx_entity_size_set(sd->text_obj, text_sz); efl_event_thaw(sd->text_obj); min.w += edmin.w; @@ -1485,11 +1485,11 @@ _item_get(void *data, const char *item) { if (sd->item_factory) { - o = efl_canvas_text_factory_create(sd->item_factory, data, item); + o = efl_canvas_textblock_factory_create(sd->item_factory, data, item); } else if (sd->item_fallback_factory) { - o = efl_canvas_text_factory_create(sd->item_fallback_factory, + o = efl_canvas_textblock_factory_create(sd->item_fallback_factory, data, item); } } @@ -1967,7 +1967,7 @@ _efl_ui_text_efl_object_constructor(Eo *obj, Efl_Ui_Text_Data *sd) efl_event_callback_forwarder_add(text_obj, EFL_TEXT_INTERACTIVE_EVENT_UNDO_REQUEST, obj); efl_event_callback_forwarder_add(text_obj, EFL_TEXT_INTERACTIVE_EVENT_PREEDIT_CHANGED, obj); sd->text_obj = text_obj; - sd->text_guide_obj = efl_add(EFL_CANVAS_TEXT_CLASS, obj); + sd->text_guide_obj = efl_add(EFL_CANVAS_TEXTBLOCK_CLASS, obj); sd->text_table = efl_add(EFL_UI_TABLE_CLASS, obj); efl_composite_attach(obj, text_obj); @@ -2028,7 +2028,7 @@ _efl_ui_text_efl_object_finalize(Eo *obj, (sd->entry_edje, EVAS_HINT_FILL, EVAS_HINT_FILL); efl_event_callback_add(sd->text_obj, EFL_TEXT_INTERACTIVE_EVENT_CHANGED_USER, _efl_ui_text_changed_user_cb, obj); - efl_event_callback_add(sd->text_obj, EFL_CANVAS_TEXT_EVENT_CHANGED, + efl_event_callback_add(sd->text_obj, EFL_CANVAS_TEXTBLOCK_EVENT_CHANGED, _efl_ui_text_changed_cb, obj); efl_event_callback_add(sd->text_obj, EFL_TEXT_INTERACTIVE_EVENT_HAVE_SELECTION_CHANGED, _efl_ui_text_selection_start_clear_cb, obj); @@ -3337,8 +3337,8 @@ _anchors_update(Eo *obj, Efl_Ui_Text_Data *sd) sd->gen++; - start = efl_canvas_text_cursor_create(sd->text_obj); - end = efl_canvas_text_cursor_create(sd->text_obj); + start = efl_canvas_textblock_cursor_create(sd->text_obj); + end = efl_canvas_textblock_cursor_create(sd->text_obj); /* Retrieve all annotations in the text. */ efl_text_cursor_move(start, EFL_TEXT_CURSOR_MOVE_TYPE_FIRST); @@ -3645,7 +3645,7 @@ _efl_ui_text_move_cb(void *data, Evas *e EINA_UNUSED, static void _efl_ui_text_item_factory_set(Eo *obj EINA_UNUSED, Efl_Ui_Text_Data *pd, - Efl_Canvas_Text_Factory *item_factory) + Efl_Canvas_Textblock_Factory *item_factory) { if (pd->item_factory) efl_unref(pd->item_factory); pd->item_factory = efl_ref(item_factory); diff --git a/src/lib/elementary/efl_ui_text.eo b/src/lib/elementary/efl_ui_text.eo index 785fe34294..935c7f57d1 100644 --- a/src/lib/elementary/efl_ui_text.eo +++ b/src/lib/elementary/efl_ui_text.eo @@ -61,7 +61,7 @@ class @beta Efl.Ui.Text extends Efl.Ui.Layout_Base implements Efl.Input.Clickabl "emoticon/happy" or "href=file://image.jpg" etc. ]] values { - item_factory: Efl.Canvas.Text_Factory; [[Factory to create items]] + item_factory: Efl.Canvas.Textblock_Factory; [[Factory to create items]] } } cursor_add { diff --git a/src/lib/elementary/efl_ui_text_factory_emoticons.c b/src/lib/elementary/efl_ui_text_factory_emoticons.c index f66c99dd2f..6d61fe37c8 100644 --- a/src/lib/elementary/efl_ui_text_factory_emoticons.c +++ b/src/lib/elementary/efl_ui_text_factory_emoticons.c @@ -15,7 +15,7 @@ struct _Efl_Ui_Text_Factory_Emoticons_Data }; EOLIAN static Efl_Canvas_Object -*_efl_ui_text_factory_emoticons_efl_canvas_text_factory_create( +*_efl_ui_text_factory_emoticons_efl_canvas_textblock_factory_create( Eo *obj EINA_UNUSED, Efl_Ui_Text_Factory_Emoticons_Data *pd EINA_UNUSED, Efl_Canvas_Object *object, diff --git a/src/lib/elementary/efl_ui_text_factory_emoticons.eo b/src/lib/elementary/efl_ui_text_factory_emoticons.eo index 903f449d6b..9265cc5931 100644 --- a/src/lib/elementary/efl_ui_text_factory_emoticons.eo +++ b/src/lib/elementary/efl_ui_text_factory_emoticons.eo @@ -1,8 +1,8 @@ -class @beta Efl.Ui.Text_Factory.Emoticons extends Efl.Object implements Efl.Canvas.Text_Factory +class @beta Efl.Ui.Text_Factory.Emoticons extends Efl.Object implements Efl.Canvas.Textblock_Factory { [[Factory that creates emoticons from the current theme given a key. ]] implements { - Efl.Canvas.Text_Factory.create; + Efl.Canvas.Textblock_Factory.create; } } diff --git a/src/lib/elementary/efl_ui_text_factory_fallback.c b/src/lib/elementary/efl_ui_text_factory_fallback.c index 3568ba917f..048b8aea08 100644 --- a/src/lib/elementary/efl_ui_text_factory_fallback.c +++ b/src/lib/elementary/efl_ui_text_factory_fallback.c @@ -12,7 +12,7 @@ typedef struct _Efl_Ui_Text_Factory_Fallback_Data Efl_Ui_Text_Factory_Fallback_D struct _Efl_Ui_Text_Factory_Fallback_Data { - Efl_Canvas_Text_Factory *emoticon_factory, *image_factory; + Efl_Canvas_Textblock_Factory *emoticon_factory, *image_factory; }; EOLIAN static Eo * @@ -34,7 +34,7 @@ _efl_ui_text_factory_fallback_efl_object_destructor(Eo *obj, EOLIAN static Efl_Canvas_Object -*_efl_ui_text_factory_fallback_efl_canvas_text_factory_create( +*_efl_ui_text_factory_fallback_efl_canvas_textblock_factory_create( Eo *obj EINA_UNUSED, Efl_Ui_Text_Factory_Fallback_Data *pd EINA_UNUSED, Efl_Canvas_Object *object, @@ -48,11 +48,11 @@ EOLIAN static Efl_Canvas_Object if (key && !strncmp(key, "file://", 7)) { const char *fname = key + 7; - o = efl_canvas_text_factory_create(pd->image_factory, object, fname); + o = efl_canvas_textblock_factory_create(pd->image_factory, object, fname); } else { - o = efl_canvas_text_factory_create(pd->emoticon_factory, object, key); + o = efl_canvas_textblock_factory_create(pd->emoticon_factory, object, key); } return o; } diff --git a/src/lib/elementary/efl_ui_text_factory_fallback.eo b/src/lib/elementary/efl_ui_text_factory_fallback.eo index f41352bee8..1af32930a6 100644 --- a/src/lib/elementary/efl_ui_text_factory_fallback.eo +++ b/src/lib/elementary/efl_ui_text_factory_fallback.eo @@ -1,4 +1,4 @@ -class @beta Efl.Ui.Text_Factory.Fallback extends Efl.Object implements Efl.Canvas.Text_Factory +class @beta Efl.Ui.Text_Factory.Fallback extends Efl.Object implements Efl.Canvas.Textblock_Factory { [[Internal factory for fallback cases. @@ -10,6 +10,6 @@ class @beta Efl.Ui.Text_Factory.Fallback extends Efl.Object implements Efl.Canva implements { Efl.Object.constructor; Efl.Object.destructor; - Efl.Canvas.Text_Factory.create; + Efl.Canvas.Textblock_Factory.create; } } diff --git a/src/lib/elementary/efl_ui_text_factory_images.c b/src/lib/elementary/efl_ui_text_factory_images.c index 38529e43a9..55b8978534 100644 --- a/src/lib/elementary/efl_ui_text_factory_images.c +++ b/src/lib/elementary/efl_ui_text_factory_images.c @@ -49,7 +49,7 @@ _efl_ui_text_factory_images_efl_object_destructor(Eo *obj, } EOLIAN static Efl_Canvas_Object * -_efl_ui_text_factory_images_efl_canvas_text_factory_create(Eo *obj EINA_UNUSED, +_efl_ui_text_factory_images_efl_canvas_textblock_factory_create(Eo *obj EINA_UNUSED, Efl_Ui_Text_Factory_Images_Data *pd EINA_UNUSED, Efl_Canvas_Object *object, const char *key) diff --git a/src/lib/elementary/efl_ui_text_factory_images.eo b/src/lib/elementary/efl_ui_text_factory_images.eo index eecc69cb91..42ddf1398a 100644 --- a/src/lib/elementary/efl_ui_text_factory_images.eo +++ b/src/lib/elementary/efl_ui_text_factory_images.eo @@ -1,4 +1,4 @@ -class @beta Efl.Ui.Text_Factory.Images extends Efl.Object implements Efl.Canvas.Text_Factory +class @beta Efl.Ui.Text_Factory.Images extends Efl.Object implements Efl.Canvas.Textblock_Factory { [[Factory that creates images given key string @@ -62,6 +62,6 @@ class @beta Efl.Ui.Text_Factory.Images extends Efl.Object implements Efl.Canvas. implements { Efl.Object.constructor; Efl.Object.destructor; - Efl.Canvas.Text_Factory.create; + Efl.Canvas.Textblock_Factory.create; } } diff --git a/src/lib/evas/Efl_Canvas.h b/src/lib/evas/Efl_Canvas.h index ed300478e0..53bc52cfb1 100644 --- a/src/lib/evas/Efl_Canvas.h +++ b/src/lib/evas/Efl_Canvas.h @@ -85,8 +85,8 @@ extern "C" { #include #include #include -#include -#include +#include +#include #include #include #include diff --git a/src/lib/evas/Evas_Eo.h b/src/lib/evas/Evas_Eo.h index 9d873d565d..4d42740252 100644 --- a/src/lib/evas/Evas_Eo.h +++ b/src/lib/evas/Evas_Eo.h @@ -143,14 +143,14 @@ struct _Efl_Canvas_Object_Animation_Event */ /** - * @ingroup Efl_Canvas_Text + * @ingroup Efl_Canvas_Textblock * * @{ */ #include "canvas/efl_text_cursor.eo.h" #include "canvas/efl_text_attribute_factory.eo.h" -#include "canvas/efl_canvas_text.eo.h" -#include "canvas/efl_canvas_text_factory.eo.h" +#include "canvas/efl_canvas_textblock.eo.h" +#include "canvas/efl_canvas_textblock_factory.eo.h" /** * @} */ diff --git a/src/lib/evas/canvas/efl_canvas_text.eo b/src/lib/evas/canvas/efl_canvas_text.eo deleted file mode 100644 index 25153c2bdd..0000000000 --- a/src/lib/evas/canvas/efl_canvas_text.eo +++ /dev/null @@ -1,565 +0,0 @@ -import efl_text_types; - -class @beta Efl.Canvas.Text extends Efl.Canvas.Object implements Efl.Text, - Efl.Canvas.Filter.Internal, Efl.Text_Font, - Efl.Text_Style, Efl.Text_Format, - Efl.Text_Markup, Efl.Ui.I18n -{ - [[This is the Canvas-level text class. This class only takes care of rendering text, - if you need user interaction consider the classes in $Efl.Ui.]] - methods { - @property is_empty { - [[Whether the object is empty (no text) or not. - ]] - get { - } - values { - is_empty: bool; [[$true if empty.]] - } - } - cursor_add { - [[Adds an existing cursor to the text object. - If the cursor already belonged to another text object it will be reassigned to the new one. - It is typically more convenient to obtain a cursor directly from the text object using @.cursor_create. - ]] - params { - cursor: Efl.Text.Cursor; [[The text cursor to use.]] - } - } - cursor_create { - [[Creates a new cursor and adds it to the text object. - This cursor can be used to manipulate and iterate the content of the text object. - ]] - return: Efl.Text.Cursor @move; [[The created text cursor.]] - } - visible_range_get { - [[Returns the currently visible range. - - The given $start and $end cursors are output variables: - they are set to the positions of the start and the end of the - visible range in the text, respectively. - ]] - return: bool; [[$true on success.]] - params { - @in start: Efl.Text.Cursor; [[Range start position.]] - @in end: Efl.Text.Cursor; [[Range end position.]] - } - } - @property style_insets { - [[Gets the left, right, top and bottom insets of the text. - - The inset is any applied padding on the text. - ]] - get {} - values { - l: int; [[Left padding.]] - r: int; [[Right padding.]] - t: int; [[Top padding.]] - b: int; [[Bottom padding.]] - } - } - @property bidi_delimiters { - [[BiDi delimiters are used for in-paragraph separation of bidirectional - segments. This is useful, for example, in the recipient fields of - e-mail clients where bidi oddities can occur when mixing RTL (right-to-left) - and LTR (left-to-right) text. - ]] - set {} - get {} - values { - delim: string; [[A null terminated string of delimiters, e.g ",|" or $null if empty.]] - } - } - @property newline_as_paragraph_separator { - [[When $true, the newline character will behave as a paragraph separator. - ]] - set {} - get {} - values { - mode: bool; [[$true for legacy mode, $false otherwise.]] - } - } - style_apply { - [[Applies a style to the text object. Applied style attributes override old ones, leaving other attributes - unaffected. - This is similar to setting individual style attributes using properties like @Efl.Text_Font.font_slant or - @Efl.Text_Format.wrap. - - The style can be set as "attribute"="Value". - Multible attribute can be set at once separated by space. - - The following styling attributes are accepted: - - - Font - - Font fallback - - Font size - - Font source - - Font weight - - Font style - - Font width - - Language - - Color - - Underline Color - - Second Underline Color - - Underline Dash Color - - Outline Color - - Shadow Color - - First Glow Color - - Second Glow Color - - Backing Color - - Strikethrough Color - - Horizontal Align - - Vertical Align - - Wrap - - Left margin - - Right margin - - Underline - - Strikethrough - - Backing - - Style - - Tabstops - - Line size - - Relative line size - - Line gap - - Relative line gap - - Item - - Line fill - - Ellipsis - - Password - - Underline dash width - - Underline dash gap - - Underline height - - Font - This sets the name of the font to be used. - font= - - Font fallback - A comma delimited list of fonts to try if finding the primary font fails. - font_fallbacks= - - Font size - This sets the the size of font in points to be used. - font_size= - - Font source - Specify source from which to search for the font. - font_source= - - Font weight - Sets the weight of the font. The value must be one of: - "normal" - "thin" - "ultralight" - "extralight" - "light" - "book" - "medium" - "semibold" - "bold" - "ultrabold" - "extrabold" - "black" - "extrablack" - font_weight= - - Font style - Sets the style of the font. The value must be one of: - "normal" - "oblique" - "italic" - font_style=