Enlightenment CVS committal

Author  : raster
Project : e17
Module  : libs/evas

Dir     : e17/libs/evas/src/lib/canvas


Modified Files:
        evas_object_main.c 


Log Message:


check deleted flag.. need to do this in more places tho....

===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/evas/src/lib/canvas/evas_object_main.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -3 -r1.17 -r1.18
--- evas_object_main.c  18 Oct 2003 03:34:00 -0000      1.17
+++ evas_object_main.c  8 Mar 2004 02:42:08 -0000       1.18
@@ -407,6 +407,7 @@
    MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
    return;
    MAGIC_CHECK_END();
+   if (obj->delete_me) return;
    if (!obj->layer)
      {
        evas_object_free(obj, 1);
@@ -423,10 +424,10 @@
    evas_object_hide(obj);   
    while (obj->clip.clipees) evas_object_clip_unset(obj->clip.clipees->data);
    if (obj->cur.clipper) evas_object_clip_unset(obj);
-   evas_object_change(obj);
-   obj->delete_me = 1;
    if (obj->smart.smart) evas_object_smart_del(obj);
    evas_object_smart_cleanup(obj);
+   obj->delete_me = 1;
+   evas_object_change(obj);
 }
 
 /**
@@ -443,6 +444,7 @@
    MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
    return;
    MAGIC_CHECK_END();
+   if (obj->delete_me) return;
    if (evas_object_intercept_call_move(obj, x, y)) return;
    if (obj->smart.smart)
      {
@@ -494,6 +496,7 @@
    MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
    return;
    MAGIC_CHECK_END();
+   if (obj->delete_me) return;
    if (w < 0.0) w = 0.0; if (h < 0.0) h = 0.0;
    if (evas_object_intercept_call_resize(obj, w, h)) return;
    if (obj->smart.smart)
@@ -544,6 +547,11 @@
    if (x) *x = 0; if (y) *y = 0; if (w) *w = 0; if (h) *h = 0;
    return;
    MAGIC_CHECK_END();
+   if (obj->delete_me)
+     {
+       if (x) *x = 0; if (y) *y = 0; if (w) *w = 0; if (h) *h = 0;
+       return;
+     }
    if (x) *x = obj->cur.geometry.x;
    if (y) *y = obj->cur.geometry.y;
    if (w) *w = obj->cur.geometry.w;
@@ -562,6 +570,7 @@
    MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
    return;
    MAGIC_CHECK_END();
+   if (obj->delete_me) return;
    if (evas_object_intercept_call_show(obj)) return;
    if (obj->smart.smart)
      {
@@ -603,6 +612,7 @@
    MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
    return;
    MAGIC_CHECK_END();
+   if (obj->delete_me) return;
    if (evas_object_intercept_call_hide(obj)) return;
    if (obj->smart.smart)
      {
@@ -665,6 +675,7 @@
    MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
    return 0;
    MAGIC_CHECK_END();
+   if (obj->delete_me) return 0;
    return obj->cur.visible;
 }
 
@@ -680,6 +691,7 @@
    MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
    return;
    MAGIC_CHECK_END();
+   if (obj->delete_me) return;
    if (r > 255) r = 255; if (r < 0) r = 0;
    if (g > 255) g = 255; if (g < 0) g = 0;
    if (b > 255) b = 255; if (b < 0) b = 0;
@@ -714,6 +726,11 @@
    if (r) *r = 0; if (g) *g = 0; if (b) *b = 0; if (a) *a = 0;
    return;
    MAGIC_CHECK_END();
+   if (obj->delete_me)
+     {
+       if (r) *r = 0; if (g) *g = 0; if (b) *b = 0; if (a) *a = 0;
+       return;
+     }
    if (r) *r = obj->cur.color.r;
    if (g) *g = obj->cur.color.g;
    if (b) *b = obj->cur.color.b;
@@ -732,6 +749,7 @@
    MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
    return NULL;
    MAGIC_CHECK_END();
+   if (obj->delete_me) return 0;
    return obj->layer->evas;
 }
 
@@ -763,6 +781,7 @@
             Evas_Object *obj;
             
             obj = (Evas_Object *)l2;
+            if (obj->delete_me) continue;
             if ((!include_pass_events_objects) && (obj->pass_events)) continue;
             if ((!include_hidden_objects) && (!obj->cur.visible)) continue;
             evas_object_clip_recalc(obj);
@@ -818,6 +837,7 @@
             Evas_Object *obj;
             
             obj = (Evas_Object *)l2;
+            if (obj->delete_me) continue;
             if ((!include_pass_events_objects) && (obj->pass_events)) continue;
             if ((!include_hidden_objects) && (!obj->cur.visible)) continue;
             evas_object_clip_recalc(obj);
@@ -858,6 +878,7 @@
             Evas_Object *obj;
             
             obj = (Evas_Object *)l2;
+            if (obj->delete_me) continue;
             if ((!include_pass_events_objects) && (obj->pass_events)) continue;
             if ((!include_hidden_objects) && (!obj->cur.visible)) continue;
             evas_object_clip_recalc(obj);
@@ -902,6 +923,7 @@
             Evas_Object *obj;
             
             obj = (Evas_Object *)l2;
+            if (obj->delete_me) continue;
             if ((!include_pass_events_objects) && (obj->pass_events)) continue;
             if ((!include_hidden_objects) && (!obj->cur.visible)) continue;
             evas_object_clip_recalc(obj);
@@ -925,5 +947,6 @@
    MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
    return NULL;
    MAGIC_CHECK_END();
+   if (obj->delete_me) return "";
    return obj->type;
 }




-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to