wip: modify to work with efl 1.20
authorWonki Kim <wonki_.kim@samsung.com>
Thu, 14 Dec 2017 02:52:56 +0000 (11:52 +0900)
committerWonki Kim <wonki_.kim@samsung.com>
Thu, 14 Dec 2017 02:52:56 +0000 (11:52 +0900)
working in progress.
another patchs  will be followed.

Signed-off-by: Wonki Kim <wonki_.kim@samsung.com>
inc/mobile/eext_floatingbutton_common.h
packaging/efl-extension.spec
src/CMakeLists.txt
src/efl_extension_events.c
src/mobile/eext_floatingbutton.c
src/mobile/eext_floatingbutton.eo

index 3e633acfde7cba32f34277c6b2f7075ce1bdbbe3..ff4c70de849471bf3e9e7230ab27f469c54b1158 100644 (file)
 /**
  * Positions where floatingbutton can be placed on
  */
-typedef enum {
-   EEXT_FLOATINGBUTTON_LEFT_OUT = 0, /**< hides in the left, but small handler will show only */
-   EEXT_FLOATINGBUTTON_LEFT, /**< shows all of buttons, but lies on the left */
-   EEXT_FLOATINGBUTTON_CENTER, /**< shows all of buttons, but lies on the center */
-   EEXT_FLOATINGBUTTON_RIGHT, /**< shows all of buttons, but lies on the right */
-   EEXT_FLOATINGBUTTON_RIGHT_OUT, /**< hides in the right, but small handler will show only */
-   EEXT_FLOATINGBUTTON_LAST /**< indicates the last, do not use this **/
-} Eext_Floatingbutton_Pos;
 
-typedef enum {
-   EEXT_FLOATINGBUTTON_MODE_DEFAULT = 0, /**< allows all positions */
-   EEXT_FLOATINGBUTTON_MODE_BOTH_SIDES, /**< allows LEFT and RIGHT positions only */
-   EEXT_FLOATINGBUTTON_MODE_LAST /**< indicates the last, do not use this **/
-} Eext_Floatingbutton_Mode;
+// enum types are described as eo now
+//typedef enum {
+//   EEXT_FLOATINGBUTTON_LEFT_OUT = 0, /**< hides in the left, but small handler will show only */
+//   EEXT_FLOATINGBUTTON_LEFT, /**< shows all of buttons, but lies on the left */
+//   EEXT_FLOATINGBUTTON_CENTER, /**< shows all of buttons, but lies on the center */
+//   EEXT_FLOATINGBUTTON_RIGHT, /**< shows all of buttons, but lies on the right */
+//   EEXT_FLOATINGBUTTON_RIGHT_OUT, /**< hides in the right, but small handler will show only */
+//   EEXT_FLOATINGBUTTON_LAST /**< indicates the last, do not use this **/
+//} Eext_Floatingbutton_Pos;
+
+//typedef enum {
+//   EEXT_FLOATINGBUTTON_MODE_DEFAULT = 0, /**< allows all positions */
+//   EEXT_FLOATINGBUTTON_MODE_BOTH_SIDES, /**< allows LEFT and RIGHT positions only */
+//   EEXT_FLOATINGBUTTON_MODE_LAST /**< indicates the last, do not use this **/
+//} Eext_Floatingbutton_Mode;
+
 
 /**
  * @}
index 8ef16a4c3afabcae29bff1cc9ac675be9ea24b90..6dc177d4d647eae76163e538f15a9679d5a84d70 100644 (file)
@@ -69,9 +69,9 @@ cmake . -DLIB_INSTALL_DIR:PATH=%{_libdir} \
        -DCMAKE_INSTALL_PREFIX=/usr
 %endif
 
+make clean
 make %{?jobs:-j%jobs}
 
-
 %install
 %make_install
 
index 315ba23839dd50521ab741ba24c395dbeef8d2b6..cd9e81f5467426d3196249eb9b7cbe80461476ff 100755 (executable)
@@ -44,14 +44,12 @@ foreach(eo_file ${ALL_EO_FILES})
        GET_FILENAME_COMPONENT(dir ${eo_file} PATH)
        GET_FILENAME_COMPONENT(eo_file_name ${eo_file} NAME)
        string(REPLACE .eo .eo.c out_c_file ${eo_file_name})
-       string(REPLACE .eo .eo.h out_h_file ${eo_file_name})
-       string(REPLACE .eo .eo.legacy.h out_legacy_file ${eo_file_name})
        string(REPLACE .eo .c c_file ${eo_file_name})
        add_custom_command(
                OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/${dir}/${out_c_file}
-               COMMAND /usr/bin/eolian_gen ${eo_file} --eo --legacy --gc -I /usr/share/eolian/include -o ${dir}/${out_c_file}
-               COMMAND /usr/bin/eolian_gen ${eo_file} --eo --gh -I /usr/share/eolian/include -o "../inc/${dir}/${out_h_file}"
-               COMMAND /usr/bin/eolian_gen ${eo_file} --legacy --gh -I /usr/share/eolian/include -o "../inc/${dir}/${out_legacy_file}"
+               COMMAND /usr/bin/eolian_gen -g c -I /usr/share/eolian/include -o "${dir}/${eo_file_name}" ${eo_file}
+               COMMAND /usr/bin/eolian_gen -g h -I /usr/share/eolian/include -o "../inc/${dir}/${eo_file_name}" ${eo_file}
+               COMMAND /usr/bin/eolian_gen -g l -I /usr/share/eolian/include -o "../inc/${dir}/${eo_file_name}" ${eo_file}
                DEPENDS ${eo_file} ${CMAKE_CURRENT_SOURCE_DIR}/${dir}/*.eo
                COMMENT "Compiling Eo: ${eo_file}, Output eo : ${dir}/${out_c_file}"
                VERBATIM)
index e9b2cba11b04f6d1b60fd7d449361521bac62863..dea024bcda47084829b713f09abaa176b4eaae05 100644 (file)
@@ -170,8 +170,8 @@ _eext_find_event_target(Eina_List *candidates, Evas_Object *parent, Eext_Callbac
    Eina_List *members = NULL;
    Eext_Event_Callback *callback;
 
-//   if (eo_isa(parent, EVAS_OBJECT_SMART_CLASS))
-   if (eo_isa(parent, evas_object_smart_class_get()))
+//   if (efl_isa(parent, EVAS_OBJECT_SMART_CLASS))
+   if (efl_isa(parent, efl_object_class_get()))
      members = evas_object_smart_members_get(parent);
 
    if (members)
index acfc8978581d8bedfd3ffaff52807299a1df891c..dca51474a5d34904c9efc7e4a8235a1b16350ea9 100644 (file)
@@ -16,6 +16,7 @@
 
 #define ELM_INTERFACE_ATSPI_COMPONENT_PROTECTED
 #define ELM_INTERNAL_API_ARGESFSDFEFC 1
+#define ELM_WIDGET_PROTECTED
 
 #include <Eo.h>
 
@@ -29,6 +30,7 @@
 #define MY_CLASS_NAME "Eext_Floatingbutton"
 #define MY_CLASS_NAME_LEGACY "eext_floatingbutton"
 
+
 static const char SIG_PRESSED[] = "pressed";
 static const char SIG_UNPRESSED[] = "unpressed";
 
@@ -463,26 +465,26 @@ EAPI Evas_Object *
 eext_floatingbutton_add(Evas_Object *parent)
 {
    if (!parent) return NULL;
-   Evas_Object *obj = eo_add(MY_CLASS, parent);
+   Evas_Object *obj = efl_add(MY_CLASS, parent);
 
    return obj;
 }
 
 EOLIAN static Eo *
-_eext_floatingbutton_eo_base_constructor(Eo *obj, Eext_Floatingbutton_Data *sd EINA_UNUSED)
+_eext_floatingbutton_efl_object_constructor(Eo *obj, Eext_Floatingbutton_Data *sd EINA_UNUSED)
 {
-   obj = eo_do_super_ret(obj, MY_CLASS, obj, eo_constructor());
-   eo_do(obj,
-         evas_obj_type_set(MY_CLASS_NAME_LEGACY),
-         evas_obj_smart_callbacks_descriptions_set(_smart_callbacks));
+   obj = efl_constructor(efl_super(obj, MY_CLASS));
+
+   efl_canvas_object_type_set(obj, MY_CLASS_NAME_LEGACY);
+   evas_object_smart_callbacks_descriptions_set(obj, _smart_callbacks);
 
    return obj;
 }
 
 EOLIAN static void
-_eext_floatingbutton_evas_object_smart_add(Eo *obj, Eext_Floatingbutton_Data *priv)
+_eext_floatingbutton_efl_canvas_group_group_add(Eo *obj, Eext_Floatingbutton_Data *priv)
 {
-   eo_do_super(obj, MY_CLASS, evas_obj_smart_add());
+   efl_canvas_group_add(efl_super(obj, MY_CLASS));
    elm_widget_sub_object_parent_add(obj);
 
    priv->obj = obj;
@@ -521,7 +523,7 @@ _eext_floatingbutton_evas_object_smart_add(Eo *obj, Eext_Floatingbutton_Data *pr
 }
 
 EOLIAN static void
-_eext_floatingbutton_class_constructor(Eo_Class *klass)
+_eext_floatingbutton_class_constructor(Efl_Class *klass)
 {
    evas_smart_legacy_type_register(MY_CLASS_NAME_LEGACY, klass);
 }
@@ -529,7 +531,7 @@ _eext_floatingbutton_class_constructor(Eo_Class *klass)
 static void
 _btn_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED)
 {
-   Eext_Floatingbutton_Data *fbd = eo_data_scope_get((Eo *)data, EEXT_FLOATINGBUTTON_CLASS);
+   Eext_Floatingbutton_Data *fbd = efl_data_scope_get((Eo *)data, EEXT_FLOATINGBUTTON_CLASS);
 
    if (!fbd) return;
 
@@ -543,10 +545,11 @@ _btn_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *event_info
 }
 
 EOLIAN static Eina_Bool
-_eext_floatingbutton_elm_container_content_set(Eo *obj, Eext_Floatingbutton_Data *sd, const char *part, Evas_Object *content)
+_eext_floatingbutton_efl_container_content_set(Eo *obj, Eext_Floatingbutton_Data *sd,Efl_Gfx *content)
 {
    Eina_Bool int_ret = EINA_FALSE;
    char buf[256];
+   char *part = "test";
 
    if ((!part) || (!content)) return int_ret;
 
@@ -583,7 +586,7 @@ _eext_floatingbutton_elm_container_content_set(Eo *obj, Eext_Floatingbutton_Data
         int_ret = EINA_TRUE;
      }
    else
-     eo_do_super(obj, MY_CLASS, int_ret = elm_obj_container_content_set(part, content));
+     int_ret = efl_content_set(obj, content);
 
    _box_recalc(obj, sd);
    _update_pos(obj, sd, EINA_TRUE);
@@ -591,11 +594,13 @@ _eext_floatingbutton_elm_container_content_set(Eo *obj, Eext_Floatingbutton_Data
    return int_ret;
 }
 
-EOLIAN static Evas_Object *
-_eext_floatingbutton_elm_container_content_get(Eo *obj, Eext_Floatingbutton_Data *sd, const char *part)
+EOLIAN static Efl_Gfx *
+_eext_floatingbutton_efl_container_content_get(Eo *obj, Eext_Floatingbutton_Data *sd)
 {
    Evas_Object *ret = NULL;
 
+   char *part ="test";
+
    if (!part) return ret;
 
    if (!strcmp(part, BTN1_PART))
@@ -603,15 +608,16 @@ _eext_floatingbutton_elm_container_content_get(Eo *obj, Eext_Floatingbutton_Data
    else if (!strcmp(part, BTN2_PART))
      ret = sd->btn2;
    else
-     eo_do_super(obj, MY_CLASS, ret = elm_obj_container_content_get(part));
+     ret = efl_content_get(obj);
 
    return ret;
 }
 
-EOLIAN static Evas_Object *
-_eext_floatingbutton_elm_container_content_unset(Eo *obj, Eext_Floatingbutton_Data *sd, const char *part)
+EOLIAN static Efl_Gfx *
+_eext_floatingbutton_efl_container_content_unset(Eo *obj, Eext_Floatingbutton_Data *sd)
 {
    Evas_Object *ret = NULL;
+   char *part = "test";
 
    if (!part) return ret;
 
@@ -632,7 +638,7 @@ _eext_floatingbutton_elm_container_content_unset(Eo *obj, Eext_Floatingbutton_Da
         sd->btn2 = NULL;
      }
    else
-     eo_do_super(obj, MY_CLASS, ret = elm_obj_container_content_unset(part));
+     ret = efl_content_unset(obj);
 
    _box_recalc(obj, sd);
    _update_pos(obj, sd, EINA_TRUE);
@@ -640,14 +646,14 @@ _eext_floatingbutton_elm_container_content_unset(Eo *obj, Eext_Floatingbutton_Da
    return ret;
 }
 
-EOLIAN static Elm_Theme_Apply
+EOLIAN static Efl_Ui_Theme_Apply
 _eext_floatingbutton_elm_widget_theme_apply(Eo *obj, Eext_Floatingbutton_Data *sd)
 {
-   Elm_Theme_Apply int_ret = ELM_THEME_APPLY_FAILED;
+   Efl_Ui_Theme_Apply int_ret = EFL_UI_THEME_APPLY_FAILED;
    char buf[256];
 
-   eo_do_super(obj, MY_CLASS, int_ret = elm_obj_widget_theme_apply());
-   if (!int_ret) return ELM_THEME_APPLY_FAILED;
+   int_ret = elm_obj_widget_theme_apply(efl_super(obj, MY_CLASS));
+   if (!int_ret) return EFL_UI_THEME_APPLY_FAILED;
 
    snprintf(buf, sizeof(buf), "floatingbutton/%s", elm_object_style_get(obj));
 
@@ -703,7 +709,7 @@ _eext_floatingbutton_mode_get(Eo *obj,
 }
 
 EOLIAN static void
-_eext_floatingbutton_elm_interface_atspi_component_extents_get(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd, Eina_Bool screen_coords, int *x, int *y, int *w, int *h)
+_eext_floatingbutton_efl_access_component_extents_get(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd, Eina_Bool screen_coords, int *x, int *y, int *w, int *h)
 {
    int ee_x, ee_y;
 
@@ -728,13 +734,13 @@ _eext_floatingbutton_elm_interface_atspi_component_extents_get(Eo *obj EINA_UNUS
 }
 
 EOLIAN static Eina_Bool
-_eext_floatingbutton_elm_widget_mirrored_get(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd EINA_UNUSED)
+_eext_floatingbutton_efl_ui_base_mirrored_get(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd EINA_UNUSED)
 {
    return EINA_FALSE;
 }
 
 EOLIAN static void
-_eext_floatingbutton_elm_widget_mirrored_set(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd EINA_UNUSED, Eina_Bool mirrored EINA_UNUSED)
+_eext_floatingbutton_efl_ui_base_mirrored_set(Eo *obj EINA_UNUSED, Eext_Floatingbutton_Data *sd EINA_UNUSED, Eina_Bool mirrored EINA_UNUSED)
 {
 
 }
index 4d2ddacd9a5e61bfc73224bc817f45aabb543d6f..2fd071e4c4f164a7e52880c76876132e98f18f78 100644 (file)
@@ -1,4 +1,20 @@
-class Eext.Floatingbutton (Elm.Layout) {
+
+enum Eext_Floatingbutton_Pos {
+   EEXT_FLOATINGBUTTON_LEFT_OUT = 0, /**< hides in the left, but small handler will show only */
+   EEXT_FLOATINGBUTTON_LEFT, /**< shows all of buttons, but lies on the left */
+   EEXT_FLOATINGBUTTON_CENTER, /**< shows all of buttons, but lies on the center */
+   EEXT_FLOATINGBUTTON_RIGHT, /**< shows all of buttons, but lies on the right */
+   EEXT_FLOATINGBUTTON_RIGHT_OUT, /**< hides in the right, but small handler will show only */
+   EEXT_FLOATINGBUTTON_LAST /**< indicates the last, do not use this **/
+}
+
+enum Eext_Floatingbutton_Mode {
+   EEXT_FLOATINGBUTTON_MODE_DEFAULT = 0, /**< allows all positions */
+   EEXT_FLOATINGBUTTON_MODE_BOTH_SIDES, /**< allows LEFT and RIGHT positions only */
+   EEXT_FLOATINGBUTTON_MODE_LAST /**< indicates the last, do not use this **/
+}
+
+class Eext.Floatingbutton (Efl.Ui.Layout, Efl.Container) {
    eo_prefix: eext_obj_floatingbutton;
    methods {
       @property pos {
@@ -47,7 +63,7 @@ class Eext.Floatingbutton (Elm.Layout) {
             ]]
          }
          values {
-            block: Eina_Bool; [[ the floatingbutton movability ]]
+            block: bool; [[ the floatingbutton movability ]]
          }
       }
       @property mode {
@@ -80,7 +96,7 @@ class Eext.Floatingbutton (Elm.Layout) {
 
          see eext_floatingbutton_pos_set()
          ]]
-         return: Eina_Bool;
+         return: bool;
          params {
             @in pos: const(Eext_Floatingbutton_Pos); [[ the floatingbutton position ]]
          }
@@ -88,13 +104,12 @@ class Eext.Floatingbutton (Elm.Layout) {
    }
    implements {
       class.constructor;
-      Eo.Base.constructor;
-      Evas.Object_Smart.add;
-      Elm.Container.content_set;
-      Elm.Container.content_get;
-      Elm.Container.content_unset;
-      Elm.Widget.mirrored;
+      Efl.Object.constructor;
+//      Efl.Canvas.Group.group_add;
+      Efl.Container.content { get; set; }
+      Efl.Container.content_unset;
+      Efl.Ui.Base.mirrored { get; set; }
       Elm.Widget.theme_apply;
-      Elm_Interface_Atspi_Component.extents.get;
+//      Efl.Access.Component.extents.get; // TODO : there will be this definition once we rebase onto upstream/master
    }
 }