[Bf-blender-cvs] [dbe48640315] temp-vse-preview-transform2: Add support for individual origins pivot point
Richard Antalik
noreply at git.blender.org
Wed Sep 15 17:19:52 CEST 2021
Commit: dbe4864031504e3a2fbbfaa8f049f88510d3a9ca
Author: Richard Antalik
Date: Mon Sep 6 22:04:39 2021 +0200
Branches: temp-vse-preview-transform2
https://developer.blender.org/rBdbe4864031504e3a2fbbfaa8f049f88510d3a9ca
Add support for individual origins pivot point
===================================================================
M source/blender/editors/transform/transform_convert_sequencer_image.c
M source/blender/editors/transform/transform_generics.c
M source/blender/editors/transform/transform_gizmo_2d.c
M source/blender/editors/transform/transform_mode.c
===================================================================
diff --git a/source/blender/editors/transform/transform_convert_sequencer_image.c b/source/blender/editors/transform/transform_convert_sequencer_image.c
index 28ae7914b2f..e3ef9ab9515 100644
--- a/source/blender/editors/transform/transform_convert_sequencer_image.c
+++ b/source/blender/editors/transform/transform_convert_sequencer_image.c
@@ -94,7 +94,7 @@ static TransData *SeqToTransData(
void createTransSeqImageData(TransInfo *t)
{
- Editing *ed = SEQ_editing_get(t->scene, false);
+ Editing *ed = SEQ_editing_get(t->scene);
ListBase *seqbase = SEQ_active_seqbase_get(ed);
SeqCollection *strips = Seq_query_rendered_strips(seqbase, t->scene->r.cfra, 0);
SEQ_filter_selected_strips(strips);
@@ -130,15 +130,16 @@ void recalcData_sequencer_image(TransInfo *t)
int i;
for (i = 0, td = tc->data, td2d = tc->data_2d; i < tc->data_len; i++, td++, td2d++) {
+ /* Origin. */
float loc[2];
copy_v2_v2(loc, td2d->loc);
i++, td++, td2d++;
+ /* X and Y helper handle points used to read scale and rotation. */
float handle_x[2];
copy_v2_v2(handle_x, td2d->loc);
sub_v2_v2(handle_x, loc);
i++, td++, td2d++;
-
float handle_y[2];
copy_v2_v2(handle_y, td2d->loc);
sub_v2_v2(handle_y, loc);
diff --git a/source/blender/editors/transform/transform_generics.c b/source/blender/editors/transform/transform_generics.c
index 0dfb229191c..cff213a0abf 100644
--- a/source/blender/editors/transform/transform_generics.c
+++ b/source/blender/editors/transform/transform_generics.c
@@ -258,7 +258,6 @@ void initTransInfo(bContext *C, TransInfo *t, wmOperator *op, const wmEvent *eve
if (t->scene->toolsettings->transform_flag & SCE_XFORM_AXIS_ALIGN) {
t->flag |= T_V3D_ALIGN;
}
- t->around = t->scene->toolsettings->transform_pivot_point;
/* bend always uses the cursor */
if (t->mode == TFM_BEND) {
@@ -341,6 +340,10 @@ void initTransInfo(bContext *C, TransInfo *t, wmOperator *op, const wmEvent *eve
t->options |= CTX_MASK;
}
}
+ else if (t->spacetype == SPACE_SEQ && region->regiontype == RGN_TYPE_PREVIEW) {
+ t->view = ®ion->v2d;
+ t->around = t->scene->toolsettings->transform_pivot_point;
+ }
else {
if (region) {
/* XXX: For now, get View2D from the active region. */
diff --git a/source/blender/editors/transform/transform_gizmo_2d.c b/source/blender/editors/transform/transform_gizmo_2d.c
index ce71c50a5ed..2e22712a67f 100644
--- a/source/blender/editors/transform/transform_gizmo_2d.c
+++ b/source/blender/editors/transform/transform_gizmo_2d.c
@@ -246,7 +246,7 @@ static float gizmo2d_calc_rotation(const bContext *C)
}
Scene *scene = CTX_data_scene(C);
- Editing *ed = SEQ_editing_get(scene, false);
+ Editing *ed = SEQ_editing_get(scene);
ListBase *seqbase = SEQ_active_seqbase_get(ed);
SeqCollection *strips = Seq_query_rendered_strips(seqbase, scene->r.cfra, 0);
SEQ_filter_selected_strips(strips);
@@ -277,7 +277,7 @@ static bool gizmo2d_calc_center(const bContext *C, float r_center[2])
}
else if (area->spacetype == SPACE_SEQ) {
Scene *scene = CTX_data_scene(C);
- ListBase *seqbase = SEQ_active_seqbase_get(SEQ_editing_get(scene, false));
+ ListBase *seqbase = SEQ_active_seqbase_get(SEQ_editing_get(scene));
SeqCollection *strips = Seq_query_rendered_strips(seqbase, scene->r.cfra, 0);
SEQ_filter_selected_strips(strips);
diff --git a/source/blender/editors/transform/transform_mode.c b/source/blender/editors/transform/transform_mode.c
index b9fb8a86752..b14d499cb66 100644
--- a/source/blender/editors/transform/transform_mode.c
+++ b/source/blender/editors/transform/transform_mode.c
@@ -75,7 +75,7 @@ bool transdata_check_local_center(const TransInfo *t, short around)
/* implicit: (t->flag & T_EDIT) */
(ELEM(t->obedit_type, OB_MESH, OB_CURVE, OB_MBALL, OB_ARMATURE, OB_GPENCIL)) ||
(t->spacetype == SPACE_GRAPH) ||
- (t->options & (CTX_MOVIECLIP | CTX_MASK | CTX_PAINT_CURVE))));
+ (t->options & (CTX_MOVIECLIP | CTX_MASK | CTX_PAINT_CURVE | CTX_SEQUENCER_IMAGE))));
}
/* Informs if the mode can be switched during modal. */
More information about the Bf-blender-cvs
mailing list