jpeg pushed a commit to branch master.

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

commit a9d11ab9e82ac506b267676b4a2fffd5106a1392
Author: Jean-Philippe Andre <[email protected]>
Date:   Wed May 17 11:29:11 2017 +0900

    elm: Remove some of Gen_Item types from EO
    
    Those belong to legacy only, EO interfaces will use models
    and objects, not function pointers and item classes.
    
    Ref T5329
---
 src/lib/elementary/elm_gen.h           | 48 +++++++++++++++++++++++++++++++
 src/lib/elementary/elm_general.eot     | 52 ----------------------------------
 src/lib/elementary/elm_gengrid.eo      |  1 +
 src/lib/elementary/elm_gengrid_item.eo |  2 ++
 src/lib/elementary/elm_genlist_item.eo |  2 ++
 5 files changed, 53 insertions(+), 52 deletions(-)

diff --git a/src/lib/elementary/elm_gen.h b/src/lib/elementary/elm_gen.h
index 9f2bef7..a1985c9 100644
--- a/src/lib/elementary/elm_gen.h
+++ b/src/lib/elementary/elm_gen.h
@@ -1,3 +1,9 @@
+/* Type definitions for elementary generic items (genlist, gengrid, ...).
+ * Only for legacy.
+ */
+
+#ifndef EFL_NOLEGACY_API_SUPPORT
+
 typedef struct Elm_Gen_Item             Elm_Gen_Item;
 
 /**
@@ -57,3 +63,45 @@ typedef Evas_Object                  
*(*Elm_Gen_Item_Reusable_Content_Get_Cb)(vo
 
 #define ELM_GEN_ITEM_CLASS_VERSION 3
 #define ELM_GEN_ITEM_CLASS_HEADER ELM_GEN_ITEM_CLASS_VERSION, 0, 0
+
+
+/** Elementary genlist/gengrid callback functions data structure */
+typedef struct _Elm_Gen_Item_Class_Functions
+{
+  Elm_Gen_Item_Text_Get_Cb text_get; /**< Text fetching class function for 
genlist/gengrid item classes. */
+  Elm_Gen_Item_Content_Get_Cb content_get; /**< Content fetching class 
function for genlist/gengrid item classes. */
+  Elm_Gen_Item_State_Get_Cb state_get; /**< State fetching class function for 
genlist/gengrid item classes. */
+  Elm_Gen_Item_Del_Cb del; /**< Deletion class function for genlist/gengrid 
item classes. */
+  Elm_Gen_Item_Filter_Get_Cb filter_get; /**< Filter seeking class function 
for genlist/gengrid item classes. */
+  Elm_Gen_Item_Reusable_Content_Get_Cb reusable_content_get; /**< Reusable 
content get class function for gen item classes. */
+} Elm_Gen_Item_Class_Functions;
+
+/** Gengrid or Genlist item class definition. */
+typedef struct _Elm_Gen_Item_Class
+{
+  int version; /**< Set by elementary if you alloc an item class using
+                * elm_genlist/gengrid_item_class_new(), or if you set your own
+                * class (must be const) then set it to
+                * ELM_GENLIST/GENGRID_ITEM_CLASS_VERSION. */
+  unsigned int refcount; /**< Set it to 0 if you use your own const class, or
+                          * its managed for you by class ref/unref calls. */
+  Eina_Bool delete_me; /**< Leave this alone - set it to 0 if you have a const
+                        * class of your own. */
+  const char *item_style; /**< Name of the visual style to use for this item. 
If
+                           * you don't know use "default". */
+  const char *decorate_item_style; /**< Style used if item is set to a decorate
+                                    * mode. see 
elm_genlist_item_decorate_mode_set() or
+                                    * NULL if you don't care. currently it's 
used only in genlist. */
+  const char *decorate_all_item_style; /**< Style to use when in edit mode, or
+                                        * NULL if you don't care. Currently
+                                        * it's used only in genlist. */
+  Elm_Gen_Item_Class_Functions func; /**< Set of callbacks */
+} Elm_Gen_Item_Class;
+
+/** See @ref Elm_Gen_Item_Class. */
+typedef Elm_Gen_Item_Class Elm_Gengrid_Item_Class;
+
+/** See @ref Elm_Gen_Item_Class. */
+typedef Elm_Gen_Item_Class Elm_Genlist_Item_Class;
+
+#endif
diff --git a/src/lib/elementary/elm_general.eot 
b/src/lib/elementary/elm_general.eot
index 4bde308..e9dd416 100644
--- a/src/lib/elementary/elm_general.eot
+++ b/src/lib/elementary/elm_general.eot
@@ -7,63 +7,11 @@ struct Elm.Event.Policy_Changed
 }
 
 /* FIXME: These shouldn't be here, we don't do functions in eolian!!! */
-type Elm_Gen_Item_Text_Get_Cb: __undefined_type; [[Elementary genlist/gengrid 
item text callback type]]
-type Elm_Gen_Item_Content_Get_Cb: __undefined_type; [[Elementary 
genlist/gengrid item content callback type]]
-type Elm_Gen_Item_State_Get_Cb: __undefined_type; [[Elementary genlist/gengrid 
item state callback type]]
-type Elm_Gen_Item_Del_Cb: __undefined_type; [[Elementary genlist/gengrid item 
del callback type]]
-type Elm_Gen_Item_Filter_Get_Cb: __undefined_type; [[Elementary 
genlist/gengrid item filter callback type]]
-type Elm_Gen_Item_Reusable_Content_Get_Cb: __undefined_type; [[Elementary 
genlist/gengrid item reusable content callback type]]
 type Elm_Tooltip_Item_Content_Cb: __undefined_type; [[Elementary tooltip item 
content callback type]]
 type Elm_Object_Item_Signal_Cb: __undefined_type; [[Elementary object item 
signal callback type]]
 type Evas_Smart_Cb: __undefined_type; [[Evas smart callback type]]
 type Eina_Compare_Cb: __undefined_type; [[Eina compare callback type]]
 
-/* FIXME: This shouldn't be here, we don't do functions in eolian!!! */
-struct Elm.Gen.Item.Class.Functions
-{
-   [[Elementary genlist/gengrid callback functions data structure]]
-   text_get: Elm_Gen_Item_Text_Get_Cb; [[ Text fetching class function for
-                                          genlist/gengrid item classes. ]]
-   content_get: Elm_Gen_Item_Content_Get_Cb; [[ Content fetching class function
-                                                for genlist/gengrid item 
classes. ]]
-   state_get: Elm_Gen_Item_State_Get_Cb; [[ State fetching class function for
-                                            genlist/gengrid item classes. ]]
-   del: Elm_Gen_Item_Del_Cb; [[ Deletion class function for genlist/gengrid
-                                item classes. ]]
-   filter_get: Elm_Gen_Item_Filter_Get_Cb;  [[ Filter seeking class function 
for
-                                               genlist/gengrid item classes. ]]
-   reusable_content_get: Elm_Gen_Item_Reusable_Content_Get_Cb; [[ Reusable 
content get class
-                                                                  function for 
gen item classes. ]]
-
-}
-
-struct Elm.Gen.Item.Class
-{
-   [[ Gengrid or Genlist item class definition. ]]
-   version: int; [[Set by elementary if you alloc an item class using
-                   elm_genlist/gengrid_item_class_new(), or if you set your own
-                   class (must be const) then set it to
-                   ELM_GENLIST/GENGRID_ITEM_CLASS_VERSION. ]]
-   refcount: uint; [[ Set it to 0 if you use your own const class, or
-                              its managed for you by class ref/unref calls. ]]
-   delete_me: bool; [[ Leave this alone - set it to 0 if you have a
-                               const class of your own. ]]
-   item_style: string; [[ Name of the visual style to use for this item.
-                                If you don't know use "default". ]]
-   decorate_item_style: string; [[ Style used if item is set to a decorate
-                                         mode. see 
elm_genlist_item_decorate_mode_set()
-                                         or NULL if you don't care. currently
-                                         it's used only in genlist. ]]
-   decorate_all_item_style: string; [[ Style to use when in edit mode, or
-                                             NULL if you don't care. Currently
-                                             it's used only in genlist. ]]
-   func: Elm.Gen.Item.Class.Functions; [[ Set of callbacks ]]
-}
-
-type Elm.Gengrid.Item.Class: Elm.Gen.Item.Class; [[ See @Elm.Gen.Item.Class. ]]
-
-type Elm.Genlist.Item.Class: Elm.Gen.Item.Class; [[ See @Elm.Gen.Item.Class. ]]
-
 enum Elm.Glob.Match_Flags
 {
    [[Glob matching bitfiled flags. @since 1.11]]
diff --git a/src/lib/elementary/elm_gengrid.eo 
b/src/lib/elementary/elm_gengrid.eo
index f61af35..0e9b1e1 100644
--- a/src/lib/elementary/elm_gengrid.eo
+++ b/src/lib/elementary/elm_gengrid.eo
@@ -1,5 +1,6 @@
 import elm_general;
 import ecore_types;
+import elm_gengrid_item;
 
 enum Elm.Gengrid.Reorder_Type
 {
diff --git a/src/lib/elementary/elm_gengrid_item.eo 
b/src/lib/elementary/elm_gengrid_item.eo
index 375dbaa..ba11961 100644
--- a/src/lib/elementary/elm_gengrid_item.eo
+++ b/src/lib/elementary/elm_gengrid_item.eo
@@ -1,5 +1,7 @@
 import elm_general;
 
+type @extern Elm.Gengrid.Item.Class: __undefined_type;
+
 enum Elm.Gengrid.Item.Scrollto_Type
 {
    [[Defines where to position the item in the genlist.]]
diff --git a/src/lib/elementary/elm_genlist_item.eo 
b/src/lib/elementary/elm_genlist_item.eo
index 0ecd147..5530c7f 100644
--- a/src/lib/elementary/elm_genlist_item.eo
+++ b/src/lib/elementary/elm_genlist_item.eo
@@ -1,5 +1,7 @@
 import elm_general;
 
+type @extern Elm.Genlist.Item.Class: __undefined_type;
+
 enum Elm.Genlist.Item.Type
 {
    [[Defines if the item is of any special type (has subitems or it's the

-- 


Reply via email to