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
path: root/source
diff options
context:
space:
mode:
authorMartin Poirier <theeth@yahoo.com>2009-12-17 20:50:55 +0300
committerMartin Poirier <theeth@yahoo.com>2009-12-17 20:50:55 +0300
commit509c2e961438c7ac341f555e820314d40d9f2166 (patch)
tree9f13641ce7507fb3a0fa0fcfe80589379bf862fc /source
parentfcaad00bda20244a49e85175b2a6bc1b8c131c54 (diff)
Bugfix: [#20403] transform manipulation widgets with normal coordinates
Disable manipulator drawing during transform
Diffstat (limited to 'source')
-rw-r--r--source/blender/editors/transform/transform.h3
-rw-r--r--source/blender/editors/transform/transform_conversions.c11
-rw-r--r--source/blender/editors/transform/transform_generics.c6
3 files changed, 19 insertions, 1 deletions
diff --git a/source/blender/editors/transform/transform.h b/source/blender/editors/transform/transform.h
index 3b1ead32fad..b7e1b2e4996 100644
--- a/source/blender/editors/transform/transform.h
+++ b/source/blender/editors/transform/transform.h
@@ -302,9 +302,10 @@ typedef struct TransInfo {
void (*customFree)(struct TransInfo *); /* if a special free function is needed */
/*************** NEW STUFF *********************/
- short launch_event; /* event type used to launch transform */
+ short launch_event; /* event type used to launch transform */
short current_orientation;
+ short twtype; /* backup from view3d, to restore on end */
short prop_mode;
diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c
index 0115d34c6b1..98c1b333844 100644
--- a/source/blender/editors/transform/transform_conversions.c
+++ b/source/blender/editors/transform/transform_conversions.c
@@ -5006,6 +5006,17 @@ void special_aftertrans_update(bContext *C, TransInfo *t)
clear_trans_object_base_flags(t);
+ if(t->spacetype == SPACE_VIEW3D)
+ {
+ View3D *v3d = t->view;
+
+ /* restore manipulator */
+ if (t->flag & T_MODAL) {
+ v3d->twtype = t->twtype;
+ }
+ }
+
+
#if 0 // TRANSFORM_FIX_ME
if(resetslowpar)
reset_slowparents();
diff --git a/source/blender/editors/transform/transform_generics.c b/source/blender/editors/transform/transform_generics.c
index f2c4da0da27..061b2adbd79 100644
--- a/source/blender/editors/transform/transform_generics.c
+++ b/source/blender/editors/transform/transform_generics.c
@@ -927,6 +927,12 @@ int initTransInfo (bContext *C, TransInfo *t, wmOperator *op, wmEvent *event)
t->view = v3d;
t->animtimer= CTX_wm_screen(C)->animtimer;
+ /* turn manipulator off during transform */
+ if (t->flag & T_MODAL) {
+ t->twtype = v3d->twtype;
+ v3d->twtype = 0;
+ }
+
if(v3d->flag & V3D_ALIGN) t->flag |= T_V3D_ALIGN;
t->around = v3d->around;