From 04fd641a3168531e88f04e2bdd19527f882f26e7 Mon Sep 17 00:00:00 2001 From: seoz Date: Thu, 23 Feb 2012 03:15:40 +0000 Subject: [PATCH] elm genlist: Added mode_item_style to Elm_Genlist_Item_Class and removed elm_genlist_mode_item_style_get/set APIs. Patch by Hyoyoung Chang On Wed, Feb 22, 2012 at 8:55 PM, Hyoyoung Chang wrote: > 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. git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/elementary@68294 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- 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 b712ffa..af22533 100644 --- a/src/bin/test_genlist.c +++ b/src/bin/test_genlist.c @@ -1746,11 +1746,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 = NULL; - 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 84d19b5..a42e1cc 100644 --- a/src/lib/elm_deprecated.h +++ b/src/lib/elm_deprecated.h @@ -1935,6 +1935,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 f01754d..ac82f03 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 386c10e..1005734 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))); @@ -5249,7 +5249,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) @@ -5274,14 +5274,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 @@ -5290,10 +5289,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 6b66917..d1bd948 100644 --- a/src/lib/elm_genlist.h +++ b/src/lib/elm_genlist.h @@ -942,34 +942,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 -- 2.7.4