Cleanup: Move strip handle manipulation to time section
This commit is contained in:
parent
8ca9ce0986
commit
28316e0810
|
@ -360,8 +360,8 @@ static void seq_update_meta_disp_range(Editing *ed)
|
|||
}
|
||||
|
||||
/* Update meta strip endpoints. */
|
||||
SEQ_transform_set_left_handle_frame(ms->parseq, ms->disp_range[0]);
|
||||
SEQ_transform_set_right_handle_frame(ms->parseq, ms->disp_range[1]);
|
||||
SEQ_time_left_handle_frame_set(ms->parseq, ms->disp_range[0]);
|
||||
SEQ_time_right_handle_frame_set(ms->parseq, ms->disp_range[1]);
|
||||
SEQ_transform_fix_single_image_seq_offsets(ms->parseq);
|
||||
|
||||
/* Recalculate effects using meta strip. */
|
||||
|
|
|
@ -38,7 +38,6 @@
|
|||
#include "SEQ_iterator.h"
|
||||
#include "SEQ_sequencer.h"
|
||||
#include "SEQ_time.h"
|
||||
#include "SEQ_transform.h"
|
||||
|
||||
#include "anim_intern.h"
|
||||
|
||||
|
@ -112,9 +111,9 @@ static int seq_frame_apply_snap(bContext *C, Scene *scene, const int timeline_fr
|
|||
Sequence *seq;
|
||||
SEQ_ITERATOR_FOREACH (seq, strips) {
|
||||
seq_frame_snap_update_best(
|
||||
SEQ_transform_get_left_handle_frame(seq), timeline_frame, &best_frame, &best_distance);
|
||||
SEQ_time_left_handle_frame_get(seq), timeline_frame, &best_frame, &best_distance);
|
||||
seq_frame_snap_update_best(
|
||||
SEQ_transform_get_right_handle_frame(seq), timeline_frame, &best_frame, &best_distance);
|
||||
SEQ_time_right_handle_frame_get(seq), timeline_frame, &best_frame, &best_distance);
|
||||
}
|
||||
SEQ_collection_free(strips);
|
||||
|
||||
|
|
|
@ -793,8 +793,8 @@ static void sequencer_add_movie_clamp_sound_strip_length(Scene *scene,
|
|||
return;
|
||||
}
|
||||
|
||||
SEQ_transform_set_right_handle_frame(seq_sound, SEQ_transform_get_right_handle_frame(seq_movie));
|
||||
SEQ_transform_set_left_handle_frame(seq_sound, SEQ_transform_get_left_handle_frame(seq_movie));
|
||||
SEQ_time_right_handle_frame_set(seq_sound, SEQ_time_right_handle_frame_get(seq_movie));
|
||||
SEQ_time_left_handle_frame_set(seq_sound, SEQ_time_left_handle_frame_get(seq_movie));
|
||||
SEQ_time_update_sequence(scene, seqbase, seq_sound);
|
||||
}
|
||||
|
||||
|
@ -1300,7 +1300,7 @@ static int sequencer_add_image_strip_exec(bContext *C, wmOperator *op)
|
|||
|
||||
/* Adjust length. */
|
||||
if (load_data.image.len == 1) {
|
||||
SEQ_transform_set_right_handle_frame(seq, load_data.image.end_frame);
|
||||
SEQ_time_right_handle_frame_set(seq, load_data.image.end_frame);
|
||||
SEQ_time_update_sequence(scene, SEQ_active_seqbase_get(ed), seq);
|
||||
}
|
||||
|
||||
|
|
|
@ -1099,9 +1099,9 @@ static void draw_seq_background(Scene *scene,
|
|||
/* Draw the main strip body. */
|
||||
if (is_single_image) {
|
||||
immRectf(pos,
|
||||
SEQ_transform_get_left_handle_frame(seq),
|
||||
SEQ_time_left_handle_frame_get(seq),
|
||||
y1,
|
||||
SEQ_transform_get_right_handle_frame(seq),
|
||||
SEQ_time_right_handle_frame_get(seq),
|
||||
y2);
|
||||
}
|
||||
else {
|
||||
|
|
|
@ -361,10 +361,10 @@ static int sequencer_snap_exec(bContext *C, wmOperator *op)
|
|||
}
|
||||
else {
|
||||
if (seq->flag & SEQ_LEFTSEL) {
|
||||
SEQ_transform_set_left_handle_frame(seq, snap_frame);
|
||||
SEQ_time_left_handle_frame_set(seq, snap_frame);
|
||||
}
|
||||
else { /* SEQ_RIGHTSEL */
|
||||
SEQ_transform_set_right_handle_frame(seq, snap_frame);
|
||||
SEQ_time_right_handle_frame_set(seq, snap_frame);
|
||||
}
|
||||
SEQ_transform_handle_xlimits(seq, seq->flag & SEQ_LEFTSEL, seq->flag & SEQ_RIGHTSEL);
|
||||
SEQ_transform_fix_single_image_seq_offsets(seq);
|
||||
|
@ -1858,8 +1858,8 @@ static int sequencer_separate_images_exec(bContext *C, wmOperator *op)
|
|||
/* TODO: remove f-curve and assign to split image strips.
|
||||
* The old animation system would remove the user of `seq->ipo`. */
|
||||
|
||||
start_ofs = timeline_frame = SEQ_transform_get_left_handle_frame(seq);
|
||||
frame_end = SEQ_transform_get_right_handle_frame(seq);
|
||||
start_ofs = timeline_frame = SEQ_time_left_handle_frame_get(seq);
|
||||
frame_end = SEQ_time_right_handle_frame_get(seq);
|
||||
|
||||
while (timeline_frame < frame_end) {
|
||||
/* New seq. */
|
||||
|
@ -3113,8 +3113,8 @@ static int seq_cmp_time_startdisp_channel(const void *a, const void *b)
|
|||
Sequence *seq_a = (Sequence *)a;
|
||||
Sequence *seq_b = (Sequence *)b;
|
||||
|
||||
int seq_a_start = SEQ_transform_get_left_handle_frame(seq_a);
|
||||
int seq_b_start = SEQ_transform_get_left_handle_frame(seq_b);
|
||||
int seq_a_start = SEQ_time_left_handle_frame_get(seq_a);
|
||||
int seq_b_start = SEQ_time_left_handle_frame_get(seq_b);
|
||||
|
||||
/* If strips have the same start frame favor the one with a higher channel. */
|
||||
if (seq_a_start == seq_b_start) {
|
||||
|
|
|
@ -91,8 +91,8 @@ static void SeqTransInfo(TransInfo *t, Sequence *seq, int *r_count, int *r_flag)
|
|||
|
||||
/* *** Extend Transform *** */
|
||||
int cfra = CFRA;
|
||||
int left = SEQ_transform_get_left_handle_frame(seq);
|
||||
int right = SEQ_transform_get_right_handle_frame(seq);
|
||||
int left = SEQ_time_left_handle_frame_get(seq);
|
||||
int right = SEQ_time_right_handle_frame_get(seq);
|
||||
|
||||
if (((seq->flag & SELECT) == 0 || SEQ_transform_is_locked(channels, seq))) {
|
||||
*r_count = 0;
|
||||
|
@ -173,16 +173,16 @@ static TransData *SeqToTransData(
|
|||
/* Use seq_tx_get_final_left() and an offset here
|
||||
* so transform has the left hand location of the strip.
|
||||
* tdsq->start_offset is used when flushing the tx data back */
|
||||
start_left = SEQ_transform_get_left_handle_frame(seq);
|
||||
start_left = SEQ_time_left_handle_frame_get(seq);
|
||||
td2d->loc[0] = start_left;
|
||||
tdsq->start_offset = start_left - seq->start; /* use to apply the original location */
|
||||
break;
|
||||
case SEQ_LEFTSEL:
|
||||
start_left = SEQ_transform_get_left_handle_frame(seq);
|
||||
start_left = SEQ_time_left_handle_frame_get(seq);
|
||||
td2d->loc[0] = start_left;
|
||||
break;
|
||||
case SEQ_RIGHTSEL:
|
||||
td2d->loc[0] = SEQ_transform_get_right_handle_frame(seq);
|
||||
td2d->loc[0] = SEQ_time_right_handle_frame_get(seq);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -489,11 +489,11 @@ static void seq_transform_handle_overwrite_trim(Scene *scene,
|
|||
continue;
|
||||
}
|
||||
if (overlap == STRIP_OVERLAP_LEFT_SIDE) {
|
||||
SEQ_transform_set_left_handle_frame(seq, transformed->enddisp);
|
||||
SEQ_time_left_handle_frame_set(seq, transformed->enddisp);
|
||||
}
|
||||
else {
|
||||
BLI_assert(overlap == STRIP_OVERLAP_RIGHT_SIDE);
|
||||
SEQ_transform_set_right_handle_frame(seq, transformed->startdisp);
|
||||
SEQ_time_right_handle_frame_set(seq, transformed->startdisp);
|
||||
}
|
||||
|
||||
SEQ_time_update_sequence(scene, seqbasep, seq);
|
||||
|
@ -915,7 +915,7 @@ static void flushTransSeq(TransInfo *t)
|
|||
}
|
||||
case SEQ_LEFTSEL: { /* No vertical transform. */
|
||||
int old_startdisp = seq->startdisp;
|
||||
SEQ_transform_set_left_handle_frame(seq, new_frame);
|
||||
SEQ_time_left_handle_frame_set(seq, new_frame);
|
||||
SEQ_transform_handle_xlimits(seq, tdsq->flag & SEQ_LEFTSEL, tdsq->flag & SEQ_RIGHTSEL);
|
||||
SEQ_transform_fix_single_image_seq_offsets(seq);
|
||||
SEQ_time_update_sequence(t->scene, seqbasep, seq);
|
||||
|
@ -926,7 +926,7 @@ static void flushTransSeq(TransInfo *t)
|
|||
}
|
||||
case SEQ_RIGHTSEL: { /* No vertical transform. */
|
||||
int old_enddisp = seq->enddisp;
|
||||
SEQ_transform_set_right_handle_frame(seq, new_frame);
|
||||
SEQ_time_right_handle_frame_set(seq, new_frame);
|
||||
SEQ_transform_handle_xlimits(seq, tdsq->flag & SEQ_LEFTSEL, tdsq->flag & SEQ_RIGHTSEL);
|
||||
SEQ_transform_fix_single_image_seq_offsets(seq);
|
||||
SEQ_time_update_sequence(t->scene, seqbasep, seq);
|
||||
|
|
|
@ -341,7 +341,7 @@ static void rna_Sequence_start_frame_final_set(PointerRNA *ptr, int value)
|
|||
Sequence *seq = (Sequence *)ptr->data;
|
||||
Scene *scene = (Scene *)ptr->owner_id;
|
||||
|
||||
SEQ_transform_set_left_handle_frame(seq, value);
|
||||
SEQ_time_left_handle_frame_set(seq, value);
|
||||
SEQ_transform_fix_single_image_seq_offsets(seq);
|
||||
do_sequence_frame_change_update(scene, seq);
|
||||
SEQ_relations_invalidate_cache_composite(scene, seq);
|
||||
|
@ -352,7 +352,7 @@ static void rna_Sequence_end_frame_final_set(PointerRNA *ptr, int value)
|
|||
Sequence *seq = (Sequence *)ptr->data;
|
||||
Scene *scene = (Scene *)ptr->owner_id;
|
||||
|
||||
SEQ_transform_set_right_handle_frame(seq, value);
|
||||
SEQ_time_right_handle_frame_set(seq, value);
|
||||
SEQ_transform_fix_single_image_seq_offsets(seq);
|
||||
do_sequence_frame_change_update(scene, seq);
|
||||
SEQ_relations_invalidate_cache_composite(scene, seq);
|
||||
|
@ -437,7 +437,7 @@ static void rna_Sequence_frame_length_set(PointerRNA *ptr, int value)
|
|||
Sequence *seq = (Sequence *)ptr->data;
|
||||
Scene *scene = (Scene *)ptr->owner_id;
|
||||
|
||||
SEQ_transform_set_right_handle_frame(seq, SEQ_transform_get_left_handle_frame(seq) + value);
|
||||
SEQ_time_right_handle_frame_set(seq, SEQ_time_left_handle_frame_get(seq) + value);
|
||||
do_sequence_frame_change_update(scene, seq);
|
||||
SEQ_relations_invalidate_cache_composite(scene, seq);
|
||||
}
|
||||
|
@ -445,7 +445,7 @@ static void rna_Sequence_frame_length_set(PointerRNA *ptr, int value)
|
|||
static int rna_Sequence_frame_length_get(PointerRNA *ptr)
|
||||
{
|
||||
Sequence *seq = (Sequence *)ptr->data;
|
||||
return SEQ_transform_get_right_handle_frame(seq) - SEQ_transform_get_left_handle_frame(seq);
|
||||
return SEQ_time_right_handle_frame_get(seq) - SEQ_time_left_handle_frame_get(seq);
|
||||
}
|
||||
|
||||
static int rna_Sequence_frame_editable(PointerRNA *ptr, const char **UNUSED(r_info))
|
||||
|
|
|
@ -63,6 +63,10 @@ void SEQ_time_update_meta_strip_range(struct Scene *scene, struct Sequence *seq_
|
|||
bool SEQ_time_has_still_frames(const struct Sequence *seq);
|
||||
bool SEQ_time_has_left_still_frames(const struct Sequence *seq);
|
||||
bool SEQ_time_has_right_still_frames(const struct Sequence *seq);
|
||||
int SEQ_time_left_handle_frame_get(struct Sequence *seq);
|
||||
int SEQ_time_right_handle_frame_get(struct Sequence *seq);
|
||||
void SEQ_time_left_handle_frame_set(struct Sequence *seq, int val);
|
||||
void SEQ_time_right_handle_frame_set(struct Sequence *seq, int val);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
@ -17,10 +17,6 @@ struct Scene;
|
|||
struct SeqCollection;
|
||||
struct Sequence;
|
||||
|
||||
int SEQ_transform_get_left_handle_frame(struct Sequence *seq);
|
||||
int SEQ_transform_get_right_handle_frame(struct Sequence *seq);
|
||||
void SEQ_transform_set_left_handle_frame(struct Sequence *seq, int val);
|
||||
void SEQ_transform_set_right_handle_frame(struct Sequence *seq, int val);
|
||||
/**
|
||||
* Use to impose limits when dragging/extending - so impossible situations don't happen.
|
||||
* Can't use the #SEQ_LEFTSEL and #SEQ_LEFTSEL directly because the strip may be in a meta-strip.
|
||||
|
|
|
@ -174,7 +174,7 @@ Sequence *SEQ_add_effect_strip(Scene *scene, ListBase *seqbase, struct SeqLoadDa
|
|||
|
||||
if (!load_data->effect.seq1) {
|
||||
seq->len = 1; /* Effect is generator, set non zero length. */
|
||||
SEQ_transform_set_right_handle_frame(seq, load_data->effect.end_frame);
|
||||
SEQ_time_right_handle_frame_set(seq, load_data->effect.end_frame);
|
||||
}
|
||||
|
||||
seq_add_set_name(scene, seq, load_data);
|
||||
|
@ -656,8 +656,8 @@ void SEQ_add_reload_new_file(Main *bmain, Scene *scene, Sequence *seq, const boo
|
|||
free_proxy_seq(seq);
|
||||
|
||||
if (lock_range) {
|
||||
SEQ_transform_set_left_handle_frame(seq, prev_startdisp);
|
||||
SEQ_transform_set_right_handle_frame(seq, prev_enddisp);
|
||||
SEQ_time_left_handle_frame_set(seq, prev_startdisp);
|
||||
SEQ_time_right_handle_frame_set(seq, prev_enddisp);
|
||||
SEQ_transform_fix_single_image_seq_offsets(seq);
|
||||
}
|
||||
|
||||
|
|
|
@ -276,7 +276,7 @@ static void seq_split_set_left_hold_offset(Sequence *seq, int timeline_frame)
|
|||
{
|
||||
/* Adjust within range of extended stillframes before strip. */
|
||||
if (timeline_frame < seq->start) {
|
||||
SEQ_transform_set_left_handle_frame(seq, timeline_frame);
|
||||
SEQ_time_left_handle_frame_set(seq, timeline_frame);
|
||||
}
|
||||
/* Adjust within range of strip contents. */
|
||||
else if ((timeline_frame >= seq->start) && (timeline_frame <= (seq->start + seq->len))) {
|
||||
|
@ -286,12 +286,12 @@ static void seq_split_set_left_hold_offset(Sequence *seq, int timeline_frame)
|
|||
}
|
||||
/* Adjust within range of extended stillframes after strip. */
|
||||
else if ((seq->start + seq->len) < timeline_frame) {
|
||||
const int right_handle_backup = SEQ_transform_get_right_handle_frame(seq);
|
||||
const int right_handle_backup = SEQ_time_right_handle_frame_get(seq);
|
||||
seq->start += timeline_frame - seq->start;
|
||||
seq->anim_startofs += seq->len - 1;
|
||||
seq->len = 1;
|
||||
SEQ_transform_set_left_handle_frame(seq, timeline_frame);
|
||||
SEQ_transform_set_right_handle_frame(seq, right_handle_backup);
|
||||
SEQ_time_left_handle_frame_set(seq, timeline_frame);
|
||||
SEQ_time_right_handle_frame_set(seq, right_handle_backup);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -299,10 +299,10 @@ static void seq_split_set_right_hold_offset(Sequence *seq, int timeline_frame)
|
|||
{
|
||||
/* Adjust within range of extended stillframes before strip. */
|
||||
if (timeline_frame < seq->start) {
|
||||
const int left_handle_backup = SEQ_transform_get_left_handle_frame(seq);
|
||||
const int left_handle_backup = SEQ_time_left_handle_frame_get(seq);
|
||||
seq->start = timeline_frame - 1;
|
||||
SEQ_transform_set_left_handle_frame(seq, left_handle_backup);
|
||||
SEQ_transform_set_right_handle_frame(seq, timeline_frame);
|
||||
SEQ_time_left_handle_frame_set(seq, left_handle_backup);
|
||||
SEQ_time_right_handle_frame_set(seq, timeline_frame);
|
||||
}
|
||||
/* Adjust within range of strip contents. */
|
||||
else if ((timeline_frame >= seq->start) && (timeline_frame <= (seq->start + seq->len))) {
|
||||
|
@ -311,7 +311,7 @@ static void seq_split_set_right_hold_offset(Sequence *seq, int timeline_frame)
|
|||
}
|
||||
/* Adjust within range of extended stillframes after strip. */
|
||||
else if ((seq->start + seq->len) < timeline_frame) {
|
||||
SEQ_transform_set_right_handle_frame(seq, timeline_frame);
|
||||
SEQ_time_right_handle_frame_set(seq, timeline_frame);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -324,7 +324,7 @@ static void seq_split_set_right_offset(Sequence *seq, int timeline_frame)
|
|||
seq->startofs += content_offset;
|
||||
}
|
||||
|
||||
SEQ_transform_set_right_handle_frame(seq, timeline_frame);
|
||||
SEQ_time_right_handle_frame_set(seq, timeline_frame);
|
||||
}
|
||||
|
||||
static void seq_split_set_left_offset(Sequence *seq, int timeline_frame)
|
||||
|
@ -336,7 +336,7 @@ static void seq_split_set_left_offset(Sequence *seq, int timeline_frame)
|
|||
seq->endofs += content_offset;
|
||||
}
|
||||
|
||||
SEQ_transform_set_left_handle_frame(seq, timeline_frame);
|
||||
SEQ_time_left_handle_frame_set(seq, timeline_frame);
|
||||
}
|
||||
|
||||
static bool seq_edit_split_effect_intersect_check(const Sequence *seq, const int timeline_frame)
|
||||
|
|
|
@ -177,8 +177,8 @@ void SEQ_time_update_meta_strip_range(Scene *scene, Sequence *seq_meta)
|
|||
seq_time_update_meta_strip(scene, seq_meta);
|
||||
|
||||
/* Prevent meta-strip to move in timeline. */
|
||||
SEQ_transform_set_left_handle_frame(seq_meta, seq_meta->startdisp);
|
||||
SEQ_transform_set_right_handle_frame(seq_meta, seq_meta->enddisp);
|
||||
SEQ_time_left_handle_frame_set(seq_meta, seq_meta->startdisp);
|
||||
SEQ_time_right_handle_frame_set(seq_meta, seq_meta->enddisp);
|
||||
}
|
||||
|
||||
void SEQ_time_update_sequence(Scene *scene, ListBase *seqbase, Sequence *seq)
|
||||
|
@ -524,3 +524,22 @@ bool SEQ_time_has_still_frames(const Sequence *seq)
|
|||
{
|
||||
return SEQ_time_has_right_still_frames(seq) || SEQ_time_has_left_still_frames(seq);
|
||||
}
|
||||
|
||||
int SEQ_time_left_handle_frame_get(Sequence *seq)
|
||||
{
|
||||
return seq->start + seq->startofs;
|
||||
}
|
||||
int SEQ_time_right_handle_frame_get(Sequence *seq)
|
||||
{
|
||||
return seq->start + seq->len - seq->endofs;
|
||||
}
|
||||
|
||||
void SEQ_time_left_handle_frame_set(Sequence *seq, int val)
|
||||
{
|
||||
seq->startofs = val - seq->start;
|
||||
}
|
||||
|
||||
void SEQ_time_right_handle_frame_set(Sequence *seq, int val)
|
||||
{
|
||||
seq->endofs = seq->start + seq->len - val;
|
||||
}
|
||||
|
|
|
@ -38,25 +38,6 @@ static int seq_tx_get_end(Sequence *seq)
|
|||
return seq->start + seq->len;
|
||||
}
|
||||
|
||||
int SEQ_transform_get_left_handle_frame(Sequence *seq)
|
||||
{
|
||||
return seq->start + seq->startofs;
|
||||
}
|
||||
int SEQ_transform_get_right_handle_frame(Sequence *seq)
|
||||
{
|
||||
return seq->start + seq->len - seq->endofs;
|
||||
}
|
||||
|
||||
void SEQ_transform_set_left_handle_frame(Sequence *seq, int val)
|
||||
{
|
||||
seq->startofs = val - seq->start;
|
||||
}
|
||||
|
||||
void SEQ_transform_set_right_handle_frame(Sequence *seq, int val)
|
||||
{
|
||||
seq->endofs = seq->start + seq->len - val;
|
||||
}
|
||||
|
||||
bool SEQ_transform_single_image_check(Sequence *seq)
|
||||
{
|
||||
return ((seq->len == 1) &&
|
||||
|
@ -108,13 +89,13 @@ bool SEQ_transform_seqbase_isolated_sel_check(ListBase *seqbase)
|
|||
void SEQ_transform_handle_xlimits(Sequence *seq, int leftflag, int rightflag)
|
||||
{
|
||||
if (leftflag) {
|
||||
if (SEQ_transform_get_left_handle_frame(seq) >= SEQ_transform_get_right_handle_frame(seq)) {
|
||||
SEQ_transform_set_left_handle_frame(seq, SEQ_transform_get_right_handle_frame(seq) - 1);
|
||||
if (SEQ_time_left_handle_frame_get(seq) >= SEQ_time_right_handle_frame_get(seq)) {
|
||||
SEQ_time_left_handle_frame_set(seq, SEQ_time_right_handle_frame_get(seq) - 1);
|
||||
}
|
||||
|
||||
if (SEQ_transform_single_image_check(seq) == 0) {
|
||||
if (SEQ_transform_get_left_handle_frame(seq) >= seq_tx_get_end(seq)) {
|
||||
SEQ_transform_set_left_handle_frame(seq, seq_tx_get_end(seq) - 1);
|
||||
if (SEQ_time_left_handle_frame_get(seq) >= seq_tx_get_end(seq)) {
|
||||
SEQ_time_left_handle_frame_set(seq, seq_tx_get_end(seq) - 1);
|
||||
}
|
||||
|
||||
/* TODO: This doesn't work at the moment. */
|
||||
|
@ -130,13 +111,13 @@ void SEQ_transform_handle_xlimits(Sequence *seq, int leftflag, int rightflag)
|
|||
}
|
||||
|
||||
if (rightflag) {
|
||||
if (SEQ_transform_get_right_handle_frame(seq) <= SEQ_transform_get_left_handle_frame(seq)) {
|
||||
SEQ_transform_set_right_handle_frame(seq, SEQ_transform_get_left_handle_frame(seq) + 1);
|
||||
if (SEQ_time_right_handle_frame_get(seq) <= SEQ_time_left_handle_frame_get(seq)) {
|
||||
SEQ_time_right_handle_frame_set(seq, SEQ_time_left_handle_frame_get(seq) + 1);
|
||||
}
|
||||
|
||||
if (SEQ_transform_single_image_check(seq) == 0) {
|
||||
if (SEQ_transform_get_right_handle_frame(seq) <= seq_tx_get_start(seq)) {
|
||||
SEQ_transform_set_right_handle_frame(seq, seq_tx_get_start(seq) + 1);
|
||||
if (SEQ_time_right_handle_frame_get(seq) <= seq_tx_get_start(seq)) {
|
||||
SEQ_time_right_handle_frame_set(seq, seq_tx_get_start(seq) + 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -157,12 +138,12 @@ void SEQ_transform_fix_single_image_seq_offsets(Sequence *seq)
|
|||
|
||||
/* make sure the image is always at the start since there is only one,
|
||||
* adjusting its start should be ok */
|
||||
left = SEQ_transform_get_left_handle_frame(seq);
|
||||
left = SEQ_time_left_handle_frame_get(seq);
|
||||
start = seq->start;
|
||||
if (start != left) {
|
||||
offset = left - start;
|
||||
SEQ_transform_set_left_handle_frame(seq, SEQ_transform_get_left_handle_frame(seq) - offset);
|
||||
SEQ_transform_set_right_handle_frame(seq, SEQ_transform_get_right_handle_frame(seq) - offset);
|
||||
SEQ_time_left_handle_frame_set(seq, SEQ_time_left_handle_frame_get(seq) - offset);
|
||||
SEQ_time_right_handle_frame_set(seq, SEQ_time_right_handle_frame_get(seq) - offset);
|
||||
seq->start += offset;
|
||||
}
|
||||
}
|
||||
|
@ -213,8 +194,8 @@ void SEQ_transform_translate_sequence(Scene *evil_scene, Sequence *seq, int delt
|
|||
* start/end point in timeline. */
|
||||
SEQ_time_update_meta_strip_range(evil_scene, seq);
|
||||
/* Move meta start/end points. */
|
||||
SEQ_transform_set_left_handle_frame(seq, seq->startdisp + delta);
|
||||
SEQ_transform_set_right_handle_frame(seq, seq->enddisp + delta);
|
||||
SEQ_time_left_handle_frame_set(seq, seq->startdisp + delta);
|
||||
SEQ_time_right_handle_frame_set(seq, seq->enddisp + delta);
|
||||
}
|
||||
|
||||
ListBase *seqbase = SEQ_active_seqbase_get(SEQ_editing_get(evil_scene));
|
||||
|
|
Loading…
Reference in New Issue