[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [43864] trunk/blender/source/blender/ editors/transform/transform_conversions.c: fix [#27953] VSE: weird drawing and placement issues strips during 'E'

Campbell Barton ideasman42 at gmail.com
Fri Feb 3 02:06:39 CET 2012


Revision: 43864
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=43864
Author:   campbellbarton
Date:     2012-02-03 01:06:32 +0000 (Fri, 03 Feb 2012)
Log Message:
-----------
fix [#27953] VSE: weird drawing and placement issues strips during 'E'

was calculating meta / effect in wrong order causing delay, now calculate selected meta's, then all effects after tramsforming.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/transform/transform_conversions.c

Modified: trunk/blender/source/blender/editors/transform/transform_conversions.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform_conversions.c	2012-02-02 23:58:46 UTC (rev 43863)
+++ trunk/blender/source/blender/editors/transform/transform_conversions.c	2012-02-03 01:06:32 UTC (rev 43864)
@@ -2303,13 +2303,18 @@
 
 	if (ELEM(t->mode, TFM_SEQ_SLIDE, TFM_TIME_TRANSLATE)) { /* originally TFM_TIME_EXTEND, transform changes */
 		/* Special annoying case here, need to calc metas with TFM_TIME_EXTEND only */
-		seq= seqbasep->first;
 
-		while(seq) {
-			if (seq->type == SEQ_META && seq->flag & SELECT)
+		/* calc all meta's then effects [#27953] */
+		for (seq = seqbasep->first; seq; seq = seq->next) {
+			if (seq->type == SEQ_META && seq->flag & SELECT) {
 				calc_sequence(t->scene, seq);
-			seq= seq->next;
+			}
 		}
+		for (seq = seqbasep->first; seq; seq = seq->next) {
+			if (seq->seq1 || seq->seq2 || seq->seq3) {
+				calc_sequence(t->scene, seq);
+			}
+		}
 	}
 
 	/* need to do the overlap check in a new loop otherwise adjacent strips




More information about the Bf-blender-cvs mailing list