_elm_widget_item_del(Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+ item->on_deletion = EINA_TRUE;
//Widget item delete callback
if (item->del_pre_func)
_elm_widget_item_del_pre_hook_set(Elm_Widget_Item *item, Elm_Widget_Del_Pre_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
item->del_pre_func = func;
}
Evas_Smart_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
if ((item->del_func) && (item->del_func != func))
WRN("You're replacing a previously set del_cb %p of item %p with %p",
const void *data)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
if ((item->data) && (item->data != data))
DBG("Replacing item %p data %p with %p", item, item->data, data);
item->data = data;
_elm_widget_item_disabled_set(Elm_Widget_Item *item, Eina_Bool disabled)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
if (item->disabled == disabled) return;
item->disabled = !!disabled;
Elm_Widget_Disable_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
item->disable_func = func;
}
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
EINA_SAFETY_ON_NULL_RETURN(text);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
text = eina_stringshare_add(text);
_elm_widget_item_tooltip_content_cb_set
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
EINA_SAFETY_ON_NULL_RETURN(text);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
text = eina_stringshare_add(text);
_elm_widget_item_tooltip_content_cb_set
Elm_Widget_Item_Tooltip *wit;
ELM_WIDGET_ITEM_CHECK_OR_GOTO(item, error_noitem);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
if (!func)
{
_elm_widget_item_tooltip_unset(Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
elm_object_tooltip_unset(item->view);
}
const char *style)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
elm_object_tooltip_style_set(item->view, style);
}
_elm_widget_item_tooltip_window_mode_set(Elm_Widget_Item *item, Eina_Bool disable)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, EINA_FALSE);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item, EINA_FALSE);
+
return elm_object_tooltip_window_mode_set(item->view, disable);
}
_elm_widget_item_tooltip_style_get(const Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, NULL);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item, NULL);
+
return elm_object_tooltip_style_get(item->view);
}
const char *cursor)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
elm_object_sub_cursor_set(item->view, item->widget, cursor);
}
_elm_widget_item_cursor_unset(Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
elm_object_cursor_unset(item->view);
}
const char *style)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
elm_object_cursor_style_set(item->view, style);
}
Eina_Bool engine_only)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
elm_object_cursor_theme_search_enabled_set(item->view, engine_only);
}
Evas_Object *content)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
if (!item->content_set_func)
{
ERR("%s does not support elm_object_item_part_content_set() API.",
const char *part)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, NULL);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item, NULL);
+
if (!item->content_get_func)
{
ERR("%s does not support elm_object_item_part_content_get() API.",
const char *part)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, NULL);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item, NULL);
+
if (!item->content_unset_func)
{
ERR("%s does not support elm_object_item_part_content_unset() API.",
const char *label)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
if (!item->text_set_func)
{
ERR("%s does not support elm_object_item_part_text_set() API.",
const char *part)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, NULL);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item, NULL);
if (!item->text_get_func)
{
ERR("%s does not support elm_object_item_part_text_get() API.",
Elm_Widget_Content_Set_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
item->content_set_func = func;
}
Elm_Widget_Content_Get_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
item->content_get_func = func;
}
Elm_Widget_Content_Unset_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
item->content_unset_func = func;
}
Elm_Widget_Text_Set_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
item->text_set_func = func;
}
Elm_Widget_Text_Get_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
item->text_get_func = func;
}
const char *source)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
if (item->signal_emit_func)
item->signal_emit_func((Elm_Object_Item *)item, emission, source);
}
Elm_Widget_Signal_Emit_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
item->signal_emit_func = func;
}
_elm_widget_item_access_info_set(Elm_Widget_Item *item, const char *txt)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
if (item->access_info) eina_stringshare_del(item->access_info);
if (!txt) item->access_info = NULL;
else item->access_info = eina_stringshare_add(txt);