Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Antalik <richardantalik@gmail.com>2021-08-27 13:59:46 +0300
committerRichard Antalik <richardantalik@gmail.com>2021-08-27 13:59:46 +0300
commit59cd9c6da682675c439731781d127b1b02f12a76 (patch)
treebe3547652d6e9bf2e4051dbd54a71b771ec5afad /source/blender/sequencer/intern/strip_transform.c
parent7f7370fa26fbe8597cbb9832755f854fd4a8d0e5 (diff)
VSE: Transform overwrite mode
Add mode to overwrite strips on overlap instead of resolving overlap. When overlap is created, 3 things can happen: - On partial overlap, handles of overlapped strip are moved - On complete overlap with smaller strip, overlapped strip is split - On complete overlap with larger strip, overlapped strip is removed This mode can be enabled in header. Reviewed By: fsiddi, mano-wii Differential Revision: https://developer.blender.org/D11805
Diffstat (limited to 'source/blender/sequencer/intern/strip_transform.c')
-rw-r--r--source/blender/sequencer/intern/strip_transform.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/sequencer/intern/strip_transform.c b/source/blender/sequencer/intern/strip_transform.c
index 9f69f434ca0..3a5f93a72b0 100644
--- a/source/blender/sequencer/intern/strip_transform.c
+++ b/source/blender/sequencer/intern/strip_transform.c
@@ -208,7 +208,7 @@ bool SEQ_transform_sequence_can_be_translated(Sequence *seq)
return !(seq->type & SEQ_TYPE_EFFECT) || (SEQ_effect_get_num_inputs(seq->type) == 0);
}
-static bool seq_overlap(Sequence *seq1, Sequence *seq2)
+bool SEQ_transform_test_overlap_seq_seq(Sequence *seq1, Sequence *seq2)
{
return (seq1 != seq2 && seq1->machine == seq2->machine &&
((seq1->enddisp <= seq2->startdisp) || (seq1->startdisp >= seq2->enddisp)) == 0);
@@ -220,7 +220,7 @@ bool SEQ_transform_test_overlap(ListBase *seqbasep, Sequence *test)
seq = seqbasep->first;
while (seq) {
- if (seq_overlap(test, seq)) {
+ if (SEQ_transform_test_overlap_seq_seq(test, seq)) {
return true;
}
@@ -316,7 +316,7 @@ static int shuffle_seq_time_offset_test(SeqCollection *strips_to_shuffle,
SEQ_ITERATOR_FOREACH (seq, strips_to_shuffle) {
LISTBASE_FOREACH (Sequence *, seq_other, seqbasep) {
- if (!seq_overlap(seq, seq_other)) {
+ if (!SEQ_transform_test_overlap_seq_seq(seq, seq_other)) {
continue;
}
if (UNLIKELY(SEQ_collection_has_strip(seq_other, strips_to_shuffle))) {