forked from enlightenment/efl
elementary/widget - just removed macros duplicated impl.
SVN revision: 67666
This commit is contained in:
parent
01f1670317
commit
4ea4e28f15
|
@ -2637,6 +2637,32 @@ elm_widget_type_check(const Evas_Object *obj,
|
|||
return EINA_FALSE;
|
||||
}
|
||||
|
||||
EAPI Eina_Bool
|
||||
elm_widget_item_type_check(const Evas_Object *obj,
|
||||
const char *type,
|
||||
const char *func)
|
||||
{
|
||||
const char *provided, *expected = "(unknown)";
|
||||
static int abort_on_warn = -1;
|
||||
provided = elm_widget_type_get(obj);
|
||||
if (EINA_LIKELY(provided == type)) return EINA_TRUE;
|
||||
if (type) expected = type;
|
||||
if ((!provided) || (!provided[0]))
|
||||
{
|
||||
provided = evas_object_type_get(obj);
|
||||
if ((!provided) || (!provided[0]))
|
||||
provided = "(unknown)";
|
||||
}
|
||||
ERR("Passing Object: %p in function: %s, of type: '%s' when expecting type: '%s'", obj, func, provided, expected);
|
||||
if (abort_on_warn == -1)
|
||||
{
|
||||
if (getenv("ELM_ERROR_ABORT")) abort_on_warn = 1;
|
||||
else abort_on_warn = 0;
|
||||
}
|
||||
if (abort_on_warn == 1) abort();
|
||||
return EINA_FALSE;
|
||||
}
|
||||
|
||||
static Evas_Object *
|
||||
_widget_name_find(const Evas_Object *obj, const char *name, int recurse)
|
||||
{
|
||||
|
|
|
@ -290,14 +290,6 @@ struct _Elm_Object_Item
|
|||
|
||||
#define ELM_NEW(t) calloc(1, sizeof(t))
|
||||
|
||||
#define ELM_OBJ_ITEM_CHECK_OR_RETURN(it, ...) \
|
||||
ELM_WIDGET_ITEM_CHECK_OR_RETURN((Elm_Widget_Item *)(it), __VA_ARGS__); \
|
||||
ELM_CHECK_WIDTYPE(WIDGET(it), widtype) __VA_ARGS__;
|
||||
|
||||
#define ELM_OBJ_ITEM_CHECK_OR_GOTO(it, label) \
|
||||
ELM_WIDGET_ITEM_CHECK_OR_GOTO((Elm_Widget_Item *)it, label); \
|
||||
if (!elm_widget_type_check(WIDGET(it), (widtype), __func__)) goto label;
|
||||
|
||||
EAPI Eina_Bool elm_widget_api_check(int ver);
|
||||
EAPI Evas_Object *elm_widget_add(Evas *evas);
|
||||
EAPI void elm_widget_del_hook_set(Evas_Object *obj, void (*func)(Evas_Object *obj));
|
||||
|
@ -732,6 +724,12 @@ EAPI void elm_widget_tree_dot_dump(const Evas_Object *top, FILE *out
|
|||
ob = elm_widget_add(evas); if (!(ob)) { free(wdat); return (ret); } \
|
||||
} while (0)
|
||||
|
||||
#define ELM_OBJ_ITEM_CHECK_OR_RETURN(it, ...) \
|
||||
ELM_WIDGET_ITEM_WIDTYPE_CHECK_OR_RETURN(it, __VA_ARGS__);
|
||||
|
||||
#define ELM_OBJ_ITEM_CHECK_OR_GOTO(it, label) \
|
||||
ELM_WIDGET_ITEM_WIDTYPE_CHECK_OR_GOTO(it, label);
|
||||
|
||||
/**
|
||||
* The drag and drop API.
|
||||
* Currently experimental, and will change when it does dynamic type
|
||||
|
|
Loading…
Reference in New Issue