Merge with trunk r41625
[blender.git] / source / blender / makesdna / DNA_space_types.h
index 5d437fe..1bafefe 100644 (file)
@@ -37,6 +37,7 @@
 #include "DNA_vec_types.h"
 #include "DNA_outliner_types.h"                /* for TreeStoreElem */
 #include "DNA_image_types.h"   /* ImageUser */
+#include "DNA_movieclip_types.h"       /* MovieClipUser */
 /* Hum ... Not really nice... but needed for spacebuts. */
 #include "DNA_view2d_types.h"
 
@@ -62,6 +63,8 @@ struct bScreen;
 struct Scene;
 struct wmOperator;
 struct wmTimer;
+struct MovieClip;
+struct MovieClipScopes;
 
        /**
         * The base structure all the other spaces
@@ -489,6 +492,32 @@ typedef struct SpaceUserPref {
 
 } SpaceUserPref;
 
+typedef struct SpaceClip {
+       SpaceLink *next, *prev;
+       ListBase regionbase;            /* storage of regions for inactive spaces */
+       int spacetype;
+
+       float xof, yof;                         /* user defined offset, image is centered */
+       float xlockof, ylockof;         /* user defined offset from locked position */
+       float zoom;                                     /* user defined zoom level */
+
+       struct MovieClipUser user;              /* user of clip */
+       struct MovieClip *clip;                 /* clip data */
+       struct MovieClipScopes scopes;  /* different scoped displayed in space panels */
+
+       int flag;                                       /* flags */
+       short mode;                                     /* editor mode (editing context being displayed) */
+       short view;                                     /* type of the clip editor view */
+
+       int path_length;                        /* length of displaying path, in frames */
+
+       /* current stabilization data */
+       float loc[2], scale, angle;     /* pre-composed stabilization data */
+       int pad;
+       float stabmat[4][4], unistabmat[4][4];          /* current stabilization matrix and the same matrix in unified space,
+                                                                                                  defined when drawing and used for mouse position calculation */
+} SpaceClip;
+
 /* view3d  Now in DNA_view3d_types.h */
 
 
@@ -824,6 +853,7 @@ enum {
 #define TIME_ALL_IMAGE_WIN             64
 #define TIME_CONTINUE_PHYSICS  128
 #define TIME_NODES                             256
+#define TIME_CLIPS                             512
 
 /* time->cache */
 #define TIME_CACHE_DISPLAY             1
@@ -862,6 +892,33 @@ enum {
 #define SEQ_PROXY_RENDER_SIZE_100       99
 #define SEQ_PROXY_RENDER_SIZE_FULL      100
 
+/* SpaceClip->flag */
+#define SC_SHOW_MARKER_PATTERN (1<<0)
+#define SC_SHOW_MARKER_SEARCH  (1<<1)
+#define SC_LOCK_SELECTION              (1<<2)
+#define SC_SHOW_TINY_MARKER            (1<<3)
+#define SC_SHOW_TRACK_PATH             (1<<4)
+#define SC_SHOW_BUNDLES                        (1<<5)
+#define SC_MUTE_FOOTAGE                        (1<<6)
+#define SC_HIDE_DISABLED               (1<<7)
+#define SC_SHOW_NAMES                  (1<<8)
+#define SC_SHOW_GRID                   (1<<9)
+#define SC_SHOW_STABLE                 (1<<10)
+#define SC_MANUAL_CALIBRATION  (1<<11)
+#define SC_SHOW_GPENCIL                        (1<<12)
+#define SC_SHOW_FILTERS                        (1<<13)
+#define SC_SHOW_GRAPH_FRAMES   (1<<14)
+#define SC_SHOW_GRAPH_TRACKS   (1<<15)
+#define SC_SHOW_PYRAMID_LEVELS         (1<<16)
+
+/* SpaceClip->mode */
+#define SC_MODE_TRACKING               0
+#define SC_MODE_RECONSTRUCTION 1
+#define SC_MODE_DISTORTION             2
+
+/* SpaceClip->view */
+#define SC_VIEW_CLIP           0
+#define SC_VIEW_GRAPH          1
 
 /* space types, moved from DNA_screen_types.h */
 /* Do NOT change order, append on end. types are hardcoded needed */
@@ -886,7 +943,8 @@ enum {
        SPACE_LOGIC,
        SPACE_CONSOLE,
        SPACE_USERPREF,
-       SPACEICONMAX = SPACE_USERPREF
+       SPACE_CLIP,
+       SPACEICONMAX = SPACE_CLIP
 };
 
 #endif