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:
authorCampbell Barton <ideasman42@gmail.com>2015-10-28 14:56:09 +0300
committerCampbell Barton <ideasman42@gmail.com>2015-10-28 15:31:15 +0300
commite0c60985b64cf112cb782f6378552d5fc83f0f65 (patch)
treee16be76c48664b25eab2d8667d3d7558c7fc1d08 /source/blender/editors/transform
parentd1e18c35d36b4a2a608c34a5d9992c5f25798cd5 (diff)
Transform: Replace t->imval w/ t->mouse.imval
Initial mouse position was saved in two different places D1588 by @mauge
Diffstat (limited to 'source/blender/editors/transform')
-rw-r--r--source/blender/editors/transform/transform.c26
-rw-r--r--source/blender/editors/transform/transform.h1
-rw-r--r--source/blender/editors/transform/transform_conversions.c8
-rw-r--r--source/blender/editors/transform/transform_generics.c13
-rw-r--r--source/blender/editors/transform/transform_input.c4
-rw-r--r--source/blender/editors/transform/transform_manipulator.c8
6 files changed, 29 insertions, 31 deletions
diff --git a/source/blender/editors/transform/transform.c b/source/blender/editors/transform/transform.c
index d6ce32f9974..6d0e8593e79 100644
--- a/source/blender/editors/transform/transform.c
+++ b/source/blender/editors/transform/transform.c
@@ -2160,7 +2160,7 @@ bool initTransform(bContext *C, TransInfo *t, wmOperator *op, const wmEvent *eve
calculatePropRatio(t);
calculateCenter(t);
- initMouseInput(t, &t->mouse, t->center2d, t->imval);
+ initMouseInput(t, &t->mouse, t->center2d, event->mval);
switch (mode) {
case TFM_TRANSLATION:
@@ -3386,7 +3386,7 @@ static void applyResize(TransInfo *t, const int mval[2])
/* for manipulator, center handle, the scaling can't be done relative to center */
if ((t->flag & T_USES_MANIPULATOR) && t->con.mode == 0) {
- ratio = 1.0f - ((t->imval[0] - mval[0]) + (t->imval[1] - mval[1])) / 100.0f;
+ ratio = 1.0f - ((t->mouse.imval[0] - mval[0]) + (t->mouse.imval[1] - mval[1])) / 100.0f;
}
else {
ratio = t->values[0];
@@ -5185,7 +5185,7 @@ static void applyBoneSize(TransInfo *t, const int mval[2])
// TRANSFORM_FIX_ME MOVE TO MOUSE INPUT
/* for manipulator, center handle, the scaling can't be done relative to center */
if ((t->flag & T_USES_MANIPULATOR) && t->con.mode == 0) {
- ratio = 1.0f - ((t->imval[0] - mval[0]) + (t->imval[1] - mval[1])) / 100.0f;
+ ratio = 1.0f - ((t->mouse.imval[0] - mval[0]) + (t->mouse.imval[1] - mval[1])) / 100.0f;
}
else {
ratio = t->values[0];
@@ -6955,7 +6955,7 @@ static void calcVertSlideCustomPoints(struct TransInfo *t)
ED_view3d_project_float_v2_m4(t->ar, co_orig_3d, co_orig_2d, sld->proj_mat);
ED_view3d_project_float_v2_m4(t->ar, co_curr_3d, co_curr_2d, sld->proj_mat);
- ARRAY_SET_ITEMS(mval_ofs, t->imval[0] - co_orig_2d[0], t->imval[1] - co_orig_2d[1]);
+ ARRAY_SET_ITEMS(mval_ofs, t->mouse.imval[0] - co_orig_2d[0], t->mouse.imval[1] - co_orig_2d[1]);
ARRAY_SET_ITEMS(mval_start, co_orig_2d[0] + mval_ofs[0], co_orig_2d[1] + mval_ofs[1]);
ARRAY_SET_ITEMS(mval_end, co_curr_2d[0] + mval_ofs[0], co_curr_2d[1] + mval_ofs[1]);
@@ -7005,7 +7005,7 @@ static void calcVertSlideMouseActiveVert(struct TransInfo *t, const int mval[2])
static void calcVertSlideMouseActiveEdges(struct TransInfo *t, const int mval[2])
{
VertSlideData *sld = t->customData;
- float imval_fl[2] = {UNPACK2(t->imval)};
+ float imval_fl[2] = {UNPACK2(t->mouse.imval)};
float mval_fl[2] = {UNPACK2(mval)};
float dir[3];
@@ -7369,16 +7369,16 @@ static void drawVertSlide(TransInfo *t)
glDisable(GL_BLEND);
/* direction from active vertex! */
- if ((t->mval[0] != t->imval[0]) ||
- (t->mval[1] != t->imval[1]))
+ if ((t->mval[0] != t->mouse.imval[0]) ||
+ (t->mval[1] != t->mouse.imval[1]))
{
float zfac;
float mval_ofs[2];
float co_orig_3d[3];
float co_dest_3d[3];
- mval_ofs[0] = t->mval[0] - t->imval[0];
- mval_ofs[1] = t->mval[1] - t->imval[1];
+ mval_ofs[0] = t->mval[0] - t->mouse.imval[0];
+ mval_ofs[1] = t->mval[1] - t->mouse.imval[1];
mul_v3_m4v3(co_orig_3d, t->obedit->obmat, curr_sv->co_orig_3d);
zfac = ED_view3d_calc_zfac(t->ar->regiondata, co_orig_3d, NULL);
@@ -8158,7 +8158,7 @@ static void applyTimeTranslate(TransInfo *t, const int mval[2])
if (t->flag & T_MODAL) {
float cval[2], sval[2];
UI_view2d_region_to_view(v2d, mval[0], mval[0], &cval[0], &cval[1]);
- UI_view2d_region_to_view(v2d, t->imval[0], t->imval[0], &sval[0], &sval[1]);
+ UI_view2d_region_to_view(v2d, t->mouse.imval[0], t->mouse.imval[0], &sval[0], &sval[1]);
/* we only need to calculate effect for time (applyTimeTranslate only needs that) */
t->values[0] = cval[0] - sval[0];
@@ -8299,7 +8299,7 @@ static void applyTimeSlide(TransInfo *t, const int mval[2])
/* calculate mouse co-ordinates */
UI_view2d_region_to_view(v2d, mval[0], mval[1], &cval[0], &cval[1]);
- UI_view2d_region_to_view(v2d, t->imval[0], t->imval[1], &sval[0], &sval[1]);
+ UI_view2d_region_to_view(v2d, t->mouse.imval[0], t->mouse.imval[1], &sval[0], &sval[1]);
/* t->values[0] stores cval[0], which is the current mouse-pointer location (in frames) */
// XXX Need to be able to repeat this
@@ -8344,10 +8344,10 @@ static void initTimeScale(TransInfo *t)
* what is used in time scale */
t->center[0] = t->scene->r.cfra;
projectFloatView(t, t->center, center);
- center[1] = t->imval[1];
+ center[1] = t->mouse.imval[1];
/* force a reinit with the center2d used here */
- initMouseInput(t, &t->mouse, center, t->imval);
+ initMouseInput(t, &t->mouse, center, t->mouse.imval);
initMouseInputMode(t, &t->mouse, INPUT_SPRING_FLIP);
diff --git a/source/blender/editors/transform/transform.h b/source/blender/editors/transform/transform.h
index e77ebfc4532..d4e1b3fc71c 100644
--- a/source/blender/editors/transform/transform.h
+++ b/source/blender/editors/transform/transform.h
@@ -365,7 +365,6 @@ typedef struct TransInfo {
float center[3]; /* center of transformation (in local-space) */
float center_global[3]; /* center of transformation (in global-space) */
float center2d[2]; /* center in screen coordinates */
- int imval[2]; /* initial mouse position */
short event_type; /* event->type used to invoke transform */
short idx_max; /* maximum index on the input vector */
float snap[3]; /* Snapping Gears */
diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c
index 5e13afdc152..110cd4cdd59 100644
--- a/source/blender/editors/transform/transform_conversions.c
+++ b/source/blender/editors/transform/transform_conversions.c
@@ -3027,7 +3027,7 @@ static void createTransNlaData(bContext *C, TransInfo *t)
/* only side on which mouse is gets transformed */
float xmouse, ymouse;
- UI_view2d_region_to_view(&ac.ar->v2d, t->imval[0], t->imval[1], &xmouse, &ymouse);
+ UI_view2d_region_to_view(&ac.ar->v2d, t->mouse.imval[0], t->mouse.imval[1], &xmouse, &ymouse);
t->frame_side = (xmouse > CFRA) ? 'R' : 'L';
}
else {
@@ -3664,7 +3664,7 @@ static void createTransActionData(bContext *C, TransInfo *t)
/* only side on which mouse is gets transformed */
float xmouse, ymouse;
- UI_view2d_region_to_view(&ac.ar->v2d, t->imval[0], t->imval[1], &xmouse, &ymouse);
+ UI_view2d_region_to_view(&ac.ar->v2d, t->mouse.imval[0], t->mouse.imval[1], &xmouse, &ymouse);
t->frame_side = (xmouse > CFRA) ? 'R' : 'L'; // XXX use t->frame_side
}
else {
@@ -4063,7 +4063,7 @@ static void createTransGraphEditData(bContext *C, TransInfo *t)
/* only side on which mouse is gets transformed */
float xmouse, ymouse;
- UI_view2d_region_to_view(v2d, t->imval[0], t->imval[1], &xmouse, &ymouse);
+ UI_view2d_region_to_view(v2d, t->mouse.imval[0], t->mouse.imval[1], &xmouse, &ymouse);
t->frame_side = (xmouse > CFRA) ? 'R' : 'L'; // XXX use t->frame_side
}
else {
@@ -5108,7 +5108,7 @@ static void createTransSeqData(bContext *C, TransInfo *t)
t->customFree = freeSeqData;
- xmouse = (int)UI_view2d_region_to_view_x(v2d, t->imval[0]);
+ xmouse = (int)UI_view2d_region_to_view_x(v2d, t->mouse.imval[0]);
/* which side of the current frame should be allowed */
if (t->mode == TFM_TIME_EXTEND) {
diff --git a/source/blender/editors/transform/transform_generics.c b/source/blender/editors/transform/transform_generics.c
index ce2d90ac7e2..6e64697cd90 100644
--- a/source/blender/editors/transform/transform_generics.c
+++ b/source/blender/editors/transform/transform_generics.c
@@ -1112,19 +1112,18 @@ void initTransInfo(bContext *C, TransInfo *t, wmOperator *op, const wmEvent *eve
t->redraw = TREDRAW_HARD; /* redraw first time */
if (event) {
- copy_v2_v2_int(t->imval, event->mval);
t->event_type = event->type;
}
else {
- t->imval[0] = 0;
- t->imval[1] = 0;
+ t->mouse.imval[0] = 0;
+ t->mouse.imval[1] = 0;
}
- t->con.imval[0] = t->imval[0];
- t->con.imval[1] = t->imval[1];
+ t->con.imval[0] = t->mouse.imval[0];
+ t->con.imval[1] = t->mouse.imval[1];
- t->mval[0] = t->imval[0];
- t->mval[1] = t->imval[1];
+ t->mval[0] = t->mouse.imval[0];
+ t->mval[1] = t->mouse.imval[1];
t->transform = NULL;
t->handleEvent = NULL;
diff --git a/source/blender/editors/transform/transform_input.c b/source/blender/editors/transform/transform_input.c
index 3b8d87cf9ce..a18be8fb5fa 100644
--- a/source/blender/editors/transform/transform_input.c
+++ b/source/blender/editors/transform/transform_input.c
@@ -53,11 +53,11 @@ static void InputVector(TransInfo *t, MouseInput *mi, const int mval[2], float o
/* calculate the main translation and the precise one separate */
convertViewVec(t, dvec, (mval[0] - mi->precision_mval[0]), (mval[1] - mi->precision_mval[1]));
mul_v3_fl(dvec, 0.1f);
- convertViewVec(t, vec, (mi->precision_mval[0] - t->imval[0]), (mi->precision_mval[1] - t->imval[1]));
+ convertViewVec(t, vec, (mi->precision_mval[0] - t->mouse.imval[0]), (mi->precision_mval[1] - t->mouse.imval[1]));
add_v3_v3v3(output, vec, dvec);
}
else {
- convertViewVec(t, output, (mval[0] - t->imval[0]), (mval[1] - t->imval[1]));
+ convertViewVec(t, output, (mval[0] - t->mouse.imval[0]), (mval[1] - t->mouse.imval[1]));
}
}
diff --git a/source/blender/editors/transform/transform_manipulator.c b/source/blender/editors/transform/transform_manipulator.c
index f13bc6b6b55..5e5dbfdf80a 100644
--- a/source/blender/editors/transform/transform_manipulator.c
+++ b/source/blender/editors/transform/transform_manipulator.c
@@ -958,8 +958,8 @@ static void draw_manipulator_rotate(
if (is_moving) {
float vec[3];
- vec[0] = 0; // XXX (float)(t->imval[0] - t->center2d[0]);
- vec[1] = 0; // XXX (float)(t->imval[1] - t->center2d[1]);
+ vec[0] = 0; // XXX (float)(t->mouse.imval[0] - t->center2d[0]);
+ vec[1] = 0; // XXX (float)(t->mouse.imval[1] - t->center2d[1]);
vec[2] = 0.0f;
normalize_v3(vec);
mul_v3_fl(vec, 1.2f * size);
@@ -1476,8 +1476,8 @@ static void draw_manipulator_rotate_cyl(
if (is_moving) {
float vec[3];
- vec[0] = 0; // XXX (float)(t->imval[0] - t->center2d[0]);
- vec[1] = 0; // XXX (float)(t->imval[1] - t->center2d[1]);
+ vec[0] = 0; // XXX (float)(t->mouse.imval[0] - t->center2d[0]);
+ vec[1] = 0; // XXX (float)(t->mouse.imval[1] - t->center2d[1]);
vec[2] = 0.0f;
normalize_v3(vec);
mul_v3_fl(vec, 1.2f * size);