From 41cabbdf27ab8fd5dcb22d1aef2bd3f14db4d9be Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Sat, 10 Mar 2001 23:22:49 +0000 Subject: [PATCH] ooooh... nup.. dotn allwoe resizes ayt all while shaded.. bad bad bad... SVN revision: 4363 --- src/actions.c | 3 ++ src/pack.c | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 102 insertions(+) diff --git a/src/actions.c b/src/actions.c index f1f7e75a0..909fbc826 100644 --- a/src/actions.c +++ b/src/actions.c @@ -575,6 +575,7 @@ e_act_resize_stop (void *o, E_Action *a, void *data, int x, int y, int rx, int E_Border *b; b = o; + if (b->current.shaded != 0) return; b->current.requested.x = b->current.x; b->current.requested.y = b->current.y; b->current.requested.w = b->current.w; @@ -666,6 +667,7 @@ e_act_resize_h_stop (void *o, E_Action *a, void *data, int x, int y, int rx, in E_Border *b; b = o; + if (b->current.shaded != 0) return; b->current.requested.x = b->current.x; b->current.requested.y = b->current.y; b->current.requested.w = b->current.w; @@ -745,6 +747,7 @@ e_act_resize_v_stop (void *o, E_Action *a, void *data, int x, int y, int rx, in E_Border *b; b = o; + if (b->current.shaded != 0) return; b->current.requested.x = b->current.x; b->current.requested.y = b->current.y; b->current.requested.w = b->current.w; diff --git a/src/pack.c b/src/pack.c index 3dd3982e9..c2364c474 100644 --- a/src/pack.c +++ b/src/pack.c @@ -37,6 +37,105 @@ e_pack_object_new(int type) ZERO(po, E_Pack_Object, 1); po->type = type; po->class = classes[type]; + po->references = 0; if (po->class.new) po->data.object = po->class.new(); return po; } + +void +e_pack_object_use(E_Pack_Object *po) +{ + po->references++; +} + +void +e_pack_object_free(E_Pack_Object *po) +{ + Evas_List l; + + po->references--; + if (po->references > 0) return; + if (po->class.free) po->class.free(po->data.object); + if (po->children) + { + for (l = po->children; l; l = l->next) + { + E_Pack_Object *child_po; + + child_po = l->data; + e_pack_object_free(child_po); + } + po->children = evas_list_free(po->children); + } + free(po); +} + +void +e_pack_object_set_evas(E_Pack_Object *po, Evas e) +{ + if (e == po->data.evas) return; + po->data.evas = e; + if (po->class.evas) po->class.evas(po->data.object, e); + if (po->children) + { + Evas_List l; + + for (l = po->children; l; l = l->next) + { + E_Pack_Object *child_po; + + child_po = l->data; + e_pack_object_set_evas(child_po, e); + } + } +} + +void +e_pack_object_show(E_Pack_Object *po) +{ +} + +void +e_pack_object_hide(E_Pack_Object *po) +{ +} + +void +e_pack_object_raise(E_Pack_Object *po) +{ +} + +void +e_pack_object_lower(E_Pack_Object *po) +{ +} + +void +e_pack_object_set_layer(E_Pack_Object *po, int l) +{ +} + +void +e_pack_object_clip(E_Pack_Object *po, Evas_Object clip) +{ +} + +void +e_pack_object_unclip(E_Pack_Object *po) +{ +} + +void +e_pack_object_move(E_Pack_Object *po, int x, int y) +{ +} + +void +e_pack_object_resize(E_Pack_Object *po, int w, int h) +{ +} + +void +e_pack_object_get_size(E_Pack_Object *po, int *w, int *h) +{ +}