elm genlist: Added mode_item_style to Elm_Genlist_Item_Class and
authorseoz <seoz@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 23 Feb 2012 03:15:40 +0000 (03:15 +0000)
committerseoz <seoz@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 23 Feb 2012 03:15:40 +0000 (03:15 +0000)
removed elm_genlist_mode_item_style_get/set APIs. Patch by Hyoyoung
Chang <hyoyoung@gmail.com>

On Wed, Feb 22, 2012 at 8:55 PM, Hyoyoung Chang <hyoyoung@gmail.com>
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
src/lib/elm_deprecated.h
src/lib/elm_deprecated_before.h
src/lib/elm_gen_common.h
src/lib/elm_genlist.c
src/lib/elm_genlist.h

index b712ffa..af22533 100644 (file)
@@ -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,
index 84d19b5..a42e1cc 100644 (file)
@@ -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
index 97cf026..a2c0a90 100644 (file)
@@ -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;
index f01754d..ac82f03 100644 (file)
@@ -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;
index 386c10e..1005734 100644 (file)
@@ -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);
 }
 
index 6b66917..d1bd948 100644 (file)
@@ -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