summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2017-05-17 11:29:11 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2017-05-17 15:32:04 +0900
commita9d11ab9e82ac506b267676b4a2fffd5106a1392 (patch)
treeb081f98c5b7936464ba18900a45f7eb66c840e5b
parentafbdaf514a911ab0d3afb8880c4c67f62334f885 (diff)
downloadefl-a9d11ab9e82ac506b267676b4a2fffd5106a1392.tar.gz
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
-rw-r--r--src/lib/elementary/elm_gen.h48
-rw-r--r--src/lib/elementary/elm_general.eot52
-rw-r--r--src/lib/elementary/elm_gengrid.eo1
-rw-r--r--src/lib/elementary/elm_gengrid_item.eo2
-rw-r--r--src/lib/elementary/elm_genlist_item.eo2
5 files changed, 53 insertions, 52 deletions
diff --git a/src/lib/elementary/elm_gen.h b/src/lib/elementary/elm_gen.h
index 9f2bef7370..a1985c944a 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 4bde308d45..e9dd416509 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 f61af3501a..0e9b1e16d9 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 375dbaa1a2..ba11961266 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 0ecd147430..5530c7f4a1 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