[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [24292] trunk/blender/source/blender/ editors/screen/area.c: Fix for [#19460] (+) widgets to expand UI elements overlap other windows

Matt Ebb matt at mke3.net
Wed Nov 4 05:13:31 CET 2009


Revision: 24292
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=24292
Author:   broken
Date:     2009-11-04 05:13:30 +0100 (Wed, 04 Nov 2009)

Log Message:
-----------
Fix for [#19460] (+) widgets to expand UI elements overlap other windows

Modified Paths:
--------------
    trunk/blender/source/blender/editors/screen/area.c

Modified: trunk/blender/source/blender/editors/screen/area.c
===================================================================
--- trunk/blender/source/blender/editors/screen/area.c	2009-11-04 03:01:39 UTC (rev 24291)
+++ trunk/blender/source/blender/editors/screen/area.c	2009-11-04 04:13:30 UTC (rev 24292)
@@ -498,11 +498,16 @@
 static void region_azone_icon(ScrArea *sa, AZone *az, ARegion *ar)
 {
 	AZone *azt;
+	int tot=0;
 	
+	for(azt= sa->actionzones.first; azt; azt= azt->next) {
+		if(azt->edge == az->edge) tot++;
+	}
+	
 	if(az->edge=='t') {
-		az->x1= ar->winrct.xmax - AZONEPAD_ICON;
+		az->x1= ar->winrct.xmax - tot*2*AZONEPAD_ICON;
 		az->y1= ar->winrct.ymax + AZONEPAD_ICON;
-		az->x2= ar->winrct.xmax - 2*AZONEPAD_ICON;
+		az->x2= ar->winrct.xmax - tot*AZONEPAD_ICON;
 		az->y2= ar->winrct.ymax + 2*AZONEPAD_ICON;
 	}
 	else if(az->edge=='b') {
@@ -513,15 +518,15 @@
 	}
 	else if(az->edge=='l') {
 		az->x1= ar->winrct.xmin - 2*AZONEPAD_ICON;
-		az->y1= ar->winrct.ymax - 2*AZONEPAD_ICON;
+		az->y1= ar->winrct.ymax - tot*2*AZONEPAD_ICON;
 		az->x2= ar->winrct.xmin - AZONEPAD_ICON;
-		az->y2= ar->winrct.ymax - AZONEPAD_ICON;
+		az->y2= ar->winrct.ymax - tot*AZONEPAD_ICON;
 	}
 	else { // if(az->edge=='r') {
 		az->x1= ar->winrct.xmax + AZONEPAD_ICON;
-		az->y1= ar->winrct.ymax - 2*AZONEPAD_ICON;
+		az->y1= ar->winrct.ymax - tot*2*AZONEPAD_ICON;
 		az->x2= ar->winrct.xmax + 2*AZONEPAD_ICON;
-		az->y2= ar->winrct.ymax - AZONEPAD_ICON;
+		az->y2= ar->winrct.ymax - tot*AZONEPAD_ICON;
 	}
 
 	BLI_init_rcti(&az->rect, az->x1, az->x2, az->y1, az->y2);





More information about the Bf-blender-cvs mailing list