elementary: move macro that should only be used in Elm_Widget inside it.
Note: this was introduced during the move to EO, so no backport. SVN revision: 80230
This commit is contained in:
parent
5bd109a655
commit
668e2a4588
|
@ -27,7 +27,7 @@ _elm_grid_smart_focus_next(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
if (ret) *ret = EINA_FALSE;
|
||||
Eina_Bool int_ret;
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
/* Focus chain */
|
||||
/* TODO: Change this to use other chain */
|
||||
|
@ -74,7 +74,7 @@ _elm_grid_smart_focus_direction(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
if (ret) *ret = EINA_FALSE;
|
||||
Eina_Bool int_ret;
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
/* Focus chain */
|
||||
/* TODO: Change this to use other chain */
|
||||
|
@ -103,7 +103,7 @@ _elm_grid_smart_focus_direction(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
static void
|
||||
_mirrored_set(Evas_Object *obj, Eina_Bool rtl)
|
||||
{
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_grid_mirrored_set(wd->resize_obj, rtl);
|
||||
}
|
||||
|
@ -144,7 +144,7 @@ _elm_grid_smart_del(Eo *obj, void *_pd EINA_UNUSED, va_list *list EINA_UNUSED)
|
|||
Eina_List *l;
|
||||
Evas_Object *child;
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
/* let's make our grid object the *last* to be processed, since it
|
||||
* may (smart) parent other sub objects here */
|
||||
|
@ -194,7 +194,7 @@ _size_set(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
{
|
||||
Evas_Coord w = va_arg(*list, Evas_Coord);
|
||||
Evas_Coord h = va_arg(*list, Evas_Coord);
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_grid_size_set(wd->resize_obj, w, h);
|
||||
}
|
||||
|
@ -214,7 +214,7 @@ _size_get(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
Evas_Coord *w = va_arg(*list, Evas_Coord *);
|
||||
Evas_Coord *h = va_arg(*list, Evas_Coord *);
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_grid_size_get(wd->resize_obj, w, h);
|
||||
}
|
||||
|
@ -241,7 +241,7 @@ _pack(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
Evas_Coord w = va_arg(*list, Evas_Coord);
|
||||
Evas_Coord h = va_arg(*list, Evas_Coord);
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
elm_widget_sub_object_add(obj, subobj);
|
||||
evas_object_grid_pack(wd->resize_obj, subobj, x, y, w, h);
|
||||
|
@ -260,7 +260,7 @@ _unpack(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
{
|
||||
Evas_Object *subobj = va_arg(*list, Evas_Object *);
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
elm_widget_sub_object_del(obj, subobj);
|
||||
evas_object_grid_unpack(wd->resize_obj, subobj);
|
||||
|
@ -282,7 +282,7 @@ _clear(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
Eina_List *chld;
|
||||
Evas_Object *o;
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
if (!clear)
|
||||
{
|
||||
|
@ -304,7 +304,7 @@ elm_grid_pack_set(Evas_Object *subobj,
|
|||
Evas_Object *obj = elm_widget_parent_widget_get(subobj);
|
||||
|
||||
ELM_GRID_CHECK(obj);
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_grid_pack(wd->resize_obj, subobj, x, y, w, h);
|
||||
}
|
||||
|
@ -319,7 +319,7 @@ elm_grid_pack_get(Evas_Object *subobj,
|
|||
Evas_Object *obj = elm_widget_parent_widget_get(subobj);
|
||||
|
||||
ELM_GRID_CHECK(obj);
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_grid_pack_get
|
||||
(wd->resize_obj, subobj, x, y, w, h);
|
||||
|
|
|
@ -28,7 +28,7 @@ _elm_table_smart_focus_next(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
Eina_List *(*list_free)(Eina_List *list);
|
||||
void *(*list_data_get)(const Eina_List *list);
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
/* Focus chain */
|
||||
/* TODO: Change this to use other chain */
|
||||
|
@ -76,7 +76,7 @@ _elm_table_smart_focus_direction(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
Eina_List *(*list_free)(Eina_List *list);
|
||||
void *(*list_data_get)(const Eina_List *list);
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
/* Focus chain */
|
||||
/* TODO: Change this to use other chain */
|
||||
|
@ -107,7 +107,7 @@ _elm_table_smart_focus_direction(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
static void
|
||||
_mirrored_set(Evas_Object *obj, Eina_Bool rtl)
|
||||
{
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_table_mirrored_set(wd->resize_obj, rtl);
|
||||
}
|
||||
|
@ -134,7 +134,7 @@ _sizing_eval(Evas_Object *obj)
|
|||
Evas_Coord minw = -1, minh = -1, maxw = -1, maxh = -1;
|
||||
Evas_Coord w, h;
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_size_hint_min_get
|
||||
(wd->resize_obj, &minw, &minh);
|
||||
|
@ -200,7 +200,7 @@ _elm_table_smart_del(Eo *obj, void *_pd EINA_UNUSED, va_list *list EINA_UNUSED)
|
|||
Eina_List *l;
|
||||
Evas_Object *child;
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_event_callback_del_full
|
||||
(wd->resize_obj, EVAS_CALLBACK_CHANGED_SIZE_HINTS,
|
||||
|
@ -252,7 +252,7 @@ static void
|
|||
_homogeneous_set(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
||||
{
|
||||
Eina_Bool homogeneous = va_arg(*list, int);
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_table_homogeneous_set
|
||||
(wd->resize_obj, homogeneous);
|
||||
|
@ -271,7 +271,7 @@ static void
|
|||
_homogeneous_get(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
||||
{
|
||||
Eina_Bool *ret = va_arg(*list, Eina_Bool *);
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
*ret = evas_object_table_homogeneous_get(wd->resize_obj);
|
||||
}
|
||||
|
||||
|
@ -289,7 +289,7 @@ _padding_set(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
{
|
||||
Evas_Coord horizontal = va_arg(*list, Evas_Coord);
|
||||
Evas_Coord vertical = va_arg(*list, Evas_Coord);
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_table_padding_set
|
||||
(wd->resize_obj, horizontal, vertical);
|
||||
|
@ -309,7 +309,7 @@ _padding_get(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
{
|
||||
Evas_Coord *horizontal = va_arg(*list, Evas_Coord *);
|
||||
Evas_Coord *vertical = va_arg(*list, Evas_Coord *);
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_table_padding_get
|
||||
(wd->resize_obj, horizontal, vertical);
|
||||
|
@ -335,7 +335,7 @@ _pack(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
int y = va_arg(*list, int);
|
||||
int w = va_arg(*list, int);
|
||||
int h = va_arg(*list, int);
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
elm_widget_sub_object_add(obj, subobj);
|
||||
evas_object_table_pack(wd->resize_obj, subobj, x, y, w, h);
|
||||
|
@ -353,7 +353,7 @@ static void
|
|||
_unpack(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
||||
{
|
||||
Evas_Object *subobj = va_arg(*list, Evas_Object *);
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
elm_widget_sub_object_del(obj, subobj);
|
||||
evas_object_table_unpack(wd->resize_obj, subobj);
|
||||
|
@ -381,7 +381,7 @@ _pack_set(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
int w = va_arg(*list, int);
|
||||
int h = va_arg(*list, int);
|
||||
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_table_pack(wd->resize_obj, subobj, x, y, w, h);
|
||||
}
|
||||
|
@ -408,7 +408,7 @@ _pack_get(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
int *h = va_arg(*list, int *);
|
||||
|
||||
unsigned short ix, iy, iw, ih;
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_table_pack_get
|
||||
(wd->resize_obj, subobj, &ix, &iy, &iw, &ih);
|
||||
|
@ -430,7 +430,7 @@ static void
|
|||
_clear(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
||||
{
|
||||
Eina_Bool clear = va_arg(*list, int);
|
||||
ELM_WIDGET_DATA_GET(obj, wd);
|
||||
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
|
||||
|
||||
evas_object_table_clear(wd->resize_obj, clear);
|
||||
}
|
||||
|
|
|
@ -9,6 +9,15 @@ EAPI Eo_Op ELM_WIDGET_BASE_ID = EO_NOOP;
|
|||
|
||||
#define MY_CLASS_NAME "elm_widget"
|
||||
|
||||
#define ELM_WIDGET_DATA_GET_NO_INST(o, wd) \
|
||||
wd = (o && eo_isa(o, ELM_OBJ_WIDGET_CLASS) ? \
|
||||
eo_data_get(o, ELM_OBJ_WIDGET_CLASS) : \
|
||||
NULL)
|
||||
|
||||
#define ELM_WIDGET_DATA_GET(o, wd) \
|
||||
Elm_Widget_Smart_Data *wd; \
|
||||
ELM_WIDGET_DATA_GET_NO_INST(o, wd)
|
||||
|
||||
#define API_ENTRY \
|
||||
ELM_WIDGET_DATA_GET(obj, sd); \
|
||||
if ((!sd) || (!_elm_widget_is(obj)))
|
||||
|
|
|
@ -737,22 +737,15 @@ EAPI Eina_List *elm_widget_scrollable_children_get(Evas_Object *obj);
|
|||
EAPI void elm_widget_tree_dump(const Evas_Object *top);
|
||||
EAPI void elm_widget_tree_dot_dump(const Evas_Object *top, FILE *output);
|
||||
|
||||
|
||||
#define ELM_WIDGET_DATA_GET_NO_INST(o, wd) \
|
||||
wd = (o && eo_isa(o, ELM_OBJ_WIDGET_CLASS) ? \
|
||||
eo_data_get(o, ELM_OBJ_WIDGET_CLASS) : \
|
||||
NULL)
|
||||
|
||||
#define ELM_WIDGET_DATA_GET(o, wd) \
|
||||
Elm_Widget_Smart_Data *wd; \
|
||||
ELM_WIDGET_DATA_GET_NO_INST(o, wd)
|
||||
|
||||
#define ELM_WIDGET_DATA_GET_OR_RETURN(o, ptr) \
|
||||
ELM_WIDGET_DATA_GET(o, ptr); \
|
||||
if (!ptr) \
|
||||
Elm_Widget_Smart_Data *ptr; \
|
||||
ptr = (o && eo_isa(o, ELM_OBJ_WIDGET_CLASS) ? \
|
||||
eo_data_get(o, ELM_OBJ_WIDGET_CLASS) : \
|
||||
NULL); \
|
||||
if (!ptr) \
|
||||
{ \
|
||||
CRITICAL("no widget data for object %p (%s)", \
|
||||
o, evas_object_type_get(o)); \
|
||||
o, evas_object_type_get(o)); \
|
||||
return; \
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue