the first wave of evas smart object modes. commit hell #1. :) other things

still need updating in cvs - but i am sure others can do that :)


SVN revision: 18001
This commit is contained in:
Carsten Haitzler 2005-10-27 02:44:36 +00:00
parent d3e74a5a07
commit 27a2bc154c
14 changed files with 42 additions and 898 deletions

2
TODO
View File

@ -8,6 +8,8 @@ Some of the things (in very short form) that need to be done to E17...
BUGS / FIXES
-------------------------------------------------------------------------------
* BUG: if iconified window quits qhile iconified and ibox is being used then
e segv's
* BUG: dnd to ibar is broken if u did an icon that isn't IN the ibar yet
(from a window border) to either the very start or end of the ibar.
* BUG: race condition on winlist activate via keypress and the key grab thus

View File

@ -50,11 +50,6 @@ static void _e_box_smart_extents_calcuate(E_Smart_Data *sd);
static void _e_box_smart_init(void);
static void _e_box_smart_add(Evas_Object *obj);
static void _e_box_smart_del(Evas_Object *obj);
static void _e_box_smart_layer_set(Evas_Object *obj, int layer);
static void _e_box_smart_raise(Evas_Object *obj);
static void _e_box_smart_lower(Evas_Object *obj);
static void _e_box_smart_stack_above(Evas_Object *obj, Evas_Object * above);
static void _e_box_smart_stack_below(Evas_Object *obj, Evas_Object * below);
static void _e_box_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
static void _e_box_smart_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
static void _e_box_smart_show(Evas_Object *obj);
@ -350,12 +345,10 @@ _e_box_smart_adopt(E_Smart_Data *sd, Evas_Object *obj)
bi->max.w = 0;
bi->max.h = 0;
evas_object_clip_set(obj, sd->clip);
evas_object_stack_above(obj, sd->obj);
evas_object_smart_member_add(obj, bi->sd->obj);
evas_object_data_set(obj, "e_box_data", bi);
evas_object_event_callback_add(obj, EVAS_CALLBACK_FREE,
_e_box_smart_item_del_hook, NULL);
evas_object_stack_below(obj, sd->obj);
if (!evas_object_visible_get(sd->clip))
evas_object_show(sd->clip);
return bi;
@ -613,11 +606,7 @@ _e_box_smart_init(void)
_e_smart = evas_smart_new("e_box",
_e_box_smart_add,
_e_box_smart_del,
_e_box_smart_layer_set,
_e_box_smart_raise,
_e_box_smart_lower,
_e_box_smart_stack_above,
_e_box_smart_stack_below,
NULL, NULL, NULL, NULL, NULL,
_e_box_smart_move,
_e_box_smart_resize,
_e_box_smart_show,
@ -666,96 +655,6 @@ _e_box_smart_del(Evas_Object *obj)
free(sd);
}
static void
_e_box_smart_layer_set(Evas_Object *obj, int layer)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
{
evas_object_layer_set(l->data, layer);
}
}
}
static void
_e_box_smart_raise(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = evas_list_last(sd->items); l; l = l->prev)
{
evas_object_raise(l->data);
}
}
}
static void
_e_box_smart_lower(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
{
evas_object_lower(l->data);
}
}
}
static void
_e_box_smart_stack_above(Evas_Object *obj, Evas_Object *above)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
{
evas_object_stack_above(l->data, above);
}
}
}
static void
_e_box_smart_stack_below(Evas_Object *obj, Evas_Object *below)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = evas_list_last(sd->items); l; l = l->prev)
{
evas_object_stack_below(l->data, below);
}
}
}
static void
_e_box_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
{

View File

@ -42,10 +42,6 @@ static void _e_editable_text_size_update(Evas_Object *object);
static void _e_editable_text_smart_add(Evas_Object *object);
static void _e_editable_text_smart_del(Evas_Object *object);
static void _e_editable_text_smart_raise(Evas_Object *object);
static void _e_editable_text_smart_lower(Evas_Object *object);
static void _e_editable_text_smart_stack_above(Evas_Object *object, Evas_Object *above);
static void _e_editable_text_smart_stack_below(Evas_Object *object, Evas_Object *below);
static void _e_editable_text_smart_move(Evas_Object *object, Evas_Coord x, Evas_Coord y);
static void _e_editable_text_smart_resize(Evas_Object *object, Evas_Coord w, Evas_Coord h);
static void _e_editable_text_smart_show(Evas_Object *object);
@ -55,10 +51,6 @@ static void _e_entry_key_down_cb(void *data, Evas *e, Evas_Object *obj, voi
static void _e_entry_smart_add(Evas_Object *object);
static void _e_entry_smart_del(Evas_Object *object);
static void _e_entry_smart_raise(Evas_Object *object);
static void _e_entry_smart_lower(Evas_Object *object);
static void _e_entry_smart_stack_above(Evas_Object *object, Evas_Object *above);
static void _e_entry_smart_stack_below(Evas_Object *object, Evas_Object *below);
static void _e_entry_smart_move(Evas_Object *object, Evas_Coord x, Evas_Coord y);
static void _e_entry_smart_resize(Evas_Object *object, Evas_Coord w, Evas_Coord h);
static void _e_entry_smart_show(Evas_Object *object);
@ -75,14 +67,10 @@ e_editable_text_add(Evas *evas)
{
if (!e_editable_text_smart)
{
e_editable_text_smart = evas_smart_new("e_entry",
e_editable_text_smart = evas_smart_new("e_editable_entry",
_e_editable_text_smart_add, /* add */
_e_editable_text_smart_del, /* del */
NULL, /* layer_set */
_e_editable_text_smart_raise, /* raise */
_e_editable_text_smart_lower, /* lower */
_e_editable_text_smart_stack_above, /* stack_above */
_e_editable_text_smart_stack_below, /* stack_below */
NULL, NULL, NULL, NULL, NULL,
_e_editable_text_smart_move, /* move */
_e_editable_text_smart_resize, /* resize */
_e_editable_text_smart_show, /* show */
@ -335,11 +323,7 @@ e_entry_add(Evas *evas)
e_entry_smart = evas_smart_new("e_entry",
_e_entry_smart_add, /* add */
_e_entry_smart_del, /* del */
NULL, /* layer_set */
_e_entry_smart_raise, /* raise */
_e_entry_smart_lower, /* lower */
_e_entry_smart_stack_above, /* stack_above */
_e_entry_smart_stack_below, /* stack_below */
NULL, NULL, NULL, NULL, NULL,
_e_entry_smart_move, /* move */
_e_entry_smart_resize, /* resize */
_e_entry_smart_show, /* show */
@ -701,62 +685,6 @@ _e_editable_text_smart_del(Evas_Object *object)
}
}
/* Called when the object is stacked above all the other objects */
static void
_e_editable_text_smart_raise(Evas_Object *object)
{
E_Editable_Text_Smart_Data *editable_text_sd;
if ((!object) || !(editable_text_sd = evas_object_smart_data_get(object)))
return;
evas_object_raise(editable_text_sd->clip);
evas_object_raise(editable_text_sd->text_object);
evas_object_raise(editable_text_sd->cursor_object);
}
/* Called when the object is stacked below all the other objects */
static void
_e_editable_text_smart_lower(Evas_Object *object)
{
E_Editable_Text_Smart_Data *editable_text_sd;
if ((!object) || !(editable_text_sd = evas_object_smart_data_get(object)))
return;
evas_object_lower(editable_text_sd->cursor_object);
evas_object_lower(editable_text_sd->text_object);
evas_object_lower(editable_text_sd->clip);
}
/* Called when the object is stacked above another object */
static void
_e_editable_text_smart_stack_above(Evas_Object *object, Evas_Object *above)
{
E_Editable_Text_Smart_Data *editable_text_sd;
if ((!object) || (!above) || !(editable_text_sd = evas_object_smart_data_get(object)))
return;
evas_object_stack_above(editable_text_sd->clip, above);
evas_object_stack_above(editable_text_sd->text_object, editable_text_sd->clip);
evas_object_stack_above(editable_text_sd->cursor_object, editable_text_sd->text_object);
}
/* Called when the object is stacked below another object */
static void
_e_editable_text_smart_stack_below(Evas_Object *object, Evas_Object *below)
{
E_Editable_Text_Smart_Data *editable_text_sd;
if ((!object) || (!below) || !(editable_text_sd = evas_object_smart_data_get(object)))
return;
evas_object_stack_below(editable_text_sd->cursor_object, below);
evas_object_stack_below(editable_text_sd->text_object, editable_text_sd->cursor_object);
evas_object_stack_below(editable_text_sd->clip, editable_text_sd->text_object);
}
/* Called when the object is moved */
static void _e_editable_text_smart_move(Evas_Object *object, Evas_Coord x, Evas_Coord y)
{
@ -910,50 +838,6 @@ _e_entry_smart_del(Evas_Object *object)
E_FREE(e_entry_sd);
}
static void
_e_entry_smart_raise(Evas_Object *object)
{
E_Entry_Smart_Data *e_entry_sd;
if ((!object) || !(e_entry_sd = evas_object_smart_data_get(object)))
return;
evas_object_raise(e_entry_sd->edje_object);
}
static void
_e_entry_smart_lower(Evas_Object *object)
{
E_Entry_Smart_Data *e_entry_sd;
if ((!object) || !(e_entry_sd = evas_object_smart_data_get(object)))
return;
evas_object_lower(e_entry_sd->edje_object);
}
static void
_e_entry_smart_stack_above(Evas_Object *object, Evas_Object *above)
{
E_Entry_Smart_Data *e_entry_sd;
if ((!object) || !(e_entry_sd = evas_object_smart_data_get(object)))
return;
evas_object_stack_above(e_entry_sd->edje_object, above);
}
static void
_e_entry_smart_stack_below(Evas_Object *object, Evas_Object *below)
{
E_Entry_Smart_Data *e_entry_sd;
if ((!object) || !(e_entry_sd = evas_object_smart_data_get(object)))
return;
evas_object_stack_below(e_entry_sd->edje_object, below);
}
static void
_e_entry_smart_move(Evas_Object *object, Evas_Coord x, Evas_Coord y)
{

View File

@ -28,11 +28,6 @@ struct _E_Smart_Data
/* local subsystem functions */
static void _e_fm_icon_smart_add (Evas_Object *obj);
static void _e_fm_icon_smart_del (Evas_Object *obj);
static void _e_fm_icon_smart_layer_set (Evas_Object *obj, int l);
static void _e_fm_icon_smart_raise (Evas_Object *obj);
static void _e_fm_icon_smart_lower (Evas_Object *obj);
static void _e_fm_icon_smart_stack_above (Evas_Object *obj, Evas_Object *above);
static void _e_fm_icon_smart_stack_below (Evas_Object *obj, Evas_Object *below);
static void _e_fm_icon_smart_move (Evas_Object *obj, Evas_Coord x, Evas_Coord y);
static void _e_fm_icon_smart_resize (Evas_Object *obj, Evas_Coord w, Evas_Coord h);
static void _e_fm_icon_smart_show (Evas_Object *obj);
@ -88,11 +83,7 @@ e_fm_icon_add(Evas *evas)
e_smart = evas_smart_new("e_fm_icon_smart",
_e_fm_icon_smart_add,
_e_fm_icon_smart_del,
_e_fm_icon_smart_layer_set,
_e_fm_icon_smart_raise,
_e_fm_icon_smart_lower,
_e_fm_icon_smart_stack_above,
_e_fm_icon_smart_stack_below,
NULL, NULL, NULL, NULL, NULL,
_e_fm_icon_smart_move,
_e_fm_icon_smart_resize,
_e_fm_icon_smart_show,
@ -220,71 +211,6 @@ _e_fm_icon_smart_del(Evas_Object *obj)
free(sd);
}
static void
_e_fm_icon_smart_layer_set(Evas_Object *obj, int l)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_layer_set(sd->event_object, l);
if (sd->icon_object) evas_object_layer_set(sd->icon_object, l);
if (sd->image_object) evas_object_layer_set(sd->image_object, l);
}
static void
_e_fm_icon_smart_raise(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_raise(sd->event_object);
if (sd->icon_object) evas_object_stack_below(sd->icon_object, sd->event_object);
if (sd->image_object) evas_object_stack_below(sd->image_object, sd->event_object);
}
static void
_e_fm_icon_smart_lower(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_lower(sd->event_object);
if (sd->icon_object) evas_object_stack_below(sd->icon_object, sd->event_object);
if (sd->image_object) evas_object_stack_below(sd->image_object, sd->event_object);
}
static void
_e_fm_icon_smart_stack_above(Evas_Object *obj, Evas_Object *above)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_stack_above(sd->event_object, above);
if (sd->icon_object) evas_object_stack_below(sd->icon_object, sd->event_object);
if (sd->image_object) evas_object_stack_below(sd->image_object, sd->event_object);
}
static void
_e_fm_icon_smart_stack_below(Evas_Object *obj, Evas_Object *below)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_stack_below(sd->event_object, below);
if (sd->icon_object) evas_object_stack_below(sd->icon_object, sd->event_object);
if (sd->image_object) evas_object_stack_below(sd->image_object, sd->event_object);
}
static void
_e_fm_icon_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
{

View File

@ -181,10 +181,6 @@ struct _E_Fm_Smart_Data
static void _e_fm_smart_add(Evas_Object *object);
static void _e_fm_smart_del(Evas_Object *object);
static void _e_fm_smart_raise(Evas_Object *object);
static void _e_fm_smart_lower(Evas_Object *object);
static void _e_fm_smart_stack_above(Evas_Object *object, Evas_Object *above);
static void _e_fm_smart_stack_below(Evas_Object *object, Evas_Object *below);
static void _e_fm_smart_move(Evas_Object *object, Evas_Coord x, Evas_Coord y);
static void _e_fm_smart_resize(Evas_Object *object, Evas_Coord w, Evas_Coord h);
static void _e_fm_smart_show(Evas_Object *object);
@ -255,11 +251,7 @@ e_fm_init(void)
e_fm_smart = evas_smart_new("e_fm",
_e_fm_smart_add, /* add */
_e_fm_smart_del, /* del */
NULL, /* layer_set */
_e_fm_smart_raise, /* raise */
_e_fm_smart_lower, /* lower */
_e_fm_smart_stack_above, /* stack_above */
_e_fm_smart_stack_below, /* stack_below */
NULL, NULL, NULL, NULL, NULL,
_e_fm_smart_move, /* move */
_e_fm_smart_resize, /* resize */
_e_fm_smart_show, /* show */
@ -580,58 +572,6 @@ _e_fm_smart_del(Evas_Object *object)
free(sd);
}
static void
_e_fm_smart_raise(Evas_Object *object)
{
E_Fm_Smart_Data *sd;
sd = evas_object_smart_data_get(object);
if (!sd) return;
evas_object_raise(sd->clip);
evas_object_stack_below(sd->bg, sd->clip);
evas_object_stack_below(sd->layout, sd->clip);
}
static void
_e_fm_smart_lower(Evas_Object *object)
{
E_Fm_Smart_Data *sd;
sd = evas_object_smart_data_get(object);
if (!sd) return;
evas_object_lower(sd->clip);
evas_object_stack_below(sd->bg, sd->clip);
evas_object_stack_below(sd->layout, sd->clip);
}
static void
_e_fm_smart_stack_above(Evas_Object *object, Evas_Object *above)
{
E_Fm_Smart_Data *sd;
sd = evas_object_smart_data_get(object);
if (!sd) return;
evas_object_stack_above(sd->clip, above);
evas_object_stack_below(sd->bg, sd->clip);
evas_object_stack_below(sd->layout, sd->clip);
}
static void
_e_fm_smart_stack_below(Evas_Object *object, Evas_Object *below)
{
E_Fm_Smart_Data *sd;
sd = evas_object_smart_data_get(object);
if (!sd) return;
evas_object_stack_below(sd->clip, below);
evas_object_stack_below(sd->bg, sd->clip);
evas_object_stack_below(sd->layout, sd->clip);
}
static void
_e_fm_smart_move(Evas_Object *object, Evas_Coord x, Evas_Coord y)
{

View File

@ -17,11 +17,6 @@ static void _e_icon_smart_reconfigure(E_Smart_Data *sd);
static void _e_icon_smart_init(void);
static void _e_icon_smart_add(Evas_Object *obj);
static void _e_icon_smart_del(Evas_Object *obj);
static void _e_icon_smart_layer_set(Evas_Object *obj, int layer);
static void _e_icon_smart_raise(Evas_Object *obj);
static void _e_icon_smart_lower(Evas_Object *obj);
static void _e_icon_smart_stack_above(Evas_Object *obj, Evas_Object *above);
static void _e_icon_smart_stack_below(Evas_Object *obj, Evas_Object *below);
static void _e_icon_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
static void _e_icon_smart_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
static void _e_icon_smart_show(Evas_Object *obj);
@ -208,11 +203,7 @@ _e_icon_smart_init(void)
_e_smart = evas_smart_new("e_icon",
_e_icon_smart_add,
_e_icon_smart_del,
_e_icon_smart_layer_set,
_e_icon_smart_raise,
_e_icon_smart_lower,
_e_icon_smart_stack_above,
_e_icon_smart_stack_below,
NULL, NULL, NULL, NULL, NULL,
_e_icon_smart_move,
_e_icon_smart_resize,
_e_icon_smart_show,
@ -251,56 +242,6 @@ _e_icon_smart_del(Evas_Object *obj)
free(sd);
}
static void
_e_icon_smart_layer_set(Evas_Object *obj, int layer)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_layer_set(sd->obj, layer);
}
static void
_e_icon_smart_raise(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_raise(sd->obj);
}
static void
_e_icon_smart_lower(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_lower(sd->obj);
}
static void
_e_icon_smart_stack_above(Evas_Object *obj, Evas_Object *above)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_stack_above(sd->obj, above);
}
static void
_e_icon_smart_stack_below(Evas_Object *obj, Evas_Object *below)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_stack_below(sd->obj, below);
}
static void
_e_icon_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
{

View File

@ -40,11 +40,6 @@ static void _e_icon_layout_smart_move_resize_item(E_Icon_Layout_I
static void _e_icon_layout_smart_init(void);
static void _e_icon_layout_smart_add(Evas_Object *obj);
static void _e_icon_layout_smart_del(Evas_Object *obj);
static void _e_icon_layout_smart_layer_set(Evas_Object *obj, int layer);
static void _e_icon_layout_smart_raise(Evas_Object *obj);
static void _e_icon_layout_smart_lower(Evas_Object *obj);
static void _e_icon_layout_smart_stack_above(Evas_Object *obj, Evas_Object * above);
static void _e_icon_layout_smart_stack_below(Evas_Object *obj, Evas_Object * below);
static void _e_icon_layout_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
static void _e_icon_layout_smart_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
static void _e_icon_layout_smart_show(Evas_Object *obj);
@ -168,41 +163,6 @@ e_icon_layout_child_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h)
_e_icon_layout_smart_move_resize_item(li);
}
void
e_icon_layout_child_stack_below(Evas_Object *obj, Evas_Object *below)
{
E_Icon_Layout_Item *li;
li = evas_object_data_get(obj, "e_icon_layout_data");
if (!li) return;
if (!evas_list_find(li->sd->items, below)) return;
if (!evas_list_find(li->sd->items, obj)) return;
if ((li->sd->items) && (li->sd->items->next))
{
li->sd->items = evas_list_remove(li->sd->items, obj);
evas_object_stack_below(obj, below);
li->sd->items = evas_list_prepend_relative(li->sd->items, obj, below);
}
}
void
e_icon_layout_child_stack_above(Evas_Object *obj, Evas_Object *above)
{
E_Icon_Layout_Item *li;
li = evas_object_data_get(obj, "e_icon_layout_data");
if (!li) return;
if (!evas_list_find(li->sd->items, above)) return;
if (!evas_list_find(li->sd->items, obj)) return;
if ((li->sd->items) && (li->sd->items->next))
{
li->sd->items = evas_list_remove(li->sd->items, obj);
evas_object_stack_above(obj, above);
li->sd->items = evas_list_append_relative(li->sd->items, obj, above);
}
}
void
e_icon_layout_unpack(Evas_Object *obj)
{
@ -313,7 +273,6 @@ _e_icon_layout_smart_adopt(E_Smart_Data *sd, Evas_Object *obj)
evas_object_data_set(obj, "e_icon_layout_data", li);
evas_object_event_callback_add(obj, EVAS_CALLBACK_FREE,
_e_icon_layout_smart_item_del_hook, NULL);
evas_object_stack_below(obj, li->sd->clip);
if (!evas_object_visible_get(sd->clip))
evas_object_show(sd->clip);
return li;
@ -435,11 +394,7 @@ _e_icon_layout_smart_init(void)
_e_smart = evas_smart_new("e_icon_layout",
_e_icon_layout_smart_add,
_e_icon_layout_smart_del,
_e_icon_layout_smart_layer_set,
_e_icon_layout_smart_raise,
_e_icon_layout_smart_lower,
_e_icon_layout_smart_stack_above,
_e_icon_layout_smart_stack_below,
NULL, NULL, NULL, NULL, NULL,
_e_icon_layout_smart_move,
_e_icon_layout_smart_resize,
_e_icon_layout_smart_show,
@ -495,87 +450,6 @@ _e_icon_layout_smart_del(Evas_Object *obj)
free(sd);
}
static void
_e_icon_layout_smart_layer_set(Evas_Object *obj, int layer)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
{
evas_object_layer_set(l->data, layer);
}
}
}
static void
_e_icon_layout_smart_raise(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
evas_object_raise(l->data);
}
evas_object_raise(sd->clip);
}
static void
_e_icon_layout_smart_lower(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_lower(sd->clip);
{
Evas_List *l;
for (l = evas_list_last(sd->items); l; l = l->prev)
evas_object_lower(l->data);
}
}
static void
_e_icon_layout_smart_stack_above(Evas_Object *obj, Evas_Object *above)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_stack_above(sd->clip, above);
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
evas_object_stack_below(l->data, sd->clip);
}
}
static void
_e_icon_layout_smart_stack_below(Evas_Object *obj, Evas_Object *below)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_stack_below(sd->clip, below);
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
evas_object_stack_below(l->data, sd->clip);
}
}
static void
_e_icon_layout_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
{

View File

@ -15,8 +15,6 @@ EAPI void e_icon_layout_width_fix (Evas_Object *obj, Evas_Coord
EAPI void e_icon_layout_height_fix (Evas_Object *obj, Evas_Coord h);
EAPI void e_icon_layout_pack (Evas_Object *obj, Evas_Object *child);
EAPI void e_icon_layout_child_resize (Evas_Object *obj, Evas_Coord w, Evas_Coord h);
EAPI void e_icon_layout_child_stack_above (Evas_Object *obj, Evas_Object *above);
EAPI void e_icon_layout_child_stack_below (Evas_Object *obj, Evas_Object *below);
EAPI void e_icon_layout_unpack (Evas_Object *obj);
EAPI void e_icon_layout_spacing_set(Evas_Object *obj, Evas_Coord xs, Evas_Coord ys);
EAPI void e_icon_layout_redraw_force (Evas_Object *obj);

View File

@ -37,11 +37,6 @@ static void _e_layout_smart_move_resize_item(E_Layout_Item *li);
static void _e_layout_smart_init(void);
static void _e_layout_smart_add(Evas_Object *obj);
static void _e_layout_smart_del(Evas_Object *obj);
static void _e_layout_smart_layer_set(Evas_Object *obj, int layer);
static void _e_layout_smart_raise(Evas_Object *obj);
static void _e_layout_smart_lower(Evas_Object *obj);
static void _e_layout_smart_stack_above(Evas_Object *obj, Evas_Object * above);
static void _e_layout_smart_stack_below(Evas_Object *obj, Evas_Object * below);
static void _e_layout_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
static void _e_layout_smart_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
static void _e_layout_smart_show(Evas_Object *obj);
@ -159,15 +154,8 @@ e_layout_child_lower(Evas_Object *obj)
if ((li->sd->items) && (li->sd->items->next))
{
li->sd->items = evas_list_remove(li->sd->items, obj);
/* FIXME: this is some deeb subtle problem - why do i have to do a restack? */
/* evas_object_stack_below(obj, li->sd->items->data);*/
evas_object_lower(obj);
li->sd->items = evas_list_prepend(li->sd->items, obj);
{
Evas_List *l;
for (l = li->sd->items; l; l = l->next)
evas_object_stack_below(l->data, li->sd->clip);
}
}
}
@ -182,7 +170,7 @@ e_layout_child_raise(Evas_Object *obj)
if ((li->sd->items) && (li->sd->items->next))
{
li->sd->items = evas_list_remove(li->sd->items, obj);
evas_object_stack_below(obj, li->sd->clip);
evas_object_raise(obj);
li->sd->items = evas_list_append(li->sd->items, obj);
}
}
@ -254,7 +242,6 @@ _e_layout_smart_adopt(E_Smart_Data *sd, Evas_Object *obj)
evas_object_data_set(obj, "e_layout_data", li);
evas_object_event_callback_add(obj, EVAS_CALLBACK_FREE,
_e_layout_smart_item_del_hook, NULL);
evas_object_stack_below(obj, li->sd->clip);
if (!evas_object_visible_get(sd->clip))
evas_object_show(sd->clip);
return li;
@ -329,11 +316,7 @@ _e_layout_smart_init(void)
_e_smart = evas_smart_new("e_layout",
_e_layout_smart_add,
_e_layout_smart_del,
_e_layout_smart_layer_set,
_e_layout_smart_raise,
_e_layout_smart_lower,
_e_layout_smart_stack_above,
_e_layout_smart_stack_below,
NULL, NULL, NULL, NULL, NULL,
_e_layout_smart_move,
_e_layout_smart_resize,
_e_layout_smart_show,
@ -384,87 +367,6 @@ _e_layout_smart_del(Evas_Object *obj)
free(sd);
}
static void
_e_layout_smart_layer_set(Evas_Object *obj, int layer)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
{
evas_object_layer_set(l->data, layer);
}
}
}
static void
_e_layout_smart_raise(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
evas_object_raise(l->data);
}
evas_object_raise(sd->clip);
}
static void
_e_layout_smart_lower(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_lower(sd->clip);
{
Evas_List *l;
for (l = evas_list_last(sd->items); l; l = l->prev)
evas_object_lower(l->data);
}
}
static void
_e_layout_smart_stack_above(Evas_Object *obj, Evas_Object *above)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_stack_above(sd->clip, above);
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
evas_object_stack_below(l->data, sd->clip);
}
}
static void
_e_layout_smart_stack_below(Evas_Object *obj, Evas_Object *below)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
evas_object_stack_below(sd->clip, below);
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
evas_object_stack_below(l->data, sd->clip);
}
}
static void
_e_layout_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
{

View File

@ -23,11 +23,6 @@ static void _e_smart_child_resize_hook(void *data, Evas *e, Evas_Object *obj, vo
static void _e_smart_reconfigure(E_Smart_Data *sd);
static void _e_smart_add(Evas_Object *obj);
static void _e_smart_del(Evas_Object *obj);
static void _e_smart_layer_set(Evas_Object *obj, int layer);
static void _e_smart_raise(Evas_Object *obj);
static void _e_smart_lower(Evas_Object *obj);
static void _e_smart_stack_above(Evas_Object *obj, Evas_Object *above);
static void _e_smart_stack_below(Evas_Object *obj, Evas_Object *below);
static void _e_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
static void _e_smart_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
static void _e_smart_show(Evas_Object *obj);
@ -73,8 +68,6 @@ e_pan_child_set(Evas_Object *obj, Evas_Object *child)
sd->child_h = h;
evas_object_event_callback_add(child, EVAS_CALLBACK_FREE, _e_smart_child_del_hook, sd);
evas_object_event_callback_add(child, EVAS_CALLBACK_RESIZE, _e_smart_child_resize_hook, sd);
evas_object_layer_set(sd->child_obj, evas_object_layer_get(sd->smart_obj));
evas_object_stack_above(sd->child_obj, sd->smart_obj);
evas_object_color_get(sd->smart_obj, &r, &g, &b, &a);
evas_object_color_set(sd->child_obj, r, g, b, a);
evas_object_clip_set(sd->child_obj, evas_object_clip_get(sd->smart_obj));
@ -196,41 +189,6 @@ _e_smart_del(Evas_Object *obj)
free(sd);
}
static void
_e_smart_layer_set(Evas_Object *obj, int layer)
{
INTERNAL_ENTRY;
evas_object_layer_set(sd->child_obj, layer);
}
static void
_e_smart_raise(Evas_Object *obj)
{
INTERNAL_ENTRY;
evas_object_raise(sd->child_obj);
}
static void
_e_smart_lower(Evas_Object *obj)
{
INTERNAL_ENTRY;
evas_object_lower(sd->child_obj);
}
static void
_e_smart_stack_above(Evas_Object *obj, Evas_Object *above)
{
INTERNAL_ENTRY;
evas_object_stack_above(sd->child_obj, above);
}
static void
_e_smart_stack_below(Evas_Object *obj, Evas_Object *below)
{
INTERNAL_ENTRY;
evas_object_stack_below(sd->child_obj, below);
}
static void
_e_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
{
@ -291,11 +249,17 @@ static void
_e_smart_init(void)
{
if (_e_smart) return;
_e_smart = evas_smart_new
(SMART_NAME, _e_smart_add, _e_smart_del, _e_smart_layer_set,
_e_smart_raise, _e_smart_lower, _e_smart_stack_above,
_e_smart_stack_below, _e_smart_move, _e_smart_resize,
_e_smart_show, _e_smart_hide, _e_smart_color_set,
_e_smart_clip_set, _e_smart_clip_unset, NULL);
_e_smart = evas_smart_new(SMART_NAME,
_e_smart_add,
_e_smart_del,
NULL, NULL, NULL, NULL, NULL,
_e_smart_move,
_e_smart_resize,
_e_smart_show,
_e_smart_hide,
_e_smart_color_set,
_e_smart_clip_set,
_e_smart_clip_unset,
NULL);
}

View File

@ -28,10 +28,6 @@ struct _E_Scrollbar_Smart_Data
static void _e_scrollbar_smart_add(Evas_Object *object);
static void _e_scrollbar_smart_del(Evas_Object *object);
static void _e_scrollbar_smart_raise(Evas_Object *object);
static void _e_scrollbar_smart_lower(Evas_Object *object);
static void _e_scrollbar_smart_stack_above(Evas_Object *object, Evas_Object *above);
static void _e_scrollbar_smart_stack_below(Evas_Object *object, Evas_Object *below);
static void _e_scrollbar_smart_move(Evas_Object *object, Evas_Coord x, Evas_Coord y);
static void _e_scrollbar_smart_resize(Evas_Object *object, Evas_Coord w, Evas_Coord h);
static void _e_scrollbar_smart_show(Evas_Object *object);
@ -48,11 +44,7 @@ e_scrollbar_add(Evas *evas)
e_scrollbar_smart = evas_smart_new("e_entry",
_e_scrollbar_smart_add, /* add */
_e_scrollbar_smart_del, /* del */
NULL, /* layer_set */
_e_scrollbar_smart_raise, /* raise */
_e_scrollbar_smart_lower, /* lower */
_e_scrollbar_smart_stack_above, /* stack_above */
_e_scrollbar_smart_stack_below, /* stack_below */
NULL, NULL, NULL, NULL, NULL,
_e_scrollbar_smart_move, /* move */
_e_scrollbar_smart_resize, /* resize */
_e_scrollbar_smart_show, /* show */
@ -246,51 +238,6 @@ _e_scrollbar_smart_del(Evas_Object *object)
free(sd);
}
static void
_e_scrollbar_smart_raise(Evas_Object *object)
{
E_Scrollbar_Smart_Data *sd;
if ((!object) || !(sd = evas_object_smart_data_get(object)))
return;
evas_object_raise(sd->edje_object);
}
static void
_e_scrollbar_smart_lower(Evas_Object *object)
{
E_Scrollbar_Smart_Data *sd;
if ((!object) || !(sd = evas_object_smart_data_get(object)))
return;
evas_object_lower(sd->edje_object);
}
static void
_e_scrollbar_smart_stack_above(Evas_Object *object, Evas_Object *above)
{
E_Scrollbar_Smart_Data *sd;
if ((!object) || (!above) || !(sd = evas_object_smart_data_get(object)))
return;
evas_object_stack_above(sd->edje_object, above);
}
/* Called when the object is stacked below another object */
static void
_e_scrollbar_smart_stack_below(Evas_Object *object, Evas_Object *below)
{
E_Scrollbar_Smart_Data *sd;
if ((!object) || (!below) || !(sd = evas_object_smart_data_get(object)))
return;
evas_object_stack_below(sd->edje_object, below);
}
/* Called when the object is moved */
static void
_e_scrollbar_smart_move(Evas_Object *object, Evas_Coord x, Evas_Coord y)

View File

@ -53,11 +53,6 @@ static void _e_table_smart_extents_calcuate(E_Smart_Data *sd);
static void _e_table_smart_init(void);
static void _e_table_smart_add(Evas_Object *obj);
static void _e_table_smart_del(Evas_Object *obj);
static void _e_table_smart_layer_set(Evas_Object *obj, int layer);
static void _e_table_smart_raise(Evas_Object *obj);
static void _e_table_smart_lower(Evas_Object *obj);
static void _e_table_smart_stack_above(Evas_Object *obj, Evas_Object * above);
static void _e_table_smart_stack_below(Evas_Object *obj, Evas_Object * below);
static void _e_table_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
static void _e_table_smart_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
static void _e_table_smart_show(Evas_Object *obj);
@ -769,11 +764,7 @@ _e_table_smart_init(void)
_e_smart = evas_smart_new("e_table",
_e_table_smart_add,
_e_table_smart_del,
_e_table_smart_layer_set,
_e_table_smart_raise,
_e_table_smart_lower,
_e_table_smart_stack_above,
_e_table_smart_stack_below,
NULL, NULL, NULL, NULL, NULL,
_e_table_smart_move,
_e_table_smart_resize,
_e_table_smart_show,
@ -822,96 +813,6 @@ _e_table_smart_del(Evas_Object *obj)
free(sd);
}
static void
_e_table_smart_layer_set(Evas_Object *obj, int layer)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
{
evas_object_layer_set(l->data, layer);
}
}
}
static void
_e_table_smart_raise(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = evas_list_last(sd->items); l; l = l->prev)
{
evas_object_raise(l->data);
}
}
}
static void
_e_table_smart_lower(Evas_Object *obj)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
{
evas_object_lower(l->data);
}
}
}
static void
_e_table_smart_stack_above(Evas_Object *obj, Evas_Object *above)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = sd->items; l; l = l->next)
{
evas_object_stack_above(l->data, above);
}
}
}
static void
_e_table_smart_stack_below(Evas_Object *obj, Evas_Object *below)
{
E_Smart_Data *sd;
sd = evas_object_smart_data_get(obj);
if (!sd) return;
{
Evas_List *l;
for (l = evas_list_last(sd->items); l; l = l->prev)
{
evas_object_stack_below(l->data, below);
}
}
}
static void
_e_table_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
{

View File

@ -34,11 +34,6 @@ struct _E_Smart_Data
static void _e_smart_reconfigure(E_Smart_Data *sd);
static void _e_smart_add(Evas_Object *obj);
static void _e_smart_del(Evas_Object *obj);
static void _e_smart_layer_set(Evas_Object *obj, int layer);
static void _e_smart_raise(Evas_Object *obj);
static void _e_smart_lower(Evas_Object *obj);
static void _e_smart_stack_above(Evas_Object *obj, Evas_Object *above);
static void _e_smart_stack_below(Evas_Object *obj, Evas_Object *below);
static void _e_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
static void _e_smart_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
static void _e_smart_show(Evas_Object *obj);
@ -486,41 +481,6 @@ _e_smart_del(Evas_Object *obj)
free(sd);
}
static void
_e_smart_layer_set(Evas_Object *obj, int layer)
{
INTERNAL_ENTRY;
evas_object_layer_set(sd->resize_obj, layer);
}
static void
_e_smart_raise(Evas_Object *obj)
{
INTERNAL_ENTRY;
evas_object_raise(sd->resize_obj);
}
static void
_e_smart_lower(Evas_Object *obj)
{
INTERNAL_ENTRY;
evas_object_lower(sd->resize_obj);
}
static void
_e_smart_stack_above(Evas_Object *obj, Evas_Object *above)
{
INTERNAL_ENTRY;
evas_object_stack_above(sd->resize_obj, above);
}
static void
_e_smart_stack_below(Evas_Object *obj, Evas_Object *below)
{
INTERNAL_ENTRY;
evas_object_stack_below(sd->resize_obj, below);
}
static void
_e_smart_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y)
{
@ -580,10 +540,16 @@ static void
_e_smart_init(void)
{
if (_e_smart) return;
_e_smart = evas_smart_new
(SMART_NAME, _e_smart_add, _e_smart_del, _e_smart_layer_set,
_e_smart_raise, _e_smart_lower, _e_smart_stack_above,
_e_smart_stack_below, _e_smart_move, _e_smart_resize,
_e_smart_show, _e_smart_hide, _e_smart_color_set,
_e_smart_clip_set, _e_smart_clip_unset, NULL);
_e_smart = evas_smart_new(SMART_NAME,
_e_smart_add,
_e_smart_del,
NULL, NULL, NULL, NULL, NULL,
_e_smart_move,
_e_smart_resize,
_e_smart_show,
_e_smart_hide,
_e_smart_color_set,
_e_smart_clip_set,
_e_smart_clip_unset,
NULL);
}

View File

@ -488,7 +488,7 @@ _ibar_bar_new(IBar *ib, E_Container *con)
{
o = edje_object_add(ibb->evas);
ibb->overlay_object = o;
evas_object_layer_set(o, 1);
evas_object_layer_set(o, 2);
e_theme_edje_object_set(o, "base/theme/modules/ibar",
"modules/ibar/follower");
evas_object_show(o);
@ -496,7 +496,7 @@ _ibar_bar_new(IBar *ib, E_Container *con)
o = evas_object_rectangle_add(ibb->evas);
ibb->event_object = o;
evas_object_layer_set(o, 2);
evas_object_layer_set(o, 3);
evas_object_repeat_events_set(o, 1);
evas_object_color_set(o, 0, 0, 0, 0);
evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_IN, _ibar_bar_cb_mouse_in, ibb);
@ -1826,7 +1826,7 @@ _ibar_bar_cb_follower(void *data, E_Menu *m, E_Menu_Item *mi)
if (ibb->overlay_object) continue;
o = edje_object_add(ibb->evas);
ibb->overlay_object = o;
evas_object_layer_set(o, 1);
evas_object_layer_set(o, 2);
e_theme_edje_object_set(o, "base/theme/modules/ibar",
"modules/ibar/follower");
evas_object_show(o);