forked from enlightenment/efl
evas/evas_render - added evas_object_change_reset internal function to remove much duplicated code
SVN revision: 71169
This commit is contained in:
parent
f243db26ac
commit
14e43d84fd
|
@ -30,6 +30,17 @@ evas_object_new(Evas *e __UNUSED__)
|
||||||
return obj;
|
return obj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
evas_object_change_reset(Evas_Object *obj)
|
||||||
|
{
|
||||||
|
obj->changed = EINA_FALSE;
|
||||||
|
obj->changed_move_only = EINA_FALSE;
|
||||||
|
obj->changed_nomove = EINA_FALSE;
|
||||||
|
obj->changed_move = EINA_FALSE;
|
||||||
|
obj->changed_map = EINA_FALSE;
|
||||||
|
obj->changed_pchange = EINA_FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
evas_object_free(Evas_Object *obj, int clean_layer)
|
evas_object_free(Evas_Object *obj, int clean_layer)
|
||||||
{
|
{
|
||||||
|
|
|
@ -593,33 +593,12 @@ pending_change(void *data, void *gdata __UNUSED__)
|
||||||
{
|
{
|
||||||
RD(" OBJ [%p] pending change %i -> 0, pre %i\n", obj, obj->changed, obj->pre_render_done);
|
RD(" OBJ [%p] pending change %i -> 0, pre %i\n", obj, obj->changed, obj->pre_render_done);
|
||||||
obj->pre_render_done = 0;
|
obj->pre_render_done = 0;
|
||||||
//// FIXME: this wipes out changes
|
evas_object_change_reset(obj);
|
||||||
obj->changed = 0;
|
|
||||||
obj->changed_move_only = 0;
|
|
||||||
obj->changed_nomove = 0;
|
|
||||||
obj->changed_move = 0;
|
|
||||||
obj->changed_map = 0;
|
|
||||||
obj->changed_pchange = 0;
|
|
||||||
}
|
}
|
||||||
return obj->changed ? EINA_TRUE : EINA_FALSE;
|
return obj->changed ? EINA_TRUE : EINA_FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
static void
|
|
||||||
unchange(Evas_Object *obj)
|
|
||||||
{
|
|
||||||
Evas_Object *obj2;
|
|
||||||
|
|
||||||
if (!obj->changed) return;
|
|
||||||
obj->changed = 0;
|
|
||||||
obj->changed_move_only = 0;
|
|
||||||
obj->changed_nomove = 0;
|
|
||||||
obj->changed_move = 0;
|
|
||||||
EINA_INLIST_FOREACH(evas_object_smart_members_get_direct(obj), obj2)
|
|
||||||
{
|
|
||||||
unchange(obj2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
chlist(Evas_Object *obj, int i)
|
chlist(Evas_Object *obj, int i)
|
||||||
{
|
{
|
||||||
|
@ -968,34 +947,18 @@ evas_render_mapped(Evas *e, Evas_Object *obj, void *context, void *surface,
|
||||||
if (!evas_object_is_visible(o2) &&
|
if (!evas_object_is_visible(o2) &&
|
||||||
!evas_object_was_visible(o2))
|
!evas_object_was_visible(o2))
|
||||||
{
|
{
|
||||||
o2->changed = 0;
|
evas_object_change_reset(o2);
|
||||||
o2->changed_move_only = 0;
|
|
||||||
o2->changed_nomove = 0;
|
|
||||||
o2->changed_move = 0;
|
|
||||||
o2->changed_map = 0;
|
|
||||||
o2->changed_pchange = 0;
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (o2->changed)
|
if (o2->changed)
|
||||||
{
|
{
|
||||||
// chlist(o2, 0);
|
// chlist(o2, 0);
|
||||||
changed = 1;
|
changed = 1;
|
||||||
o2->changed = 0;
|
evas_object_change_reset(o2);
|
||||||
o2->changed_move_only = 0;
|
|
||||||
o2->changed_nomove = 0;
|
|
||||||
o2->changed_move = 0;
|
|
||||||
o2->changed_map = 0;
|
|
||||||
o2->changed_pchange = 0;
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// unchange(obj);
|
evas_object_change_reset(obj);
|
||||||
obj->changed = 0;
|
|
||||||
obj->changed_move_only = 0;
|
|
||||||
obj->changed_nomove = 0;
|
|
||||||
obj->changed_move = 0;
|
|
||||||
obj->changed_map = 0;
|
|
||||||
obj->changed_pchange = 0;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -1003,12 +966,7 @@ evas_render_mapped(Evas *e, Evas_Object *obj, void *context, void *surface,
|
||||||
{
|
{
|
||||||
if ((obj->changed_pchange) && (obj->changed_map))
|
if ((obj->changed_pchange) && (obj->changed_map))
|
||||||
changed = 1;
|
changed = 1;
|
||||||
obj->changed = 0;
|
evas_object_change_reset(obj);
|
||||||
obj->changed_move_only = 0;
|
|
||||||
obj->changed_nomove = 0;
|
|
||||||
obj->changed_move = 0;
|
|
||||||
obj->changed_map = 0;
|
|
||||||
obj->changed_pchange = 0;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1641,12 +1599,7 @@ evas_render_updates_internal(Evas *e,
|
||||||
RD(" OBJ [%p] post... func1\n", obj);
|
RD(" OBJ [%p] post... func1\n", obj);
|
||||||
obj->func->render_post(obj);
|
obj->func->render_post(obj);
|
||||||
obj->restack = 0;
|
obj->restack = 0;
|
||||||
obj->changed = 0;
|
evas_object_change_reset(obj);
|
||||||
obj->changed_move_only = 0;
|
|
||||||
obj->changed_nomove = 0;
|
|
||||||
obj->changed_move = 0;
|
|
||||||
obj->changed_map = 0;
|
|
||||||
obj->changed_pchange = 0;
|
|
||||||
}
|
}
|
||||||
else if ((obj->cur.map != obj->prev.map) ||
|
else if ((obj->cur.map != obj->prev.map) ||
|
||||||
(obj->cur.usemap != obj->prev.usemap))
|
(obj->cur.usemap != obj->prev.usemap))
|
||||||
|
@ -1654,12 +1607,7 @@ evas_render_updates_internal(Evas *e,
|
||||||
RD(" OBJ [%p] post... func2\n", obj);
|
RD(" OBJ [%p] post... func2\n", obj);
|
||||||
obj->func->render_post(obj);
|
obj->func->render_post(obj);
|
||||||
obj->restack = 0;
|
obj->restack = 0;
|
||||||
obj->changed = 0;
|
evas_object_change_reset(obj);
|
||||||
obj->changed_move_only = 0;
|
|
||||||
obj->changed_nomove = 0;
|
|
||||||
obj->changed_move = 0;
|
|
||||||
obj->changed_map = 0;
|
|
||||||
obj->changed_pchange = 0;
|
|
||||||
}
|
}
|
||||||
/* moved to other pre-process phase 1
|
/* moved to other pre-process phase 1
|
||||||
if (obj->delete_me == 2)
|
if (obj->delete_me == 2)
|
||||||
|
|
|
@ -892,6 +892,7 @@ extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
Evas_Object *evas_object_new(Evas *e);
|
Evas_Object *evas_object_new(Evas *e);
|
||||||
|
void evas_object_change_reset(Evas_Object *obj);
|
||||||
void evas_object_free(Evas_Object *obj, int clean_layer);
|
void evas_object_free(Evas_Object *obj, int clean_layer);
|
||||||
void evas_object_update_bounding_box(Evas_Object *obj);
|
void evas_object_update_bounding_box(Evas_Object *obj);
|
||||||
void evas_object_inject(Evas_Object *obj, Evas *e);
|
void evas_object_inject(Evas_Object *obj, Evas *e);
|
||||||
|
|
Loading…
Reference in New Issue