[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [45090] trunk/blender/source/blender: Correction recent start/end range values for frames: it was impossible to set

Sergey Sharybin sergey.vfx at gmail.com
Thu Mar 22 18:27:53 CET 2012


Revision: 45090
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=45090
Author:   nazgul
Date:     2012-03-22 17:27:37 +0000 (Thu, 22 Mar 2012)
Log Message:
-----------
Correction recent start/end range values for frames: it was impossible to set
start frame = end frame which is useful in some cases.

Also made behavior of S/E operators equal to sliders in timeline.

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

Modified: trunk/blender/source/blender/editors/space_time/time_ops.c
===================================================================
--- trunk/blender/source/blender/editors/space_time/time_ops.c	2012-03-22 16:07:41 UTC (rev 45089)
+++ trunk/blender/source/blender/editors/space_time/time_ops.c	2012-03-22 17:27:37 UTC (rev 45090)
@@ -56,17 +56,20 @@
 		return OPERATOR_CANCELLED;
 
 	frame= CFRA;
-	/* if 'end frame' (Preview Range or Actual) is less than 'frame', 
-	 * clamp 'frame' to 'end frame'
-	 */
-	if (PEFRA < frame) frame= PEFRA;
-		
+
 	/* if Preview Range is defined, set the 'start' frame for that */
 	if (PRVRANGEON)
 		scene->r.psfra= frame;
 	else
 		scene->r.sfra= frame;
 	
+	if (PEFRA < frame) {
+		if (PRVRANGEON)
+			scene->r.pefra= frame;
+		else
+			scene->r.efra= frame;
+	}
+	
 	WM_event_add_notifier(C, NC_SCENE|ND_FRAME, scene);
 	
 	return OPERATOR_FINISHED;
@@ -98,16 +101,18 @@
 
 	frame= CFRA;
 
-	/* if 'start frame' (Preview Range or Actual) is greater than 'frame', 
-	 * clamp 'frame' to 'end frame'
-	 */
-	if (PSFRA > frame) frame= PSFRA;
-		
 	/* if Preview Range is defined, set the 'end' frame for that */
 	if (PRVRANGEON)
 		scene->r.pefra= frame;
 	else
 		scene->r.efra= frame;
+
+	if (PSFRA > frame) {
+		if (PRVRANGEON)
+			scene->r.psfra= frame;
+		else
+			scene->r.sfra= frame;
+	}
 	
 	WM_event_add_notifier(C, NC_SCENE|ND_FRAME, scene);
 	

Modified: trunk/blender/source/blender/makesrna/intern/rna_armature.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_armature.c	2012-03-22 16:07:41 UTC (rev 45089)
+++ trunk/blender/source/blender/makesrna/intern/rna_armature.c	2012-03-22 17:27:37 UTC (rev 45090)
@@ -238,7 +238,7 @@
 	data->ghostsf = value;
 
 	if (data->ghostsf >= data->ghostef) {
-		data->ghostef = MIN2(data->ghostsf + 1, (int)(MAXFRAMEF/2));
+		data->ghostef = MIN2(data->ghostsf, (int)(MAXFRAMEF/2));
 	}
 }
 
@@ -249,7 +249,7 @@
 	data->ghostef = value;
 
 	if (data->ghostsf >= data->ghostef) {
-		data->ghostsf = MAX2(data->ghostef - 1, 1);
+		data->ghostsf = MAX2(data->ghostef, 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-22 16:07:41 UTC (rev 45089)
+++ trunk/blender/source/blender/makesrna/intern/rna_scene.c	2012-03-22 17:27:37 UTC (rev 45090)
@@ -487,7 +487,7 @@
 	data->r.sfra = value;
 
 	if (data->r.sfra >= data->r.efra) {
-		data->r.efra = MIN2(data->r.sfra + 1, MAXFRAME);
+		data->r.efra = MIN2(data->r.sfra, MAXFRAME);
 	}
 }
 
@@ -498,7 +498,7 @@
 	data->r.efra = value;
 
 	if (data->r.sfra >= data->r.efra) {
-		data->r.sfra = MAX2(data->r.efra - 1, MINFRAME);
+		data->r.sfra = MAX2(data->r.efra, MINFRAME);
 	}
 }
 




More information about the Bf-blender-cvs mailing list