[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [44686] trunk/blender/source/blender/ makesrna/intern: Mango request: for range buttons copy start+1 to end if start>=0

Sergey Sharybin sergey.vfx at gmail.com
Tue Mar 6 22:42:13 CET 2012


Revision: 44686
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=44686
Author:   nazgul
Date:     2012-03-06 21:42:03 +0000 (Tue, 06 Mar 2012)
Log Message:
-----------
Mango request: for range buttons copy start+1 to end if start>=0
Also copy end-1 to start if changing end boundary and end<=start.

Scene's start/end frames and ghost range in armature buttons are affected.

Modified Paths:
--------------
    trunk/blender/source/blender/makesrna/intern/rna_armature.c
    trunk/blender/source/blender/makesrna/intern/rna_scene.c

Modified: trunk/blender/source/blender/makesrna/intern/rna_armature.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_armature.c	2012-03-06 21:21:22 UTC (rev 44685)
+++ trunk/blender/source/blender/makesrna/intern/rna_armature.c	2012-03-06 21:42:03 UTC (rev 44686)
@@ -234,15 +234,23 @@
 static void rna_Armature_ghost_start_frame_set(PointerRNA *ptr, int value)
 {
 	bArmature *data = (bArmature*)ptr->data;
-	CLAMP(value, 1, data->ghostef);
+	CLAMP(value, 1, (int)(MAXFRAMEF/2));
 	data->ghostsf = value;
+
+	if (data->ghostsf >= data->ghostef) {
+		data->ghostef = MIN2(data->ghostsf + 1, (int)(MAXFRAMEF/2));
+	}
 }
 
 static void rna_Armature_ghost_end_frame_set(PointerRNA *ptr, int value)
 {
 	bArmature *data = (bArmature*)ptr->data;
-	CLAMP(value, data->ghostsf, (int)(MAXFRAMEF/2));
+	CLAMP(value, 1, (int)(MAXFRAMEF/2));
 	data->ghostef = value;
+
+	if (data->ghostsf >= data->ghostef) {
+		data->ghostsf = MAX2(data->ghostef - 1, 1);
+	}
 }
 /* XXX depreceated... old armature only animviz */
 

Modified: trunk/blender/source/blender/makesrna/intern/rna_scene.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_scene.c	2012-03-06 21:21:22 UTC (rev 44685)
+++ trunk/blender/source/blender/makesrna/intern/rna_scene.c	2012-03-06 21:42:03 UTC (rev 44686)
@@ -466,15 +466,23 @@
 {
 	Scene *data = (Scene*)ptr->data;
 	/* MINFRAME not MINAFRAME, since some output formats can't taken negative frames */
-	CLAMP(value, MINFRAME, data->r.efra); 
+	CLAMP(value, MINFRAME, MAXFRAME);
 	data->r.sfra = value;
+
+	if (data->r.sfra >= data->r.efra) {
+		data->r.efra = MIN2(data->r.sfra + 1, MAXFRAME);
+	}
 }
 
 static void rna_Scene_end_frame_set(PointerRNA *ptr, int value)
 {
 	Scene *data = (Scene*)ptr->data;
-	CLAMP(value, data->r.sfra, MAXFRAME);
+	CLAMP(value, MINFRAME, MAXFRAME);
 	data->r.efra = value;
+
+	if (data->r.sfra >= data->r.efra) {
+		data->r.sfra = MAX2(data->r.efra - 1, MINFRAME);
+	}
 }
 
 static void rna_Scene_use_preview_range_set(PointerRNA *ptr, int value)




More information about the Bf-blender-cvs mailing list