Revision: 16802
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=16802
Author:   pidhash
Date:     2008-09-29 02:44:33 +0200 (Mon, 29 Sep 2008)

Log Message:
-----------
Adding last view feature for PAD0

Modified Paths:
--------------
    trunk/blender/source/blender/makesdna/DNA_view3d_types.h
    trunk/blender/source/blender/src/space.c
    trunk/blender/source/blender/src/toets.c

Modified: trunk/blender/source/blender/makesdna/DNA_view3d_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_view3d_types.h    2008-09-28 
23:40:36 UTC (rev 16801)
+++ trunk/blender/source/blender/makesdna/DNA_view3d_types.h    2008-09-29 
00:44:33 UTC (rev 16802)
@@ -144,6 +144,11 @@
        
        void *properties_storage;       /* Nkey panel stores stuff here, not in 
file */
        struct bGPdata *gpd;            /* Grease-Pencil Data (annotation 
layers) */
+
+       /* last view */
+       float lviewquat[4];
+       short lpersp, pad4;
+       int pad5;
 } View3D;
 
 

Modified: trunk/blender/source/blender/src/space.c
===================================================================
--- trunk/blender/source/blender/src/space.c    2008-09-28 23:40:36 UTC (rev 
16801)
+++ trunk/blender/source/blender/src/space.c    2008-09-29 00:44:33 UTC (rev 
16802)
@@ -1709,6 +1709,7 @@
                                break;
                        case MIDDLEMOUSE:
                                handle_view_middlemouse();
+                               G.vd->view = -1; 
                                break;
                        case RIGHTMOUSE:
                                if((G.obedit) && (G.qual & LR_CTRLKEY)==0) {

Modified: trunk/blender/source/blender/src/toets.c
===================================================================
--- trunk/blender/source/blender/src/toets.c    2008-09-28 23:40:36 UTC (rev 
16801)
+++ trunk/blender/source/blender/src/toets.c    2008-09-29 00:44:33 UTC (rev 
16802)
@@ -289,6 +289,7 @@
                                if(G.vd->persp==V3D_PERSP) 
G.vd->persp=V3D_ORTHO;
                                else G.vd->persp=V3D_PERSP;
                        }
+                       G.vd->lpersp = G.vd->persp; 
                }
                else if(event==PAD0) {
                        if(G.qual==LR_ALTKEY) {
@@ -317,7 +318,14 @@
                                G.vd->camera= scene_find_camera(G.scene);
                                handle_view3d_lock();
                        }
-                       
+                       if(!G.vd->view) {
+                               QUATCOPY(G.vd->viewquat, G.vd->lviewquat);
+                               G.vd->persp = G.vd->lpersp;
+                       }
+                       else {
+                               QUATCOPY(G.vd->lviewquat, G.vd->viewquat);
+                               G.vd->lpersp = G.vd->persp;
+                       }       
                        if(G.vd->camera && (G.vd->camera != act_cam_orig)) {
                                G.vd->persp= V3D_CAMOB;
                                G.vd->view= 0;
@@ -362,7 +370,7 @@
                                q1[1]= q1[2]= 0.0;
                                q1[3]= si;
                                QuatMul(G.vd->viewquat, G.vd->viewquat, q1);
-                               G.vd->view= 0;
+                               G.vd->view= -1;
                        }
                        if(event==PAD2 || event==PAD8) {
                                /* horizontal axis */
@@ -377,7 +385,7 @@
                                q1[2]*= si;
                                q1[3]*= si;
                                QuatMul(G.vd->viewquat, G.vd->viewquat, q1);
-                               G.vd->view= 0;
+                               G.vd->view= -1;
                        }
                }
 


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

Reply via email to