[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [29848] trunk/blender/source/blender: adding a new sequence strip uses the active strips path when available.

Campbell Barton ideasman42 at gmail.com
Thu Jul 1 16:08:41 CEST 2010


Revision: 29848
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=29848
Author:   campbellbarton
Date:     2010-07-01 16:08:41 +0200 (Thu, 01 Jul 2010)

Log Message:
-----------
adding a new sequence strip uses the active strips path when available.

Modified Paths:
--------------
    trunk/blender/source/blender/blenlib/intern/bpath.c
    trunk/blender/source/blender/editors/space_sequencer/sequencer_add.c
    trunk/blender/source/blender/makesdna/DNA_sequence_types.h

Modified: trunk/blender/source/blender/blenlib/intern/bpath.c
===================================================================
--- trunk/blender/source/blender/blenlib/intern/bpath.c	2010-07-01 13:25:49 UTC (rev 29847)
+++ trunk/blender/source/blender/blenlib/intern/bpath.c	2010-07-01 14:08:41 UTC (rev 29848)
@@ -62,10 +62,7 @@
 /* for sequence */
 //XXX #include "BSE_sequence.h"
 //XXX define below from BSE_sequence.h - otherwise potentially odd behaviour
-#define SEQ_HAS_PATH(_seq) ( (_seq)->type==SEQ_MOVIE || (_seq)->type==SEQ_IMAGE || (_seq)->type==SEQ_SOUND )
 
-
-
 #define FILE_MAX			240
 
 /* TODO - BPATH_PLUGIN, BPATH_SEQ */

Modified: trunk/blender/source/blender/editors/space_sequencer/sequencer_add.c
===================================================================
--- trunk/blender/source/blender/editors/space_sequencer/sequencer_add.c	2010-07-01 13:25:49 UTC (rev 29847)
+++ trunk/blender/source/blender/editors/space_sequencer/sequencer_add.c	2010-07-01 14:08:41 UTC (rev 29848)
@@ -121,7 +121,18 @@
 	
 	if ((flag & SEQPROP_ENDFRAME) && RNA_property_is_set(op->ptr, "frame_end")==0)
 		RNA_int_set(op->ptr, "frame_end", (int)mval_v2d[0] + 25); // XXX arbitary but ok for now.
-	
+
+	if(RNA_struct_find_property(op->ptr, "filepath")) {
+		Scene *scene= CTX_data_scene(C);
+		Sequence *last_seq= seq_active_get(scene);
+		if(last_seq && last_seq->strip && SEQ_HAS_PATH(last_seq)) {
+			RNA_string_set(op->ptr, "filepath", last_seq->strip->dir);
+		}
+		// // TODO
+		// else {
+		// 	RNA_string_set(op->ptr, "filepath", ed->act_imagedir);
+		// }
+	}
 }
 
 static void seq_load_operator_info(SeqLoadInfo *seq_load, wmOperator *op)
@@ -318,7 +329,10 @@
 		RNA_boolean_set(op->ptr, "relative_path", U.flag & USER_RELPATHS);
 
 	sequencer_generic_invoke_xy__internal(C, op, event, 0);
-	return WM_operator_filesel(C, op, event);
+
+	WM_event_add_fileselect(C, op);
+	return OPERATOR_RUNNING_MODAL;
+
 	//return sequencer_add_movie_strip_exec(C, op);
 }
 
@@ -363,7 +377,10 @@
 		RNA_boolean_set(op->ptr, "relative_path", U.flag & USER_RELPATHS);
 
 	sequencer_generic_invoke_xy__internal(C, op, event, 0);
-	return WM_operator_filesel(C, op, event);
+
+	WM_event_add_fileselect(C, op);
+	return OPERATOR_RUNNING_MODAL;
+
 	//return sequencer_add_sound_strip_exec(C, op);
 }
 
@@ -457,7 +474,10 @@
 		RNA_boolean_set(op->ptr, "relative_path", U.flag & USER_RELPATHS);
 
 	sequencer_generic_invoke_xy__internal(C, op, event, SEQPROP_ENDFRAME);
-	return WM_operator_filesel(C, op, event);	
+
+	WM_event_add_fileselect(C, op);
+	return OPERATOR_RUNNING_MODAL;
+
 	//return sequencer_add_image_strip_exec(C, op);
 }
 

Modified: trunk/blender/source/blender/makesdna/DNA_sequence_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_sequence_types.h	2010-07-01 13:25:49 UTC (rev 29847)
+++ trunk/blender/source/blender/makesdna/DNA_sequence_types.h	2010-07-01 14:08:41 UTC (rev 29848)
@@ -324,5 +324,7 @@
    otherwise, you can't really blend, right :) !)
 */
 
+#define SEQ_HAS_PATH(_seq) ( (_seq)->type==SEQ_MOVIE || (_seq)->type==SEQ_IMAGE || (_seq)->type==SEQ_SOUND )
+
 #endif
 





More information about the Bf-blender-cvs mailing list