Dear all.
genlist item class had mode_item_style.
it used for mode styling (such as sweep mode).
one genlist can have multiple mode style.
And mode_item_style's an item's attribute.
So it's better to move to item class from widget_data.
Thank you.
From 8975c9d0f06be21a1aa35a8f8f82307e9737d0eb Mon Sep 17 00:00:00 2001
From: Hyoyoung Chang <hyoyoung.ch...@samsung.com>
Date: Tue, 21 Feb 2012 17:53:49 +0900
Subject: [PATCH 2/3] [genlist] move mode_item_style to item_class
---
src/bin/test_genlist.c | 2 +-
src/lib/elm_deprecated.h | 28 ++++++++++++++++++++++++++++
src/lib/elm_deprecated_before.h | 1 +
src/lib/elm_gen_common.h | 1 -
src/lib/elm_genlist.c | 14 +++++++-------
src/lib/elm_genlist.h | 28 ----------------------------
6 files changed, 37 insertions(+), 37 deletions(-)
diff --git a/src/bin/test_genlist.c b/src/bin/test_genlist.c
index aeb7c80..6bb0e9a 100644
--- a/src/bin/test_genlist.c
+++ b/src/bin/test_genlist.c
@@ -1791,11 +1791,11 @@ test_genlist10(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
evas_object_show(gl);
itc10.item_style = "default";
+ itc10.mode_item_style = "mode";
itc10.func.text_get = gl10_text_get;
itc10.func.content_get = gl10_content_get;
itc10.func.state_get = gl_state_get;
itc10.func.del = gl_del;
- elm_genlist_mode_item_style_set(gl, "mode");
for (i = 0; i < 50; i++)
elm_genlist_item_append(gl,
diff --git a/src/lib/elm_deprecated.h b/src/lib/elm_deprecated.h
index ef6ab77..86d7bc0 100644
--- a/src/lib/elm_deprecated.h
+++ b/src/lib/elm_deprecated.h
@@ -1920,6 +1920,34 @@ EINA_DEPRECATED EAPI void elm_genlist_item_del(Elm_Obje
*/
EINA_DEPRECATED EAPI Evas_Object *elm_genlist_item_genlist_get(const Elm_Object_Item *it);
+/**
+ * Get the mode item style of items in the genlist
+ * @param obj The genlist object
+ * @return The mode item style string, or NULL if none is specified
+ *
+ * This is a constant string and simply defines the name of the
+ * style that will be used for mode animations. It can be
+ * @c NULL if you don't plan to use Genlist mode. See
+ * elm_genlist_item_mode_set() for more info.
+ *
+ * @ingroup Genlist
+ */
+EINA_DEPRECATED EAPI const char *elm_genlist_mode_item_style_get(const Evas_Object *obj);
+
+/**
+ * Set the mode item style of items in the genlist
+ * @param obj The genlist object
+ * @param style The mode item style string, or NULL if none is desired
+ *
+ * This is a constant string and simply defines the name of the
+ * style that will be used for mode animations. It can be
+ * @c NULL if you don't plan to use Genlist mode. See
+ * elm_genlist_item_mode_set() for more info.
+ *
+ * @ingroup Genlist
+ */
+EINA_DEPRECATED EAPI void elm_genlist_mode_item_style_set(Evas_Object *obj, const char *style);
+
#define ELM_IMAGE_ROTATE_90_CW 1
#define ELM_IMAGE_ROTATE_180_CW 2
diff --git a/src/lib/elm_deprecated_before.h b/src/lib/elm_deprecated_before.h
index 97cf026..a2c0a90 100644
--- a/src/lib/elm_deprecated_before.h
+++ b/src/lib/elm_deprecated_before.h
@@ -13,6 +13,7 @@ struct _Elm_Gen_Item_Class
unsigned int refcount;
Eina_Bool delete_me : 1;
const char *item_style;
+ const char *mode_item_style;
struct _Elm_Gen_Item_Class_Func
{
Elm_Gen_Item_Text_Get_Cb text_get;
diff --git a/src/lib/elm_gen_common.h b/src/lib/elm_gen_common.h
index 28f8b1d..7dfeeb5 100644
--- a/src/lib/elm_gen_common.h
+++ b/src/lib/elm_gen_common.h
@@ -126,7 +126,6 @@ struct _Widget_Data
Ecore_Timer *multi_timer, *scr_hold_timer;
Ecore_Animator *reorder_move_animator;
const char *mode_type;
- const char *mode_item_style;
unsigned int start_time;
Evas_Coord prev_x, prev_y, prev_mx, prev_my;
Evas_Coord cur_x, cur_y, cur_mx, cur_my;
diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index ad98448..101c009 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -2957,7 +2957,7 @@ _mode_item_realize(Elm_Gen_Item *it)
if (it->item->order_num_in & 0x1) strncat(buf, "_odd", sizeof(buf) - strlen(buf));
strncat(buf, "/", sizeof(buf) - strlen(buf));
- strncat(buf, it->wd->mode_item_style, sizeof(buf) - strlen(buf));
+ strncat(buf, it->itc->mode_item_style, sizeof(buf) - strlen(buf));
_elm_theme_object_set(WIDGET(it), it->item->mode_view, "genlist", buf,
elm_widget_style_get(WIDGET(it)));
@@ -5240,7 +5240,7 @@ elm_genlist_item_mode_set(Elm_Object_Item *it,
(!strcmp(mode_type, wd->mode_type)) &&
(mode_set))
return;
- if (!wd->mode_item_style) return;
+ if (!_it->itc->mode_item_style) return;
_it->mode_set = mode_set;
if (wd->multi)
@@ -5265,14 +5265,13 @@ elm_genlist_item_mode_set(Elm_Object_Item *it,
if (mode_set) _item_mode_set(_it);
}
-
EAPI const char *
elm_genlist_mode_item_style_get(const Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd = elm_widget_data_get(obj);
if (!wd) return NULL;
- return wd->mode_item_style;
+ return wd->mode_item->itc->mode_item_style;
}
EAPI void
@@ -5281,10 +5280,11 @@ elm_genlist_mode_item_style_set(Evas_Object *obj, const char *style)
ELM_CHECK_WIDTYPE(obj, widtype);
Widget_Data *wd = elm_widget_data_get(obj);
if (!wd) return;
- if ((style == wd->mode_item_style) || (style && wd->mode_item_style &&
- (!strcmp(style, wd->mode_item_style))))
+ if ((style == wd->mode_item->itc->mode_item_style) ||
+ (style && wd->mode_item->itc->mode_item_style &&
+ (!strcmp(style, wd->mode_item->itc->mode_item_style))))
return;
- eina_stringshare_replace(&wd->mode_item_style, style);
+ eina_stringshare_replace((const char**)&wd->mode_item->itc->mode_item_style, style);
elm_genlist_realized_items_update(obj);
}
diff --git a/src/lib/elm_genlist.h b/src/lib/elm_genlist.h
index 0775cec..0fb17c9 100644
--- a/src/lib/elm_genlist.h
+++ b/src/lib/elm_genlist.h
@@ -940,34 +940,6 @@ EAPI Elm_Object_Item *elm_genlist_selected_item_get(const Evas_Objec
EAPI const Eina_List *elm_genlist_selected_items_get(const Evas_Object *obj);
/**
- * Get the mode item style of items in the genlist
- * @param obj The genlist object
- * @return The mode item style string, or NULL if none is specified
- *
- * This is a constant string and simply defines the name of the
- * style that will be used for mode animations. It can be
- * @c NULL if you don't plan to use Genlist mode. See
- * elm_genlist_item_mode_set() for more info.
- *
- * @ingroup Genlist
- */
-EAPI const char *elm_genlist_mode_item_style_get(const Evas_Object *obj);
-
-/**
- * Set the mode item style of items in the genlist
- * @param obj The genlist object
- * @param style The mode item style string, or NULL if none is desired
- *
- * This is a constant string and simply defines the name of the
- * style that will be used for mode animations. It can be
- * @c NULL if you don't plan to use Genlist mode. See
- * elm_genlist_item_mode_set() for more info.
- *
- * @ingroup Genlist
- */
-EAPI void elm_genlist_mode_item_style_set(Evas_Object *obj, const char *style);
-
-/**
* Get a list of realized items in genlist
*
* @param obj The genlist object
--
1.7.5.4
------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel