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-30 09:31:07 +0300
committerCampbell Barton <ideasman42@gmail.com>2015-10-30 10:24:02 +0300
commite6abc3ad5751a272930841757e588bc25ce0bde7 (patch)
tree307cfecbbe3604050b65dbd5ff0e4ace345672eb /source/blender/editors/transform/transform.c
parentd2af1401510200bcc5d1841d5ef186e7cb545133 (diff)
Transform: Support storing virtual cursor location
Grabbing now doesn't 'jump' when shift is released (matching rotation modes). This simplifies most logic for transform input, where mouse input callbacks can choose to use the 'virtual' cursor, which accounts for precision when shift is held.
Diffstat (limited to 'source/blender/editors/transform/transform.c')
-rw-r--r--source/blender/editors/transform/transform.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/source/blender/editors/transform/transform.c b/source/blender/editors/transform/transform.c
index 6d0e8593e79..86d97e9cac1 100644
--- a/source/blender/editors/transform/transform.c
+++ b/source/blender/editors/transform/transform.c
@@ -313,7 +313,7 @@ static void convertViewVec2D_mask(View2D *v2d, float r_vec[3], int dx, int dy)
r_vec[2] = 0.0f;
}
-void convertViewVec(TransInfo *t, float r_vec[3], int dx, int dy)
+void convertViewVec(TransInfo *t, float r_vec[3], double dx, double dy)
{
if ((t->spacetype == SPACE_VIEW3D) && (t->ar->regiontype == RGN_TYPE_WINDOW)) {
if (t->options & CTX_PAINT_CURVE) {
@@ -7605,12 +7605,17 @@ static void applyBakeTime(TransInfo *t, const int mval[2])
float fac = 0.1f;
+ /* XXX, disable precission for now,
+ * this isn't even accessible by the user */
+#if 0
if (t->mouse.precision) {
/* calculate ratio for shiftkey pos, and for total, and blend these for precision */
time = (float)(t->center2d[0] - t->mouse.precision_mval[0]) * fac;
time += 0.1f * ((float)(t->center2d[0] * fac - mval[0]) - time);
}
- else {
+ else
+#endif
+ {
time = (float)(t->center2d[0] - mval[0]) * fac;
}