[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [20280] branches/blender2.5/blender/source /blender: UI: some fixes for last commit.

Brecht Van Lommel brecht at blender.org
Tue May 19 20:30:34 CEST 2009


Revision: 20280
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20280
Author:   blendix
Date:     2009-05-19 20:30:33 +0200 (Tue, 19 May 2009)

Log Message:
-----------
UI: some fixes for last commit.

Modified Paths:
--------------
    branches/blender2.5/blender/source/blender/editors/interface/view2d.c
    branches/blender2.5/blender/source/blender/editors/screen/area.c
    branches/blender2.5/blender/source/blender/editors/space_buttons/space_buttons.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c

Modified: branches/blender2.5/blender/source/blender/editors/interface/view2d.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/interface/view2d.c	2009-05-19 17:13:33 UTC (rev 20279)
+++ branches/blender2.5/blender/source/blender/editors/interface/view2d.c	2009-05-19 18:30:33 UTC (rev 20280)
@@ -241,7 +241,7 @@
 				v2d->maxzoom= 2.0f;
 				
 				v2d->align= (V2D_ALIGN_NO_NEG_X|V2D_ALIGN_NO_POS_Y);
-				v2d->keeptot= V2D_KEEPTOT_STRICT; /* XXX */
+				v2d->keeptot= V2D_KEEPTOT_BOUNDS;
 				
 				v2d->tot.xmin= 0.0f;
 				v2d->tot.xmax= winx;

Modified: branches/blender2.5/blender/source/blender/editors/screen/area.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/screen/area.c	2009-05-19 17:13:33 UTC (rev 20279)
+++ branches/blender2.5/blender/source/blender/editors/screen/area.c	2009-05-19 18:30:33 UTC (rev 20280)
@@ -1048,6 +1048,12 @@
 		x += w;
 	else
 		y= miny;
+	
+	/* in case there are no panels */
+	if(x == 0 || y == 0) {
+		x= UI_PANEL_WIDTH;
+		y= UI_PANEL_WIDTH;
+	}
 
 	/* clear */
 	UI_GetThemeColor3fv(TH_BACK, col);
@@ -1055,10 +1061,14 @@
 	glClear(GL_COLOR_BUFFER_BIT);
 
 	/* before setting the view */
-	if(vertical)
+	if(vertical) {
 		v2d->keepofs |= V2D_LOCKOFS_X;
-	else
+		v2d->keepofs &= ~V2D_LOCKOFS_Y;
+	}
+	else {
 		v2d->keepofs &= ~V2D_LOCKOFS_X;
+		v2d->keepofs |= V2D_LOCKOFS_Y;
+	}
 
 	UI_view2d_totRect_set(v2d, x, -y);
 

Modified: branches/blender2.5/blender/source/blender/editors/space_buttons/space_buttons.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/space_buttons/space_buttons.c	2009-05-19 17:13:33 UTC (rev 20279)
+++ branches/blender2.5/blender/source/blender/editors/space_buttons/space_buttons.c	2009-05-19 18:30:33 UTC (rev 20280)
@@ -132,7 +132,7 @@
 	SpaceButs *sbuts= sa->spacedata.first;
 
 	/* auto-align based on size */
-	if(sbuts->align == BUT_AUTO) {
+	if(sbuts->align == BUT_AUTO || !sbuts->align) {
 		if(sa->winx > sa->winy)
 			sbuts->align= BUT_HORIZONTAL;
 		else

Modified: branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c	2009-05-19 17:13:33 UTC (rev 20279)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_access.c	2009-05-19 18:30:33 UTC (rev 20280)
@@ -63,15 +63,21 @@
 void RNA_id_pointer_create(ID *id, PointerRNA *r_ptr)
 {
 	PointerRNA tmp;
-	StructRNA *idtype= NULL;
+	StructRNA *type, *idtype= NULL;
 
 	if(id) {
 		memset(&tmp, 0, sizeof(tmp));
 		tmp.data= id;
 		idtype= rna_ID_refine(&tmp);
 		
-		if(idtype->refine)
-			idtype= idtype->refine(&tmp);
+		while(idtype->refine) {
+			type= idtype->refine(&tmp);
+
+			if(type == idtype)
+				break;
+			else
+				idtype= type;
+		}
 	}
 	
 	r_ptr->id.data= id;
@@ -121,8 +127,14 @@
 		result.type= type;
 		rna_pointer_inherit_id(type, ptr, &result);
 
-		if(type->refine)
-			result.type= type->refine(&result);
+		while(result.type->refine) {
+			type= result.type->refine(&result);
+
+			if(type == result.type)
+				break;
+			else
+				result.type= type;
+		}
 	}
 	else
 		memset(&result, 0, sizeof(result));





More information about the Bf-blender-cvs mailing list