return scene->ed;
}
+void seq_free_clipboard(Scene *scene)
+{
+ Editing *ed = scene->ed;
+ Sequence *seq, *nseq;
+
+ for(seq= ed->seqbase_clipboard.first; seq; seq= nseq) {
+ nseq= seq->next;
+ seq_free_sequence(scene, seq);
+ }
+ ed->seqbase_clipboard.first= ed->seqbase_clipboard.last= NULL;
+}
+
void seq_free_editing(Scene *scene)
{
Editing *ed = scene->ed;
MetaStack *ms;
- Sequence *seq;
+ Sequence *seq, *nseq;
if(ed==NULL)
return;
}
SEQ_END
+ seq_free_clipboard(scene);
+
while((ms= ed->metastack.first)) {
BLI_remlink(&ed->metastack, ms);
MEM_freeN(ms);
}
+Sequence *get_seq_by_name(ListBase *seqbase, const char *name, int recursive)
+{
+ Sequence *iseq=NULL;
+ Sequence *rseq=NULL;
+
+ for (iseq=seqbase->first; iseq; iseq=iseq->next) {
+ if (strcmp(name, iseq->name+2) == 0)
+ return iseq;
+ else if(recursive && (iseq->seqbase.first) && (rseq=get_seq_by_name(&iseq->seqbase, name, 1))) {
+ return rseq;
+ }
+ }
+
+ return NULL;
+}
+
+
Sequence *active_seq_get(Scene *scene)
{
Editing *ed= seq_give_editing(scene, FALSE);