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:
authorGermano Cavalcante <germano.costa@ig.com.br>2021-06-30 00:08:41 +0300
committerGermano Cavalcante <germano.costa@ig.com.br>2021-06-30 00:08:41 +0300
commit2d35eed34d01e4e63d672e35da7b3d45e97ff9ee (patch)
tree021f7a9d427e106e13bd5fc999a8f79dd492dc0c /source/blender/editors/transform/transform_snap_sequencer.c
parent929d9ec0c79486bfc5d85b9e574c80491c9fef9d (diff)
Cleanup: split uses of _snap_sequencer_apply according to transform mode
The `applySnap` callback of each mode was overwriting the value calculated in `transform_snap_sequencer_apply`.
Diffstat (limited to 'source/blender/editors/transform/transform_snap_sequencer.c')
-rw-r--r--source/blender/editors/transform/transform_snap_sequencer.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/source/blender/editors/transform/transform_snap_sequencer.c b/source/blender/editors/transform/transform_snap_sequencer.c
index 22d738e75ca..3100a8f5c39 100644
--- a/source/blender/editors/transform/transform_snap_sequencer.c
+++ b/source/blender/editors/transform/transform_snap_sequencer.c
@@ -234,11 +234,10 @@ void transform_snap_sequencer_data_free(TransSeqSnapData *data)
MEM_freeN(data);
}
-bool transform_snap_sequencer_apply(TransInfo *t, float *vec, float *snap_point)
+bool transform_snap_sequencer_calc(TransInfo *t)
{
const TransSeqSnapData *snap_data = t->tsnap.seq_context;
int best_dist = MAXFRAME, best_target_frame = 0, best_source_frame = 0;
- *snap_point = 0;
for (int i = 0; i < snap_data->source_snap_point_count; i++) {
int snap_source_frame = snap_data->source_snap_points[i] + round_fl_to_int(t->values[0]);
@@ -260,7 +259,12 @@ bool transform_snap_sequencer_apply(TransInfo *t, float *vec, float *snap_point)
return false;
}
- *snap_point = best_target_frame;
- *vec += best_target_frame - best_source_frame;
+ t->tsnap.snapPoint[0] = best_target_frame;
+ t->tsnap.snapTarget[0] = best_source_frame;
return true;
}
+
+void transform_snap_sequencer_apply_translate(TransInfo *t, float *vec)
+{
+ *vec += t->tsnap.snapPoint[0] - t->tsnap.snapTarget[0];
+}