_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_Del_Pre_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
item->del_pre_func = func;
}
/**
Elm_Widget_Style_Set_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
item->style_set_func = func;
}
Elm_Widget_Style_Get_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
item->style_get_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",
_elm_widget_item_widget_get(const Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, NULL);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item, NULL);
+
return item->widget;
}
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;
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_item_style_set(Elm_Widget_Item *item, const char *style)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
item->style_set_func(item, style);
}
Elm_Widget_Disable_Cb func)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
item->disable_func = func;
}
const char *label)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
Elm_Translate_String_Data *ts;
if (!label)
const char *part)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, NULL);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item, NULL);
+
Elm_Translate_String_Data *ts;
ts = _translate_string_data_get(item->translate_strings, part);
if (ts) return ts->string;
Eina_Bool translatable)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
Elm_Translate_String_Data *ts;
const char *text;
_elm_widget_item_track_cancel(Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
if (!item->track_obj) return;
elm_widget_item_track(Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, NULL);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item, NULL);
if (item->track_obj)
{
elm_widget_item_untrack(Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
if (!item->track_obj) return;
evas_object_unref(item->track_obj);
elm_widget_item_track_get(const Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, 0);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item, 0);
if (!item->track_obj) return 0;
return evas_object_ref_get(item->track_obj);
const char *text)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
EINA_SAFETY_ON_NULL_RETURN(text);
text = eina_stringshare_add(text);
const char *text)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
EINA_SAFETY_ON_NULL_RETURN(text);
text = eina_stringshare_add(text);
Elm_Widget_Item_Tooltip *wit;
ELM_WIDGET_ITEM_CHECK_OR_GOTO(item, error_noitem);
+ //ELM_WIDGET_ITEM_RETURN_IF_GOTO(item, error_noitem);
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);
}
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_window_mode_get(const Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, EINA_FALSE);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item, EINA_FALSE);
+
return elm_object_tooltip_window_mode_get(item->view);
}
_elm_widget_item_tooltip_style_get(const Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(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_Label_Data *label;
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
if (!item->text_get_func)
{
_elm_widget_item_part_text_custom_update(Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
if (item->labels)
eina_hash_foreach(item->labels,
_elm_widget_item_part_text_custom_foreach, item);
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;
}
void *data)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
EINA_SAFETY_ON_NULL_RETURN(func);
Elm_Widget_Item_Signal_Data *wisd;
Eina_List *l;
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, NULL);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item, NULL);
EINA_SAFETY_ON_NULL_RETURN_VAL(func, NULL);
EINA_LIST_FOREACH(item->signals, l, wisd)
const char *txt)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
+
eina_stringshare_del(item->access_info);
if (!txt) item->access_info = NULL;
else item->access_info = eina_stringshare_add(txt);
_elm_widget_item_translate(Elm_Widget_Item *item)
{
ELM_WIDGET_ITEM_CHECK_OR_RETURN(item);
+ ELM_WIDGET_ITEM_RETURN_IF_ONDEL(item);
#ifdef HAVE_GETTEXT
Elm_Translate_String_Data *ts;