jpeg pushed a commit to branch master.

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

commit e9dfcb44ffe370f6507d563f45676609bd93a41a
Author: Jean-Philippe Andre <[email protected]>
Date:   Mon Sep 25 15:33:31 2017 +0900

    widget: Implement translation API in layout
    
    This moves the API entry points from Widget to Layout parts. I don't
    think the other widgets support translation, but that is easy to fix.
    The actual code implementation remains in elm_widget.c.
    
    Legacy-only widgets are covered by Part_Legacy, while all EO widgets
    that have text inherit from Layout (except Win but I don't think the
    window title was translatable in legacy).
    
    This removes 2/3 remaining part APIs from Widget.
    
    Ref T5363
---
 src/lib/elementary/efl_ui_clock.c               |  1 +
 src/lib/elementary/efl_ui_layout.c              | 29 +++++++++++++
 src/lib/elementary/efl_ui_layout_part_legacy.eo |  4 +-
 src/lib/elementary/efl_ui_layout_part_text.eo   |  4 +-
 src/lib/elementary/efl_ui_win.c                 |  1 +
 src/lib/elementary/elc_combobox.c               |  1 +
 src/lib/elementary/elc_ctxpopup.c               |  2 +-
 src/lib/elementary/elc_hoversel.c               |  3 +-
 src/lib/elementary/elc_multibuttonentry.c       |  1 +
 src/lib/elementary/elc_naviframe.c              |  1 +
 src/lib/elementary/elc_popup.c                  |  1 +
 src/lib/elementary/elm_dayselector.c            |  1 +
 src/lib/elementary/elm_diskselector.c           |  1 +
 src/lib/elementary/elm_list.c                   |  1 +
 src/lib/elementary/elm_main.c                   | 10 ++++-
 src/lib/elementary/elm_menu.c                   |  3 +-
 src/lib/elementary/elm_segment_control.c        |  1 +
 src/lib/elementary/elm_toolbar.c                |  1 +
 src/lib/elementary/elm_widget.c                 | 54 +++++++++----------------
 src/lib/elementary/elm_widget.eo                | 17 --------
 src/lib/elementary/elm_widget.h                 |  5 +--
 21 files changed, 81 insertions(+), 61 deletions(-)

diff --git a/src/lib/elementary/efl_ui_clock.c 
b/src/lib/elementary/efl_ui_clock.c
index 5de015f2e5..6ab8fd99e0 100644
--- a/src/lib/elementary/efl_ui_clock.c
+++ b/src/lib/elementary/efl_ui_clock.c
@@ -3,6 +3,7 @@
 #endif
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/efl_ui_layout.c 
b/src/lib/elementary/efl_ui_layout.c
index d31c39db64..6ba041d75d 100644
--- a/src/lib/elementary/efl_ui_layout.c
+++ b/src/lib/elementary/efl_ui_layout.c
@@ -2565,6 +2565,20 @@ 
ELM_PART_OVERRIDE_CONTENT_UNSET_FULL(efl_ui_layout_part_content, efl_ui_layout,
 ELM_PART_OVERRIDE_TEXT_GET_FULL(efl_ui_layout_part_text, efl_ui_layout, 
EFL_UI_LAYOUT, Efl_Ui_Layout_Data)
 ELM_PART_OVERRIDE_TEXT_SET_FULL(efl_ui_layout_part_text, efl_ui_layout, 
EFL_UI_LAYOUT, Efl_Ui_Layout_Data)
 
+EOLIAN static const char *
+_efl_ui_layout_part_text_efl_ui_translatable_translatable_text_get(Eo *obj, 
void *_pd EINA_UNUSED, const char **domain)
+{
+   Elm_Part_Data *pd = efl_data_scope_get(obj, EFL_UI_WIDGET_PART_CLASS);
+   return elm_widget_part_translatable_text_get(pd->obj, pd->part, domain);
+}
+
+EOLIAN static void
+_efl_ui_layout_part_text_efl_ui_translatable_translatable_text_set(Eo *obj, 
void *_pd EINA_UNUSED, const char *label, const char *domain)
+{
+   Elm_Part_Data *pd = efl_data_scope_get(obj, EFL_UI_WIDGET_PART_CLASS);
+   elm_widget_part_translatable_text_set(pd->obj, pd->part, label, domain);
+}
+
 /* Efl.Ui.Layout.Part_Legacy */
 ELM_PART_OVERRIDE_CONTENT_GET_FULL(efl_ui_layout_part_legacy, efl_ui_layout, 
EFL_UI_LAYOUT, Efl_Ui_Layout_Data)
 ELM_PART_OVERRIDE_CONTENT_SET_FULL(efl_ui_layout_part_legacy, efl_ui_layout, 
EFL_UI_LAYOUT, Efl_Ui_Layout_Data)
@@ -2572,6 +2586,21 @@ 
ELM_PART_OVERRIDE_CONTENT_UNSET_FULL(efl_ui_layout_part_legacy, efl_ui_layout, E
 ELM_PART_OVERRIDE_TEXT_GET_FULL(efl_ui_layout_part_legacy, efl_ui_layout, 
EFL_UI_LAYOUT, Efl_Ui_Layout_Data)
 ELM_PART_OVERRIDE_TEXT_SET_FULL(efl_ui_layout_part_legacy, efl_ui_layout, 
EFL_UI_LAYOUT, Efl_Ui_Layout_Data)
 
+EOLIAN static const char *
+_efl_ui_layout_part_legacy_efl_ui_translatable_translatable_text_get(Eo *obj, 
void *_pd EINA_UNUSED, const char **domain)
+{
+   Elm_Part_Data *pd = efl_data_scope_get(obj, EFL_UI_WIDGET_PART_CLASS);
+   return elm_widget_part_translatable_text_get(pd->obj, pd->part, domain);
+}
+
+EOLIAN static void
+_efl_ui_layout_part_legacy_efl_ui_translatable_translatable_text_set(Eo *obj, 
void *_pd EINA_UNUSED, const char *label, const char *domain)
+{
+   Elm_Part_Data *pd = efl_data_scope_get(obj, EFL_UI_WIDGET_PART_CLASS);
+   elm_widget_part_translatable_text_set(pd->obj, pd->part, label, domain);
+}
+
+/* Efl.Ui.Layout.Part_Xxx includes */
 #include "efl_ui_layout_part.eo.c"
 #include "efl_ui_layout_part_content.eo.c"
 #include "efl_ui_layout_part_text.eo.c"
diff --git a/src/lib/elementary/efl_ui_layout_part_legacy.eo 
b/src/lib/elementary/efl_ui_layout_part_legacy.eo
index 8904b90222..3d4d335521 100644
--- a/src/lib/elementary/efl_ui_layout_part_legacy.eo
+++ b/src/lib/elementary/efl_ui_layout_part_legacy.eo
@@ -1,4 +1,5 @@
-class Efl.Ui.Layout.Part_Legacy (Efl.Ui.Layout.Part, Efl.Container, Efl.Text)
+class Efl.Ui.Layout.Part_Legacy (Efl.Ui.Layout.Part, Efl.Container, Efl.Text,
+                                 Efl.Ui.Translatable)
 {
    [[Elementary layout internal part class]]
    data: null;
@@ -6,5 +7,6 @@ class Efl.Ui.Layout.Part_Legacy (Efl.Ui.Layout.Part, 
Efl.Container, Efl.Text)
       Efl.Container.content { get; set; }
       Efl.Container.content_unset;
       Efl.Text.text { set; get; }
+      Efl.Ui.Translatable.translatable_text { get; set; }
    }
 }
diff --git a/src/lib/elementary/efl_ui_layout_part_text.eo 
b/src/lib/elementary/efl_ui_layout_part_text.eo
index ce53d49f00..b117a5fbae 100644
--- a/src/lib/elementary/efl_ui_layout_part_text.eo
+++ b/src/lib/elementary/efl_ui_layout_part_text.eo
@@ -1,8 +1,10 @@
-class Efl.Ui.Layout.Part_Text (Efl.Ui.Layout.Part, Efl.Text)
+class Efl.Ui.Layout.Part_Text (Efl.Ui.Layout.Part, Efl.Text,
+                               Efl.Ui.Translatable)
 {
    [[Elementary layout internal part class]]
    data: null;
    implements {
       Efl.Text.text { set; get; }
+      Efl.Ui.Translatable.translatable_text { get; set; }
    }
 }
diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 1a94b70c2e..06607a6ed6 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -9,6 +9,7 @@
 #define EFL_GFX_SIZE_HINT_PROTECTED
 #define EFL_CANVAS_OBJECT_BETA
 #define EFL_CANVAS_OBJECT_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 #define EFL_UI_WIN_INLINED_PROTECTED
 #define EFL_UI_WIN_BETA
 
diff --git a/src/lib/elementary/elc_combobox.c 
b/src/lib/elementary/elc_combobox.c
index b172153e7c..e11feb208d 100644
--- a/src/lib/elementary/elc_combobox.c
+++ b/src/lib/elementary/elc_combobox.c
@@ -5,6 +5,7 @@
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_WIDGET_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/elc_ctxpopup.c 
b/src/lib/elementary/elc_ctxpopup.c
index d53cb203e8..166ef966c4 100644
--- a/src/lib/elementary/elc_ctxpopup.c
+++ b/src/lib/elementary/elc_ctxpopup.c
@@ -4,9 +4,9 @@
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
-
 #define ELM_WIDGET_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 
diff --git a/src/lib/elementary/elc_hoversel.c 
b/src/lib/elementary/elc_hoversel.c
index d4973b103c..3f0f12611f 100644
--- a/src/lib/elementary/elc_hoversel.c
+++ b/src/lib/elementary/elc_hoversel.c
@@ -4,9 +4,10 @@
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
-
 #define ELM_WIDGET_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
+
 #include <Elementary.h>
 #include "elm_priv.h"
 #include "elm_hoversel.eo.h"
diff --git a/src/lib/elementary/elc_multibuttonentry.c 
b/src/lib/elementary/elc_multibuttonentry.c
index 90538e4bcb..3740e09061 100644
--- a/src/lib/elementary/elc_multibuttonentry.c
+++ b/src/lib/elementary/elc_multibuttonentry.c
@@ -5,6 +5,7 @@
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/elc_naviframe.c 
b/src/lib/elementary/elc_naviframe.c
index 6975a701b4..c6a3e56c13 100644
--- a/src/lib/elementary/elc_naviframe.c
+++ b/src/lib/elementary/elc_naviframe.c
@@ -6,6 +6,7 @@
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
 #define ELM_WIDGET_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c
index 7f0e45ef82..63130ca7ad 100644
--- a/src/lib/elementary/elc_popup.c
+++ b/src/lib/elementary/elc_popup.c
@@ -6,6 +6,7 @@
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_WIDGET_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/elm_dayselector.c 
b/src/lib/elementary/elm_dayselector.c
index 7274b84985..88de718a65 100644
--- a/src/lib/elementary/elm_dayselector.c
+++ b/src/lib/elementary/elm_dayselector.c
@@ -3,6 +3,7 @@
 #endif
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/elm_diskselector.c 
b/src/lib/elementary/elm_diskselector.c
index eea10e492b..cc72466fab 100644
--- a/src/lib/elementary/elm_diskselector.c
+++ b/src/lib/elementary/elm_diskselector.c
@@ -5,6 +5,7 @@
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 #include "elm_priv.h"
diff --git a/src/lib/elementary/elm_list.c b/src/lib/elementary/elm_list.c
index e0f2f92f34..26d88065dc 100644
--- a/src/lib/elementary/elm_list.c
+++ b/src/lib/elementary/elm_list.c
@@ -6,6 +6,7 @@
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define EFL_ACCESS_SELECTION_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 
diff --git a/src/lib/elementary/elm_main.c b/src/lib/elementary/elm_main.c
index 4d65e56052..f433d57030 100644
--- a/src/lib/elementary/elm_main.c
+++ b/src/lib/elementary/elm_main.c
@@ -1484,14 +1484,20 @@ EAPI void
 elm_object_domain_translatable_part_text_set(Evas_Object *obj, const char 
*part, const char *domain, const char *text)
 {
    EINA_SAFETY_ON_NULL_RETURN(obj);
-   elm_widget_domain_translatable_part_text_set(obj, part, domain, text);
+   if (!part)
+     efl_ui_translatable_text_set(obj, text, domain);
+   else
+     efl_ui_translatable_text_set(efl_part(obj, part), text, domain);
 }
 
 EAPI const char *
 elm_object_translatable_part_text_get(const Evas_Object *obj, const char *part)
 {
    EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
-   return elm_widget_translatable_part_text_get(obj, part);
+   if (!part)
+     return efl_ui_translatable_text_get(obj, NULL);
+   else
+     return efl_ui_translatable_text_get(efl_part(obj, part), NULL);
 }
 
 EAPI void
diff --git a/src/lib/elementary/elm_menu.c b/src/lib/elementary/elm_menu.c
index 29d8caaa13..5348ea707f 100644
--- a/src/lib/elementary/elm_menu.c
+++ b/src/lib/elementary/elm_menu.c
@@ -5,8 +5,9 @@
 #define ELM_WIDGET_PROTECTED
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define EFL_ACCESS_SELECTION_PROTECTED
-
 #define ELM_WIDGET_ITEM_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
+
 #include <Elementary.h>
 
 #include "elm_priv.h"
diff --git a/src/lib/elementary/elm_segment_control.c 
b/src/lib/elementary/elm_segment_control.c
index 8ea9689ee7..11a1753b8c 100644
--- a/src/lib/elementary/elm_segment_control.c
+++ b/src/lib/elementary/elm_segment_control.c
@@ -4,6 +4,7 @@
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 
diff --git a/src/lib/elementary/elm_toolbar.c b/src/lib/elementary/elm_toolbar.c
index 37955b7738..4e96ac6a07 100644
--- a/src/lib/elementary/elm_toolbar.c
+++ b/src/lib/elementary/elm_toolbar.c
@@ -6,6 +6,7 @@
 #define EFL_ACCESS_SELECTION_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define ELM_WIDGET_ITEM_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 
diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index fca0787b42..3efab18acf 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -8,6 +8,7 @@
 #define ELM_WIDGET_ITEM_PROTECTED
 #define EFL_CANVAS_OBJECT_BETA
 #define EFL_INPUT_EVENT_PROTECTED
+#define EFL_UI_TRANSLATABLE_PROTECTED
 
 #include <Elementary.h>
 
@@ -3787,11 +3788,15 @@ _part_text_translatable_set(Eina_Inlist 
**translate_strings, const char *part, E
    return ts;
 }
 
-EOLIAN static void
-_elm_widget_domain_translatable_part_text_set(Eo *obj, Elm_Widget_Smart_Data 
*sd, const char *part, const char *domain, const char *label)
+/* internal */
+void
+elm_widget_part_translatable_text_set(Eo *obj, const char *part, const char 
*label, const char *domain)
 {
-
    Elm_Translate_String_Data *ts;
+   Elm_Widget_Smart_Data *sd;
+
+   sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return;
 
    if (!label)
      {
@@ -3817,16 +3822,6 @@ _elm_widget_domain_translatable_part_text_set(Eo *obj, 
Elm_Widget_Smart_Data *sd
    sd->on_translate = EINA_FALSE;
 }
 
-EOLIAN static const char*
-_elm_widget_translatable_part_text_get(const Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *sd, const char *part)
-{
-   Elm_Translate_String_Data *ts;
-
-   ts = _translate_string_data_get(sd->translate_strings, part);
-   if (ts) return ts->string;
-   else return NULL;
-}
-
 EOLIAN static void
 _elm_widget_domain_part_text_translatable_set(Eo *obj, Elm_Widget_Smart_Data 
*sd, const char *part, const char *domain, Eina_Bool translatable)
 {
@@ -3853,32 +3848,23 @@ _elm_widget_domain_part_text_translatable_set(Eo *obj, 
Elm_Widget_Smart_Data *sd
    sd->on_translate = EINA_FALSE;
 }
 
-static const char*
-_part_text_translate(Eina_Inlist *translate_strings,
-                     const char *part,
-                     const char *text)
+/* internal */
+const char *
+elm_widget_part_translatable_text_get(const Eo *obj, const char *part, const 
char **domain)
 {
+   Elm_Widget_Smart_Data *sd;
    Elm_Translate_String_Data *ts;
-   ts = _translate_string_data_get(translate_strings, part);
-   if (!ts) return text;
 
-   if (!ts->string) ts->string = eina_stringshare_add(text);
-   else eina_stringshare_replace(&ts->string, text);
-#ifdef HAVE_GETTEXT
-   if (text && text[0])
-     text = dgettext(ts->domain, text);
-#endif
-   return text;
-}
+   if (domain) *domain = NULL;
 
-EAPI const char*
-elm_widget_part_text_translate(Eo *obj, const char *part, const char *text)
-{
-   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return NULL;
+
+   ts = _translate_string_data_get(sd->translate_strings, part);
+   if (!ts) return NULL;
 
-   if (!sd) return text;
-   if (!sd->translate_strings || sd->on_translate) return text;
-   return _part_text_translate(sd->translate_strings, part, text);
+   if (domain) *domain = ts->domain;
+   return ts->string;
 }
 
 EOLIAN static void
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index 123c8baecc..679b7beff0 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -296,23 +296,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
             translatable: bool; [[$true if translatable, $false otherwise]]
          }
       }
-      translatable_part_text_get @const {
-         [[Get translatable part text]]
-         return: string; [[Part text]]
-         params {
-            @in part: string; [[Part name]]
-         }
-      }
-      @property domain_translatable_part_text {
-         [[Domain translatable text part property]]
-         set {
-         }
-         values {
-            part: string; [[Part name]]
-            domain: string; [[Domain name]]
-            label: string; [[Label]]
-         }
-      }
 
       /* Internal hooks. */
       widget_sub_object_add @protected {
diff --git a/src/lib/elementary/elm_widget.h b/src/lib/elementary/elm_widget.h
index a57630fd28..dd99b0273b 100644
--- a/src/lib/elementary/elm_widget.h
+++ b/src/lib/elementary/elm_widget.h
@@ -635,7 +635,6 @@ EAPI Eina_Bool        elm_widget_api_check(int ver);
 EAPI Eina_Bool        elm_widget_access(Evas_Object *obj, Eina_Bool is_access);
 EAPI Efl_Ui_Theme_Apply  elm_widget_theme(Evas_Object *obj);
 EAPI void             elm_widget_theme_specific(Evas_Object *obj, Elm_Theme 
*th, Eina_Bool force);
-EAPI void             efl_ui_translatable_translation_update(Evas_Object *obj);
 EAPI void             elm_widget_on_show_region_hook_set(Evas_Object *obj, 
void *data, Efl_Ui_Scrollable_On_Show_Region func, Eina_Free_Cb data_free);
 EAPI Eina_Bool        elm_widget_sub_object_parent_add(Evas_Object *sobj);
 EAPI Eina_Bool        elm_widget_sub_object_add(Evas_Object *obj, Evas_Object 
*sobj);
@@ -728,10 +727,8 @@ EAPI void             
elm_widget_focus_mouse_up_handle(Evas_Object *obj);
 EAPI void             elm_widget_activate(Evas_Object *obj, Elm_Activate act);
 EAPI void             elm_widget_part_text_set(Evas_Object *obj, const char 
*part, const char *label);
 EAPI const char      *elm_widget_part_text_get(const Evas_Object *obj, const 
char *part);
-EAPI void             elm_widget_domain_translatable_part_text_set(Evas_Object 
*obj, const char *part, const char *domain, const char *text);
 EAPI const char      *elm_widget_translatable_part_text_get(const Evas_Object 
*obj, const char *part);
 EAPI void             elm_widget_domain_part_text_translatable_set(Evas_Object 
*obj, const char *part, const char *domain, Eina_Bool translatable);
-EAPI const char *     elm_widget_part_text_translate(Evas_Object *obj, const 
char *part, const char *text);
 EAPI void             elm_widget_content_part_set(Evas_Object *obj, const char 
*part, Evas_Object *content);
 EAPI Evas_Object     *elm_widget_content_part_get(const Evas_Object *obj, 
const char *part);
 EAPI Evas_Object     *elm_widget_content_part_unset(Evas_Object *obj, const 
char *part);
@@ -743,6 +740,8 @@ EAPI Eina_Rect        
elm_widget_focus_highlight_geometry_get(const Evas_Object
 void                  _elm_widget_item_highlight_in_theme(Evas_Object *obj, 
Elm_Object_Item *it);
 EAPI void             elm_widget_focus_region_show_mode_set(Evas_Object *obj, 
Elm_Focus_Region_Show_Mode mode);
 EAPI Elm_Focus_Region_Show_Mode elm_widget_focus_region_show_mode_get(const 
Evas_Object *obj);
+const char           *elm_widget_part_translatable_text_get(const Eo *obj, 
const char *part, const char **domain);
+void                  elm_widget_part_translatable_text_set(Eo *obj, const 
char *part, const char *label, const char *domain);
 
 /* debug function. don't use it unless you are tracking parenting issues */
 EAPI void             elm_widget_tree_dump(const Evas_Object *top);

-- 


Reply via email to