widget: Remove more functions from EO
authorJean-Philippe Andre <jp.andre@samsung.com>
Wed, 23 Aug 2017 10:51:49 +0000 (19:51 +0900)
committerJean-Philippe Andre <jp.andre@samsung.com>
Wed, 23 Aug 2017 11:53:20 +0000 (20:53 +0900)
Internaaaaaaaalsssss....

Ref T5363

src/lib/elementary/efl_ui_win.c
src/lib/elementary/elm_widget.c
src/lib/elementary/elm_widget.eo

index 87cbbbe..52993e2 100644 (file)
@@ -6602,7 +6602,7 @@ _on_atspi_bus_connected(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUS
               * focused object **/
              unsigned int order = 0;
              Evas_Object *target;
-             target = elm_obj_widget_newest_focus_order_get(win, &order, EINA_TRUE);
+             target = elm_widget_newest_focus_order_get(win, &order, EINA_TRUE);
              if (target)
                elm_interface_atspi_accessible_state_changed_signal_emit(target, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
           }
index 962bff9..8d5c26c 100644 (file)
@@ -1821,13 +1821,15 @@ elm_widget_tree_unfocusable_get(const Eo *obj)
  *
  * @ingroup Widget
  */
-EOLIAN static Eina_List*
-_elm_widget_can_focus_child_list_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd)
+EAPI Eina_List*
+elm_widget_can_focus_child_list_get(const Eo *obj)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
    const Eina_List *l;
    Eina_List *child_list = NULL;
    Evas_Object *child;
 
+   if (!sd) return NULL;
    EINA_LIST_FOREACH(sd->subobjs, l, child)
      {
         if (!_elm_widget_is(child)) continue;
@@ -1918,9 +1920,13 @@ _elm_widget_focus_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd)
    return (sd->focused && sd->top_win_focused);
 }
 
-EOLIAN static Eina_Bool
-_elm_widget_highlight_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd)
+/** @internal */
+EAPI Eina_Bool
+elm_widget_highlight_get(const Eo *obj)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return EINA_FALSE;
+
    return sd->highlighted;
 }
 
@@ -4387,12 +4393,14 @@ _elm_widget_focus_order_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd)
    return sd->focus_order;
 }
 
-EOLIAN static Evas_Object*
-_elm_widget_newest_focus_order_get(const Eo *obj, Elm_Widget_Smart_Data *sd, unsigned int *newest_focus_order, Eina_Bool can_focus_only)
+EAPI Evas_Object*
+elm_widget_newest_focus_order_get(const Eo *obj, unsigned int *newest_focus_order, Eina_Bool can_focus_only)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
    const Eina_List *l;
    Evas_Object *child, *cur, *best;
 
+   if (!sd) return NULL;
    if (!evas_object_visible_get(obj)
        || (elm_widget_disabled_get(obj))
        || (elm_widget_tree_unfocusable_get(obj)))
index 5154ec4..31384ea 100644 (file)
@@ -380,24 +380,12 @@ abstract Elm.Widget (Efl.Canvas.Group, Elm.Interface.Atspi_Accessible,
             return: int; [[FIXME]]
          }
       }
-      @property can_focus_child_list {
-        [[Can focus children list]]
-         get {
-            return: free(own(list<Efl.Canvas.Object>), eina_list_free) @warn_unused; [[List of children which can focus]]
-         }
-      }
       @property focused_item {
          get {
             [[Get the focused widget item.]]
             return: Elm.Widget.Item; [[Focused item]]
          }
       }
-      @property highlight {
-        [[Highlight property]]
-         get {
-            return: bool; [[$true if widget is highlight, $false otherwise]]
-         }
-      }
       @property focused_object {
          [[Current focused object in object tree.]]
          get {
@@ -413,14 +401,6 @@ abstract Elm.Widget (Efl.Canvas.Group, Elm.Interface.Atspi_Accessible,
             label: string; [[Label]]
          }
       }
-      newest_focus_order_get @const {
-        [[Get newest focus in order]]
-         return: Efl.Canvas.Object; [[Handle to focused widget]]
-         params {
-            @out newest_focus_order: uint; [[Newest focus order]]
-            @in can_focus_only: bool; [[$true only us widgets which can focus, $false otherweise]]
-         }
-      }
       scroll_hold_push {
          [[Push scroll hold]]
       }