Enlightenment CVS committal

Author  : raster
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        e_gadman.c 


Log Message:


fix overlap

===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_gadman.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -3 -r1.16 -r1.17
--- e_gadman.c  22 Jan 2005 06:58:34 -0000      1.16
+++ e_gadman.c  22 Jan 2005 12:07:10 -0000      1.17
@@ -652,10 +652,13 @@
             E_Gadman_Client *gmc2;
             
             gmc2 = l->data;
-            if ((E_SPANS_COMMON(gmc->x, gmc->w, gmc2->x, gmc2->w)) &&
-                (E_SPANS_COMMON(gmc->y, gmc->h, gmc2->y, gmc2->h)))
+            if (gmc != gmc2)
               {
-                 gmc->x = gmc2->x + gmc2->w;
+                 if ((E_SPANS_COMMON(gmc->x, gmc->w, gmc2->x, gmc2->w)) &&
+                     (E_SPANS_COMMON(gmc->y, gmc->h, gmc2->y, gmc2->h)))
+                   {
+                      gmc->x = gmc2->x + gmc2->w;
+                   }
               }
          }
        if ((gmc->x + gmc->w) > (gmc->zone->x + gmc->zone->w))
@@ -666,20 +669,29 @@
             E_Gadman_Client *gmc2;
             
             gmc2 = l->data;
-            if ((E_SPANS_COMMON(gmc->x, gmc->w, gmc2->x, gmc2->w)) &&
-                (E_SPANS_COMMON(gmc->y, gmc->h, gmc2->y, gmc2->h)))
-              ok = 0;
+            if (gmc != gmc2)
+              {
+                 if ((E_SPANS_COMMON(gmc->x, gmc->w, gmc2->x, gmc2->w)) &&
+                     (E_SPANS_COMMON(gmc->y, gmc->h, gmc2->y, gmc2->h)))
+                   {
+                      ok = 0;
+                      break;
+                   }
+              }
          }
        if (ok) break;
        for (l = gmc->zone->container->gadman->clients; l; l = l->next)
          {
             E_Gadman_Client *gmc2;
             
-            gmc2 = l->data;
-            if ((E_SPANS_COMMON(gmc->x, gmc->w, gmc2->x, gmc2->w)) &&
-                (E_SPANS_COMMON(gmc->y, gmc->h, gmc2->y, gmc2->h)))
+            if (gmc != gmc2)
               {
-                 gmc->x = gmc2->x - gmc->w;
+                 gmc2 = l->data;
+                 if ((E_SPANS_COMMON(gmc->x, gmc->w, gmc2->x, gmc2->w)) &&
+                     (E_SPANS_COMMON(gmc->y, gmc->h, gmc2->y, gmc2->h)))
+                   {
+                      gmc->x = gmc2->x - gmc->w;
+                   }
               }
          }
        if (gmc->x < gmc->zone->x)
@@ -690,9 +702,15 @@
             E_Gadman_Client *gmc2;
             
             gmc2 = l->data;
-            if ((E_SPANS_COMMON(gmc->x, gmc->w, gmc2->x, gmc2->w)) &&
-                (E_SPANS_COMMON(gmc->y, gmc->h, gmc2->y, gmc2->h)))
-              ok = 0;
+            if (gmc != gmc2)
+              {
+                 if ((E_SPANS_COMMON(gmc->x, gmc->w, gmc2->x, gmc2->w)) &&
+                     (E_SPANS_COMMON(gmc->y, gmc->h, gmc2->y, gmc2->h)))
+                   {
+                      ok = 0;
+                      break;
+                   }
+              }
          }
        if (ok) break;
        if (gmc->y > (gmc->zone->y + (gmc->zone->h / 2)))




-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to