Commit: 380aacb12a7fdc6025e67ff9c5ccec3445d07dca
Author: Julian Eisel
Date:   Wed Nov 9 00:51:46 2016 +0100
Branches: transform-manipulators
https://developer.blender.org/rB380aacb12a7fdc6025e67ff9c5ccec3445d07dca

Remove bad storage hacks of old transform manipulators

Got rid of Scene.twcent, Scene.twmin, Scene.twmax, RegionView3D.twmat, 
RegionView3D.twdrawflag, RegionView3D.tw_idot, TransInfo.mat, TransInfo.vec.
Also cleaned-up variable and define names.

Decided to completely remove the struct members without doing proper file 
conversion for non-runtime ones. That will cause minor compatibility breakage 
but that's okay for 2.8.

===================================================================

M       source/blender/blenkernel/BKE_screen.h
M       source/blender/blenkernel/intern/screen.c
M       source/blender/blenloader/intern/readfile.c
M       source/blender/blenloader/intern/versioning_270.c
M       source/blender/blenloader/intern/versioning_legacy.c
M       source/blender/editors/interface/resources.c
M       source/blender/editors/mesh/editmesh_bevel.c
M       source/blender/editors/mesh/editmesh_bisect.c
M       source/blender/editors/mesh/editmesh_inset.c
M       source/blender/editors/space_view3d/space_view3d.c
M       source/blender/editors/space_view3d/view3d_edit.c
M       source/blender/editors/space_view3d/view3d_header.c
M       source/blender/editors/space_view3d/view3d_transform_manipulators.c
M       source/blender/editors/transform/transform.c
M       source/blender/editors/transform/transform.h
M       source/blender/editors/transform/transform_constraints.c
M       source/blender/editors/transform/transform_generics.c
M       source/blender/editors/transform/transform_ops.c
M       source/blender/editors/transform/transform_orientations.c
M       source/blender/makesdna/DNA_scene_types.h
M       source/blender/makesdna/DNA_view3d_types.h
M       source/blender/makesrna/intern/rna_space.c
M       source/blender/makesrna/intern/rna_userdef.c

===================================================================

diff --git a/source/blender/blenkernel/BKE_screen.h 
b/source/blender/blenkernel/BKE_screen.h
index 010810a..71fb699 100644
--- a/source/blender/blenkernel/BKE_screen.h
+++ b/source/blender/blenkernel/BKE_screen.h
@@ -308,8 +308,8 @@ unsigned int BKE_screen_view3d_layer_all(const struct 
bScreen *sc) ATTR_WARN_UNU
 void BKE_screen_view3d_sync(struct View3D *v3d, struct Scene *scene);
 void BKE_screen_view3d_scene_sync(struct bScreen *sc);
 void BKE_screen_view3d_main_sync(ListBase *screen_lb, struct Scene *scene);
-void BKE_screen_view3d_twmode_remove(struct View3D *v3d, const int i);
-void BKE_screen_view3d_main_twmode_remove(ListBase *screen_lb, struct Scene 
*scene, const int i);
+void BKE_screen_view3d_transform_orientation_remove(struct View3D *v3d, const 
int i);
+void BKE_screen_view3d_main_transform_orientation_remove(ListBase *screen_lb, 
struct Scene *scene, const int i);
 void BKE_screen_gpu_fx_validate(struct GPUFXSettings *fx_settings);
 
 /* zoom factor conversion */
diff --git a/source/blender/blenkernel/intern/screen.c 
b/source/blender/blenkernel/intern/screen.c
index 1482056..69c4c9e 100644
--- a/source/blender/blenkernel/intern/screen.c
+++ b/source/blender/blenkernel/intern/screen.c
@@ -626,18 +626,18 @@ void BKE_screen_view3d_main_sync(ListBase *screen_lb, 
Scene *scene)
        }
 }
 
-void BKE_screen_view3d_twmode_remove(View3D *v3d, const int i)
+void BKE_screen_view3d_transform_orientation_remove(View3D *v3d, const int i)
 {
-       const int selected_index = (v3d->twmode - V3D_MANIP_CUSTOM);
+       const int selected_index = (v3d->transform_orientation - 
V3D_TRANS_ORIENTATION_CUSTOM);
        if (selected_index == i) {
-               v3d->twmode = V3D_MANIP_GLOBAL; /* fallback to global   */
+               v3d->transform_orientation = V3D_TRANS_ORIENTATION_GLOBAL; /* 
fallback to global        */
        }
        else if (selected_index > i) {
-               v3d->twmode--;
+               v3d->transform_orientation--;
        }
 }
 
-void BKE_screen_view3d_main_twmode_remove(ListBase *screen_lb, Scene *scene, 
const int i)
+void BKE_screen_view3d_main_transform_orientation_remove(ListBase *screen_lb, 
Scene *scene, const int i)
 {
        bScreen *sc;
 
@@ -649,7 +649,7 @@ void BKE_screen_view3d_main_twmode_remove(ListBase 
*screen_lb, Scene *scene, con
                                for (sl = sa->spacedata.first; sl; sl = 
sl->next) {
                                        if (sl->spacetype == SPACE_VIEW3D) {
                                                View3D *v3d = (View3D *)sl;
-                                               
BKE_screen_view3d_twmode_remove(v3d, i);
+                                               
BKE_screen_view3d_transform_orientation_remove(v3d, i);
                                        }
                                }
                        }
diff --git a/source/blender/blenloader/intern/readfile.c 
b/source/blender/blenloader/intern/readfile.c
index 677c900..96f70cd 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -6545,8 +6545,8 @@ void blo_do_versions_view3d_split_250(View3D *v3d, 
ListBase *regions)
        }
        
        /* this was not initialized correct always */
-       if (v3d->twtype == 0)
-               v3d->twtype = V3D_MANIP_TRANSLATE;
+       if (v3d->transform_manipulators_type == 0)
+               v3d->transform_manipulators_type = V3D_MANIP_TRANSLATE;
        if (v3d->gridsubdiv == 0)
                v3d->gridsubdiv = 10;
 }
diff --git a/source/blender/blenloader/intern/versioning_270.c 
b/source/blender/blenloader/intern/versioning_270.c
index 529233c..06f8325 100644
--- a/source/blender/blenloader/intern/versioning_270.c
+++ b/source/blender/blenloader/intern/versioning_270.c
@@ -1375,5 +1375,20 @@ void blo_do_versions_270(FileData *fd, Library 
*UNUSED(lib), Main *main)
                                }
                        }
                }
+
+               /* New transform manipulators */
+               if (!DNA_struct_elem_find(fd->filesdna, "View3D", "char", 
"transform_manipulators_type")) {
+                       for (bScreen *screen = main->screen.first; screen; 
screen = screen->id.next) {
+                               for (ScrArea *sa = screen->areabase.first; sa; 
sa = sa->next) {
+                                       /* handle pushed-back space data first 
*/
+                                       for (SpaceLink *sl = 
sa->spacedata.first; sl; sl = sl->next) {
+                                               if (sl->spacetype == 
SPACE_VIEW3D) {
+                                                       View3D *v3d = (View3D 
*)sl;
+                                                       v3d->flag3 |= 
V3D_USE_TRANSFORM_MANIPULATORS;
+                                               }
+                                       }
+                               }
+                       }
+               }
        }
 }
diff --git a/source/blender/blenloader/intern/versioning_legacy.c 
b/source/blender/blenloader/intern/versioning_legacy.c
index f5e9fb2..6514420 100644
--- a/source/blender/blenloader/intern/versioning_legacy.c
+++ b/source/blender/blenloader/intern/versioning_legacy.c
@@ -1858,8 +1858,8 @@ void blo_do_versions_pre250(FileData *fd, Library *lib, 
Main *main)
                                for (sl = sa->spacedata.first; sl; sl = 
sl->next) {
                                        if (sl->spacetype == SPACE_VIEW3D) {
                                                View3D *v3d = (View3D *) sl;
-                                               if (v3d->twtype == 0)
-                                                       v3d->twtype = 
V3D_MANIP_TRANSLATE;
+                                               if 
(v3d->transform_manipulators_type == 0)
+                                                       
v3d->transform_manipulators_type = V3D_MANIP_TRANSLATE;
                                        }
                                }
                        }
diff --git a/source/blender/editors/interface/resources.c 
b/source/blender/editors/interface/resources.c
index bdd492b..64bd023 100644
--- a/source/blender/editors/interface/resources.c
+++ b/source/blender/editors/interface/resources.c
@@ -39,6 +39,7 @@
 #include "DNA_screen_types.h"
 #include "DNA_space_types.h"
 #include "DNA_userdef_types.h"
+#include "DNA_view3d_types.h"
 #include "DNA_windowmanager_types.h"
 
 #include "BLI_blenlib.h"
@@ -2810,6 +2811,8 @@ void init_userdef_do_versions(void)
                        btheme->tv3d.time_keyframe[3] = 
btheme->tv3d.time_gp_keyframe[3] = 255;
                        btheme->ttime.time_keyframe[3] = 
btheme->ttime.time_gp_keyframe[3] = 255;
                }
+               /* Flag value has changed */
+               U.tw_flag = V3D_USE_TRANSFORM_MANIPULATORS;
        }
 
        if (U.pixelsize == 0.0f)
diff --git a/source/blender/editors/mesh/editmesh_bevel.c 
b/source/blender/editors/mesh/editmesh_bevel.c
index 2a78d8e..c5d63cf 100644
--- a/source/blender/editors/mesh/editmesh_bevel.c
+++ b/source/blender/editors/mesh/editmesh_bevel.c
@@ -88,7 +88,7 @@ typedef struct {
        float mcenter[2];
        BMBackup mesh_backup;
        void *draw_handle_pixel;
-       short twtype;
+       short transform_manipulators_type;
        short value_mode;  /* Which value does mouse movement and numeric input 
affect? */
        float segments;     /* Segments as float so smooth mouse pan works in 
small increments */
 } BevelData;
@@ -176,8 +176,8 @@ static bool edbm_bevel_init(bContext *C, wmOperator *op, 
const bool is_modal)
                G.moving = G_TRANSFORM_EDIT;
 
                if (v3d) {
-                       opdata->twtype = v3d->twtype;
-                       v3d->twtype = 0;
+                       opdata->transform_manipulators_type = 
v3d->transform_manipulators_type;
+                       v3d->transform_manipulators_type = 0;
                }
        }
 
@@ -250,7 +250,7 @@ static void edbm_bevel_exit(bContext *C, wmOperator *op)
                EDBM_redo_state_free(&opdata->mesh_backup, NULL, false);
                ED_region_draw_cb_exit(ar->type, opdata->draw_handle_pixel);
                if (v3d) {
-                       v3d->twtype = opdata->twtype;
+                       v3d->transform_manipulators_type = 
opdata->transform_manipulators_type;
                }
                G.moving = 0;
        }
diff --git a/source/blender/editors/mesh/editmesh_bisect.c 
b/source/blender/editors/mesh/editmesh_bisect.c
index 0e1ba2b..fde61ec 100644
--- a/source/blender/editors/mesh/editmesh_bisect.c
+++ b/source/blender/editors/mesh/editmesh_bisect.c
@@ -62,7 +62,7 @@ typedef struct {
        /* modal only */
        BMBackup mesh_backup;
        bool is_first;
-       short twtype;
+       short transform_manipulators_type;
 } BisectData;
 
 static bool mesh_bisect_interactive_calc(
@@ -147,8 +147,8 @@ static int mesh_bisect_invoke(bContext *C, wmOperator *op, 
const wmEvent *event)
 
                /* misc other vars */
                G.moving = G_TRANSFORM_EDIT;
-               opdata->twtype = v3d->twtype;
-               v3d->twtype = 0;
+               opdata->transform_manipulators_type = 
v3d->transform_manipulators_type;
+               v3d->transform_manipulators_type = 0;
 
                /* initialize modal callout */
                ED_area_headerprint(CTX_wm_area(C), IFACE_("LMB: Click and drag 
to draw cut line"));
@@ -160,7 +160,7 @@ static void edbm_bisect_exit(bContext *C, BisectData 
*opdata)
 {
        View3D *v3d = CTX_wm_view3d(C);
        EDBM_redo_state_free(&opdata->mesh_backup, NULL, false);
-       v3d->twtype = opdata->twtype;
+       v3d->transform_manipulators_type = opdata->transform_manipulators_type;
        G.moving = 0;
 }
 
diff --git a/source/blender/editors/mesh/editmesh_inset.c 
b/source/blender/editors/mesh/editmesh_inset.c
index 73b1b5b..1e5df54 100644
--- a/source/blender/editors/mesh/editmesh_inset.c
+++ b/source/blender/editors/mesh/editmesh_inset.c
@@ -144,8 +144,8 @@ static bool edbm_inset_init(bContext *C, wmOperator *op, 
const bool is_modal)
                opdata->draw_handle_pixel = 
ED_region_draw_cb_activate(ar->type, ED_region_draw_mouse_line_cb, 
opdata->mcenter, REGION_DRAW_POST_PIXEL);
                G.moving = G_TRANSFORM_EDIT;
                if (v3d) {
-                       opdata->twtype = v3d->twtype;
-                       v3d->twtype = 0;
+                       opdata->twtype = v3d->transform_manipulators_type;
+                       v3d->transform_manipulators_type = 0;
                }
        }
 
@@ -165,7 +165,7 @@ static void edbm_inset_exit(bContext *C, wmOperator *op)
                EDBM_redo_state_free(&opdata->mesh_backup, NULL, false);
                ED_region_draw_cb_exit(ar->type, opdata->draw_handle_pixel);
                if (v3d) {
-                       v3d->twtype = opdata->twtype;
+                       v3d->transform_manipulators_type = opdata->twtype;
                }
                G.moving = 0;
        }
diff --git a/source/blender/editors/space_view3d/space_view3d.c 
b/source/blender/editors/space_view3d/space_view3d.c
index 06d73c9..be27033 100644
--- a/source/blender/editors/space_view3d/space_view3d.c
+++ b/source/blender/editors/space_view3d/space_view3d.c
@@ -336,13 +336,13 @@ static SpaceLink *view3d_new(const bContext *C)
        
        v3d->flag = V3D_SELECT_OUTLINE;
        v3d->flag2 = V3D_SHOW_RECONSTRUCTION | V3D_SHOW_GPENCIL;
+       v3d->flag3 |= (U.tw_flag & V3D_USE_TRANSFORM_MANIPULATORS);
        
        v3d->lens = 35.0f;
        v3d->near = 0.01f;
        v3d->far = 1000.0f;
 
-       v3d->twflag |= U.tw_flag & V3D_USE_MANIPULATOR;
-       v3d->twtype = V3D_MANIP_TRANSLATE;
+       v3d->transform_manipulators_type = V3D_MANIP_TRANSLATE;
        v3d->around = V3D_AROUND_CENTER_MEAN;
        
        v3d->bundle_size = 0.2f;
diff --git a/source/blender/editors/space_view3d/view3d_edit.c 
b/source/blender/editors/space_view3d/view3d_edit.c
index 2933d39..86061e2 100644
--- a/source/blender/editors/space_view3d/view3d_edit.c
+++ b/source/blender/editors/space_view3d/view3d_edit.c
@@ -4774,14 +4774,14 @@ static int enable_manipulator_invoke(bContext *C, 
wmOperator *op, const wmEvent
 {
        View3D *v3d = CTX_wm_view3d(C);
 
-       v3d->twtype = 0;
+       v3d->transform_manipulators_type = 0;
        
        if (RNA_boolean

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to