*/
EINA_DEPRECATED EAPI void elm_gengrid_item_data_set(Elm_Object_Item *it, const void *data);
+/**
+ * Set whether a given gengrid item is disabled or not.
+ *
+ * @param it The gengrid item
+ * @param disabled Use @c EINA_TRUE, true disable it, @c EINA_FALSE
+ * to enable it back.
+ *
+ * A disabled item cannot be selected or unselected. It will also
+ * change its appearance, to signal the user it's disabled.
+ *
+ * @see elm_gengrid_item_disabled_get()
+ * @deprecated Use elm_object_item_disabled_set() instead
+ *
+ * @ingroup Gengrid
+ */
+EINA_DEPRECATED EAPI void elm_gengrid_item_disabled_set(Elm_Object_Item *it, Eina_Bool disabled);
+
+/**
+ * Get whether a given gengrid item is disabled or not.
+ *
+ * @param it The gengrid item
+ * @return @c EINA_TRUE, if it's disabled, @c EINA_FALSE otherwise
+ * (and on errors).
+ *
+ * @see elm_gengrid_item_disabled_set() for more details
+ * @deprecated Use elm_object_item_disabled_get() instead
+ *
+ * @ingroup Gengrid
+ */
+EINA_DEPRECATED EAPI Eina_Bool elm_gengrid_item_disabled_get(const Elm_Object_Item *it);
+
return it->wd->item_compare_cb(it, item1);
}
+static void
+_item_disable_hook(Elm_Object_Item *it)
+{
+ ELM_OBJ_ITEM_CHECK_OR_RETURN(it);
+ Elm_Gen_Item *_it = (Elm_Gen_Item *) it;
+
+ if (_it->generation < _it->wd->generation) return;
+
+ if (_it->realized)
+ {
+ if (elm_widget_item_disabled_get(_it))
+ edje_object_signal_emit(VIEW(_it), "elm,state,disabled", "elm");
+ else
+ edje_object_signal_emit(VIEW(_it), "elm,state,enabled", "elm");
+ }
+}
+
static Elm_Gen_Item *
_item_new(Widget_Data *wd,
const Elm_Gengrid_Item_Class *itc,
it = _elm_genlist_item_new(wd, itc, data, NULL, func, func_data);
if (!it) return NULL;
+ elm_widget_item_disable_hook_set(it, _item_disable_hook);
it->item = ELM_NEW(Elm_Gen_Item_Type);
wd->count++;
it->group = it->itc->item_style && (!strcmp(it->itc->item_style, "group_index"));
elm_gengrid_item_disabled_set(Elm_Object_Item *it,
Eina_Bool disabled)
{
- ELM_OBJ_ITEM_CHECK_OR_RETURN(it);
- Elm_Gen_Item *_it = (Elm_Gen_Item *) it;
-
- if (_it->base.disabled == disabled) return;
- if (_it->generation < _it->wd->generation) return;
- _it->base.disabled = !!disabled;
- if (_it->realized)
- {
- if (elm_widget_item_disabled_get(_it))
- edje_object_signal_emit(VIEW(_it), "elm,state,disabled", "elm");
- else
- edje_object_signal_emit(VIEW(_it), "elm,state,enabled", "elm");
- }
+ elm_object_item_disabled_set(it, disabled);
}
EAPI Eina_Bool
elm_gengrid_item_disabled_get(const Elm_Object_Item *it)
{
- ELM_WIDGET_ITEM_WIDTYPE_CHECK_OR_RETURN(it, EINA_FALSE);
- Elm_Gen_Item *_it = (Elm_Gen_Item *) it;
-
- if (_it->generation < _it->wd->generation) return EINA_FALSE;
- return elm_widget_item_disabled_get(_it);
+ return elm_object_item_disabled_get(it);
}
static Evas_Object *
* elm_gengrid_item_selected_set(). To get its selected state use
* elm_gengrid_item_selected_get(). To make an item disabled
* (unable to be selected and appear differently) use
- * elm_gengrid_item_disabled_set() to set this and
- * elm_gengrid_item_disabled_get() to get the disabled state.
+ * elm_object_item_disabled_set() to set this and
+ * elm_object_item_disabled_get() to get the disabled state.
*
* Grid cells will only have their selection smart callbacks called
* when firstly getting selected. Any further clicks will do
EAPI void elm_gengrid_item_bring_in(Elm_Object_Item *it);
/**
- * Set whether a given gengrid item is disabled or not.
- *
- * @param it The gengrid item
- * @param disabled Use @c EINA_TRUE, true disable it, @c EINA_FALSE
- * to enable it back.
- *
- * A disabled item cannot be selected or unselected. It will also
- * change its appearance, to signal the user it's disabled.
- *
- * @see elm_gengrid_item_disabled_get()
- *
- * @ingroup Gengrid
- */
-EAPI void elm_gengrid_item_disabled_set(Elm_Object_Item *it, Eina_Bool disabled);
-
-/**
- * Get whether a given gengrid item is disabled or not.
- *
- * @param it The gengrid item
- * @return @c EINA_TRUE, if it's disabled, @c EINA_FALSE otherwise
- * (and on errors).
- *
- * @see elm_gengrid_item_disabled_set() for more details
- *
- * @ingroup Gengrid
- */
-EAPI Eina_Bool elm_gengrid_item_disabled_get(const Elm_Object_Item *it);
-
-/**
* Set the text to be shown in a given gengrid item's tooltips.
*
* @param it The gengrid item