svn merge ^/trunk/blender -r41150:41175
[blender.git] / source / blender / editors / transform / transform.h
index 7fccbcb0097a0e8366dc64e61abc18e18b4a1fb9..f2d41cb5b483e4503840b71c6d44cd68f2a585d0 100644 (file)
@@ -41,6 +41,8 @@
 #include "DNA_listBase.h"
 
 #include "BLI_editVert.h"
+#include "BLI_smallhash.h"
+#include "BKE_tessmesh.h"
 
 /* ************************** Types ***************************** */
 
@@ -66,6 +68,7 @@ struct wmEvent;
 struct wmTimer;
 struct ARegion;
 struct ReportList;
+struct SmallHash;
 
 /*
        The ctrl value has different meaning:
@@ -192,25 +195,34 @@ struct LinkNode;
 struct EditEdge;
 struct EditVert;
 struct GHash;
-typedef struct TransDataSlideUv {
-       float origuv[2];
-       float *uv_up, *uv_down;
-       //float *fuv[4];
-       struct LinkNode *fuv_list;
-} TransDataSlideUv;
 
 typedef struct TransDataSlideVert {
-       struct EditEdge *up, *down;
-       struct EditVert origvert;
+       struct BMVert vup, vdown;
+       struct BMVert origvert;
+
+       struct BMVert *up, *down;
+       struct BMVert *v;
+
+       float upvec[3], downvec[3];
 } TransDataSlideVert;
 
 typedef struct SlideData {
+       TransDataSlideVert *sv;
+       int totsv;
+       
+       struct SmallHash vhash;
+       struct SmallHash origfaces;
+       
+       /*
        TransDataSlideUv *slideuv, *suv_last;
        int totuv, uvlay_tot;
        struct GHash *vhash, **uvhash;
        struct EditVert *nearest;
        struct LinkNode *edgelist, *vertlist;
+       */
        int start[2], end[2];
+       struct BMEditMesh *em;
+       float perc;
 } SlideData;
 
 typedef struct TransData {