Merge branch 'master' into blende2.8
[blender.git] / source / blender / makesdna / DNA_view3d_types.h
index 1c14c13ce904ce92059554f10bd9f8c88ed8d400..c402192c02a3ccb3e8e569504274dbfa6f1e18de 100644 (file)
@@ -44,11 +44,12 @@ struct bGPdata;
 struct SmoothView3DStore;
 struct wmTimer;
 struct Material;
 struct SmoothView3DStore;
 struct wmTimer;
 struct Material;
-struct GPUFX;
+struct GPUViewport;
 
 #include "DNA_defs.h"
 #include "DNA_listBase.h"
 #include "DNA_image_types.h"
 
 #include "DNA_defs.h"
 #include "DNA_listBase.h"
 #include "DNA_image_types.h"
+#include "DNA_object_types.h"
 #include "DNA_movieclip_types.h"
 #include "DNA_gpu_types.h"
 
 #include "DNA_movieclip_types.h"
 #include "DNA_gpu_types.h"
 
@@ -61,23 +62,6 @@ struct GPUFX;
 #  undef far
 #endif
 
 #  undef far
 #endif
 
-/* Background Picture in 3D-View */
-typedef struct BGpic {
-       struct BGpic *next, *prev;
-
-       struct Image *ima;
-       struct ImageUser iuser;
-       struct MovieClip *clip;
-       struct MovieClipUser cuser;
-       float xof, yof, size, blend, rotation;
-       short view;
-       short flag;
-       short source;
-       char pad[6];
-} BGpic;
-
-/* ********************************* */
-
 typedef struct RegionView3D {
 
        float winmat[4][4];                     /* GL_PROJECTION matrix */
 typedef struct RegionView3D {
 
        float winmat[4][4];                     /* GL_PROJECTION matrix */
@@ -106,8 +90,13 @@ typedef struct RegionView3D {
        struct wmTimer *smooth_timer;
 
 
        struct wmTimer *smooth_timer;
 
 
-       /* transform widget matrix */
+       /* transform gizmo matrix */
        float twmat[4][4];
        float twmat[4][4];
+       /* min/max dot product on twmat xyz axis. */
+       float tw_axis_min[3], tw_axis_max[3];
+       float tw_axis_matrix[3][3];
+
+       float gridview DNA_DEPRECATED;
 
        float viewquat[4];                      /* view rotation, must be kept normalized */
        float dist;                                     /* distance from 'ofs' along -viewinv[2] vector, where result is negative as is 'ofs' */
 
        float viewquat[4];                      /* view rotation, must be kept normalized */
        float dist;                                     /* distance from 'ofs' along -viewinv[2] vector, where result is negative as is 'ofs' */
@@ -125,7 +114,7 @@ typedef struct RegionView3D {
        char pad[3];
        float ofs_lock[2];                      /* normalized offset for locked view: (-1, -1) bottom left, (1, 1) upper right */
 
        char pad[3];
        float ofs_lock[2];                      /* normalized offset for locked view: (-1, -1) bottom left, (1, 1) upper right */
 
-       short twdrawflag;
+       short twdrawflag; /* XXX can easily get rid of this (Julian) */
        short rflag;
 
 
        short rflag;
 
 
@@ -133,17 +122,90 @@ typedef struct RegionView3D {
        float lviewquat[4];
        short lpersp, lview; /* lpersp can never be set to 'RV3D_CAMOB' */
 
        float lviewquat[4];
        short lpersp, lview; /* lpersp can never be set to 'RV3D_CAMOB' */
 
-       float gridview;
-       float tw_idot[3];  /* manipulator runtime: (1 - dot) product with view vector (used to check view alignment) */
-
-
        /* active rotation from NDOF or elsewhere */
        float rot_angle;
        float rot_axis[3];
        /* active rotation from NDOF or elsewhere */
        float rot_angle;
        float rot_axis[3];
-
-       struct GPUFX *compositor;
 } RegionView3D;
 
 } RegionView3D;
 
+typedef struct View3DCursor {
+       float location[3];
+       float rotation[4];
+       char _pad[4];
+} View3DCursor;
+
+/* 3D Viewport Shading settings */
+typedef struct View3DShading {
+       char type;        /* Shading type (VIEW3D_SHADE_SOLID, ..) */
+       char prev_type;   /* Runtime, for toggle between rendered viewport. */
+       char prev_type_wire;
+
+       char color_type;
+       short flag;
+
+       char light;
+       char background_type;
+       char cavity_type;
+       char pad[7];
+
+       char studio_light[256]; /* FILE_MAXFILE */
+       char lookdev_light[256]; /* FILE_MAXFILE */
+       char matcap[256]; /* FILE_MAXFILE */
+
+       float shadow_intensity;
+       float single_color[3];
+
+       float studiolight_rot_z;
+       float studiolight_background;
+
+       float object_outline_color[3];
+       float xray_alpha;
+       float xray_alpha_wire;
+
+       float cavity_valley_factor;
+       float cavity_ridge_factor;
+
+       float background_color[3];
+
+       float curvature_ridge_factor;
+       float curvature_valley_factor;
+
+} View3DShading;
+
+/* 3D Viewport Overlay settings */
+typedef struct View3DOverlay {
+       int flag;
+
+       /* Edit mode settings */
+       int edit_flag;
+       float normals_length;
+       float backwire_opacity;
+
+       /* Paint mode settings */
+       int paint_flag;
+
+       /* Weight paint mode settings */
+       int wpaint_flag;
+       char _pad2[4];
+
+       /* Alpha for texture, weight, vertex paint overlay */
+       float texture_paint_mode_opacity;
+       float vertex_paint_mode_opacity;
+       float weight_paint_mode_opacity;
+
+       /* Armature edit/pose mode settings */
+       int arm_flag;
+       float xray_alpha_bone;
+
+       /* Other settings */
+       float wireframe_threshold;
+
+       /* grease pencil settings */
+       float gpencil_paper_opacity;
+       float gpencil_grid_opacity;
+       float gpencil_fade_layer;
+
+} View3DOverlay;
+
 /* 3D ViewPort Struct */
 typedef struct View3D {
        struct SpaceLink *next, *prev;
 /* 3D ViewPort Struct */
 typedef struct View3D {
        struct SpaceLink *next, *prev;
@@ -160,8 +222,11 @@ typedef struct View3D {
        char bundle_drawtype;           /* display style for bundle */
        char pad[3];
 
        char bundle_drawtype;           /* display style for bundle */
        char pad[3];
 
-       unsigned int lay_prev; /* for active layer toggle */
-       unsigned int lay_used; /* used while drawing */
+       unsigned int lay_prev DNA_DEPRECATED; /* for active layer toggle */
+       unsigned int lay_used DNA_DEPRECATED; /* used while drawing */
+
+       int object_type_exclude_viewport;
+       int object_type_exclude_select;
 
        short persp  DNA_DEPRECATED;
        short view   DNA_DEPRECATED;
 
        short persp  DNA_DEPRECATED;
        short view   DNA_DEPRECATED;
@@ -169,29 +234,25 @@ typedef struct View3D {
        struct Object *camera, *ob_centre;
        rctf render_border;
 
        struct Object *camera, *ob_centre;
        rctf render_border;
 
-       struct ListBase bgpicbase;
-       struct BGpic *bgpic  DNA_DEPRECATED; /* deprecated, use bgpicbase, only kept for do_versions(...) */
-
        struct View3D *localvd; /* allocated backup of its self while in localview */
 
        char ob_centre_bone[64];                /* optional string for armature bone to define center, MAXBONENAME */
 
        struct View3D *localvd; /* allocated backup of its self while in localview */
 
        char ob_centre_bone[64];                /* optional string for armature bone to define center, MAXBONENAME */
 
-       unsigned int lay;
-       int layact;
+       unsigned short local_view_uuid;
+       short _pad6;
+       int layact DNA_DEPRECATED;
 
 
-       /**
-        * The drawing mode for the 3d display. Set to OB_BOUNDBOX, OB_WIRE, OB_SOLID,
-        * OB_TEXTURE, OB_MATERIAL or OB_RENDER */
-       char drawtype;
-       char ob_centre_cursor;          /* optional bool for 3d cursor to define center */
-       short scenelock, around;
+       short ob_centre_cursor;         /* optional bool for 3d cursor to define center */
+       short scenelock;
+       short gp_flag;
        short flag;
        int flag2;
 
        float lens, grid;
        float near, far;
        float ofs[3]  DNA_DEPRECATED;                   /* XXX deprecated */
        short flag;
        int flag2;
 
        float lens, grid;
        float near, far;
        float ofs[3]  DNA_DEPRECATED;                   /* XXX deprecated */
-       float cursor[3];
+
+       char _pad[4];
 
        short matcap_icon;                      /* icon id */
 
 
        short matcap_icon;                      /* icon id */
 
@@ -199,36 +260,30 @@ typedef struct View3D {
        short gridsubdiv;       /* Number of subdivisions in the grid between each highlighted grid line */
        char gridflag;
 
        short gridsubdiv;       /* Number of subdivisions in the grid between each highlighted grid line */
        char gridflag;
 
-       /* transform widget info */
-       char twtype, twmode, twflag;
+       /* transform gizmo info */
+       char _pad5[2], gizmo_flag;
 
 
-       short _pad1;
-
-       /* afterdraw, for xray & transparent */
-       struct ListBase afterdraw_transp;
-       struct ListBase afterdraw_xray;
-       struct ListBase afterdraw_xraytransp;
+       short _pad2;
 
        /* drawflags, denoting state */
 
        /* drawflags, denoting state */
-       char zbuf, transp, xray;
+       char _pad3;
+       char transp, xray;
 
        char multiview_eye;                             /* multiview current eye - for internal use */
 
 
        char multiview_eye;                             /* multiview current eye - for internal use */
 
-       /* built-in shader effects (eGPUFXFlags) */
-       char pad3[4];
+       /* actually only used to define the opacity of the grease pencil vertex in edit mode */
+       float vertex_opacity;
 
        /* note, 'fx_settings.dof' is currently _not_ allocated,
         * instead set (temporarily) from camera */
        struct GPUFXSettings fx_settings;
 
        void *properties_storage;               /* Nkey panel stores stuff here (runtime only!) */
 
        /* note, 'fx_settings.dof' is currently _not_ allocated,
         * instead set (temporarily) from camera */
        struct GPUFXSettings fx_settings;
 
        void *properties_storage;               /* Nkey panel stores stuff here (runtime only!) */
-       /* Allocated per view, not library data (used by matcap). */
-       struct Material *defmaterial;
 
        /* XXX deprecated? */
        struct bGPdata *gpd  DNA_DEPRECATED;            /* Grease-Pencil Data (annotation layers) */
 
 
        /* XXX deprecated? */
        struct bGPdata *gpd  DNA_DEPRECATED;            /* Grease-Pencil Data (annotation layers) */
 
-        /* multiview - stereo 3d */
+       /* Stereoscopy settings */
        short stereo3d_flag;
        char stereo3d_camera;
        char pad4;
        short stereo3d_flag;
        char stereo3d_camera;
        char pad4;
@@ -236,12 +291,12 @@ typedef struct View3D {
        float stereo3d_volume_alpha;
        float stereo3d_convergence_alpha;
 
        float stereo3d_volume_alpha;
        float stereo3d_convergence_alpha;
 
-       /* Previous viewport draw type.
-        * Runtime-only, set in the rendered viewport toggle operator.
-        */
-       short prev_drawtype;
-       short pad1;
-       float pad2;
+       /* Display settings */
+       short drawtype DNA_DEPRECATED;
+       short pad5[3];
+
+       View3DShading shading;
+       View3DOverlay overlay;
 } View3D;
 
 
 } View3D;
 
 
@@ -251,14 +306,14 @@ typedef struct View3D {
 #define V3D_S3D_DISPVOLUME             (1 << 2)
 
 /* View3D->flag (short) */
 #define V3D_S3D_DISPVOLUME             (1 << 2)
 
 /* View3D->flag (short) */
-/*#define V3D_DISPIMAGE     (1 << 0) */ /*UNUSED*/
-#define V3D_DISPBGPICS      (1 << 1)
+/*#define V3D_FLAG_DEPRECATED_1 (1 << 0) */ /*UNUSED */
+/*#define V3D_FLAG_DEPRECATED_2 (1 << 1) */ /* UNUSED */
 #define V3D_HIDE_HELPLINES  (1 << 2)
 #define V3D_INVALID_BACKBUF (1 << 3)
 
 #define V3D_HIDE_HELPLINES  (1 << 2)
 #define V3D_INVALID_BACKBUF (1 << 3)
 
-#define V3D_ALIGN           (1 << 10)
+/* #define V3D_FLAG_DEPRECATED_10 (1 << 10) */ /* UNUSED */
 #define V3D_SELECT_OUTLINE  (1 << 11)
 #define V3D_SELECT_OUTLINE  (1 << 11)
-#define V3D_ZBUF_SELECT     (1 << 12)
+#define V3D_ZBUF_SELECT     (1 << 12)   /* XXX: DNA deprecated */
 #define V3D_GLOBAL_STATS    (1 << 13)
 #define V3D_DRAW_CENTERS    (1 << 15)
 
 #define V3D_GLOBAL_STATS    (1 << 13)
 #define V3D_DRAW_CENTERS    (1 << 15)
 
@@ -271,7 +326,7 @@ typedef struct View3D {
 #define RV3D_CLIPPING               (1 << 2)
 #define RV3D_NAVIGATING             (1 << 3)
 #define RV3D_GPULIGHT_UPDATE        (1 << 4)
 #define RV3D_CLIPPING               (1 << 2)
 #define RV3D_NAVIGATING             (1 << 3)
 #define RV3D_GPULIGHT_UPDATE        (1 << 4)
-#define RV3D_IS_GAME_ENGINE         (1 << 5)  /* runtime flag, used to check if LoD's should be used */
+/*#define RV3D_IS_GAME_ENGINE       (1 << 5) *//* UNUSED */
 /**
  * Disable zbuffer offset, skip calls to #ED_view3d_polygon_offset.
  * Use when precise surface depth is needed and picking bias isn't, see T45434).
 /**
  * Disable zbuffer offset, skip calls to #ED_view3d_polygon_offset.
  * Use when precise surface depth is needed and picking bias isn't, see T45434).
@@ -301,7 +356,7 @@ typedef struct View3D {
 /* View3d->flag2 (int) */
 #define V3D_RENDER_OVERRIDE            (1 << 2)
 #define V3D_SOLID_TEX                  (1 << 3)
 /* View3d->flag2 (int) */
 #define V3D_RENDER_OVERRIDE            (1 << 2)
 #define V3D_SOLID_TEX                  (1 << 3)
-#define V3D_SHOW_GPENCIL               (1 << 4)
+#define V3D_SHOW_ANNOTATION     (1 << 4)
 #define V3D_LOCK_CAMERA                        (1 << 5)
 #define V3D_RENDER_SHADOW              (1 << 6)                /* This is a runtime only flag that's used to tell draw_mesh_object() that we're doing a shadow pass instead of a regular draw */
 #define V3D_SHOW_RECONSTRUCTION        (1 << 7)
 #define V3D_LOCK_CAMERA                        (1 << 5)
 #define V3D_RENDER_SHADOW              (1 << 6)                /* This is a runtime only flag that's used to tell draw_mesh_object() that we're doing a shadow pass instead of a regular draw */
 #define V3D_SHOW_RECONSTRUCTION        (1 << 7)
@@ -311,10 +366,122 @@ typedef struct View3D {
 #define V3D_RENDER_BORDER              (1 << 11)
 #define V3D_SOLID_MATCAP               (1 << 12)       /* user flag */
 #define V3D_SHOW_SOLID_MATCAP  (1 << 13)       /* runtime flag */
 #define V3D_RENDER_BORDER              (1 << 11)
 #define V3D_SOLID_MATCAP               (1 << 12)       /* user flag */
 #define V3D_SHOW_SOLID_MATCAP  (1 << 13)       /* runtime flag */
-#define V3D_OCCLUDE_WIRE               (1 << 14)
-#define V3D_SHADELESS_TEX              (1 << 15)
-#define V3D_SHOW_WORLD                 (1 << 16)
+#define V3D_OCCLUDE_WIRE               (1 << 14)   /* XXX: DNA deprecated */
+#define V3D_SHOW_MODE_SHADE_OVERRIDE (1 << 15) /* XXX: DNA deprecated */
+
+/* View3d->gp_flag (short) */
+#define V3D_GP_SHOW_PAPER            (1 << 0) /* Activate paper to cover all viewport */
+#define V3D_GP_SHOW_GRID             (1 << 1) /* Activate paper grid */
+#define V3D_GP_SHOW_EDIT_LINES       (1 << 2)
+#define V3D_GP_SHOW_MULTIEDIT_LINES  (1 << 3)
+#define V3D_GP_SHOW_ONION_SKIN       (1 << 4) /* main switch at view level */
+#define V3D_GP_FADE_NOACTIVE_LAYERS  (1 << 5) /* fade layers not active */
+
+/* View3DShading->light */
+enum {
+       V3D_LIGHTING_FLAT   = 0,
+       V3D_LIGHTING_STUDIO = 1,
+       V3D_LIGHTING_MATCAP = 2,
+};
 
 
+/* View3DShading->flag */
+enum {
+       V3D_SHADING_OBJECT_OUTLINE      = (1 << 0),
+       V3D_SHADING_XRAY                = (1 << 1),
+       V3D_SHADING_SHADOW              = (1 << 2),
+       V3D_SHADING_SCENE_LIGHTS        = (1 << 3),
+       V3D_SHADING_SPECULAR_HIGHLIGHT  = (1 << 4),
+       V3D_SHADING_CAVITY              = (1 << 5),
+       V3D_SHADING_MATCAP_FLIP_X       = (1 << 6),
+       V3D_SHADING_SCENE_WORLD         = (1 << 7),
+       V3D_SHADING_XRAY_BONE           = (1 << 8),
+       V3D_SHADING_WORLD_ORIENTATION   = (1 << 9),
+};
+
+/* View3DShading->color_type */
+enum {
+       V3D_SHADING_MATERIAL_COLOR = 0,
+       V3D_SHADING_RANDOM_COLOR   = 1,
+       V3D_SHADING_SINGLE_COLOR   = 2,
+       V3D_SHADING_TEXTURE_COLOR  = 3,
+};
+
+/* View3DShading->background_type */
+enum {
+       V3D_SHADING_BACKGROUND_THEME    = 0,
+       V3D_SHADING_BACKGROUND_WORLD    = 1,
+       V3D_SHADING_BACKGROUND_VIEWPORT = 2,
+};
+
+/* View3DShading->cavity_type */
+enum {
+       V3D_SHADING_CAVITY_SSAO = 0,
+       V3D_SHADING_CAVITY_CURVATURE = 1,
+       V3D_SHADING_CAVITY_BOTH = 2,
+};
+
+/* View3DOverlay->flag */
+enum {
+       V3D_OVERLAY_FACE_ORIENTATION  = (1 << 0),
+       V3D_OVERLAY_HIDE_CURSOR       = (1 << 1),
+       V3D_OVERLAY_BONE_SELECT       = (1 << 2),
+       V3D_OVERLAY_LOOK_DEV          = (1 << 3),
+       V3D_OVERLAY_WIREFRAMES        = (1 << 4),
+       V3D_OVERLAY_HIDE_TEXT         = (1 << 5),
+       V3D_OVERLAY_HIDE_MOTION_PATHS = (1 << 6),
+       V3D_OVERLAY_ONION_SKINS       = (1 << 7),
+       V3D_OVERLAY_HIDE_BONES        = (1 << 8),
+       V3D_OVERLAY_HIDE_OBJECT_XTRAS = (1 << 9),
+       V3D_OVERLAY_HIDE_OBJECT_ORIGINS = (1 << 10),
+};
+
+/* View3DOverlay->edit_flag */
+enum {
+       V3D_OVERLAY_EDIT_VERT_NORMALS = (1 << 0),
+       V3D_OVERLAY_EDIT_LOOP_NORMALS = (1 << 1),
+       V3D_OVERLAY_EDIT_FACE_NORMALS = (1 << 2),
+
+       V3D_OVERLAY_EDIT_OCCLUDE_WIRE = (1 << 3),
+
+       V3D_OVERLAY_EDIT_WEIGHT       = (1 << 4),
+
+       V3D_OVERLAY_EDIT_EDGES        = (1 << 5),
+       V3D_OVERLAY_EDIT_FACES        = (1 << 6),
+       V3D_OVERLAY_EDIT_FACE_DOT     = (1 << 7),
+
+       V3D_OVERLAY_EDIT_SEAMS        = (1 << 8),
+       V3D_OVERLAY_EDIT_SHARP        = (1 << 9),
+       V3D_OVERLAY_EDIT_CREASES      = (1 << 10),
+       V3D_OVERLAY_EDIT_BWEIGHTS     = (1 << 11),
+
+       V3D_OVERLAY_EDIT_FREESTYLE_EDGE = (1 << 12),
+       V3D_OVERLAY_EDIT_FREESTYLE_FACE = (1 << 13),
+
+       V3D_OVERLAY_EDIT_STATVIS      = (1 << 14),
+       V3D_OVERLAY_EDIT_EDGE_LEN     = (1 << 15),
+       V3D_OVERLAY_EDIT_EDGE_ANG     = (1 << 16),
+       V3D_OVERLAY_EDIT_FACE_ANG     = (1 << 17),
+       V3D_OVERLAY_EDIT_FACE_AREA    = (1 << 18),
+       V3D_OVERLAY_EDIT_INDICES      = (1 << 19),
+
+       V3D_OVERLAY_EDIT_CU_HANDLES   = (1 << 20),
+       V3D_OVERLAY_EDIT_CU_NORMALS   = (1 << 21),
+};
+
+/* View3DOverlay->arm_flag */
+enum {
+       V3D_OVERLAY_ARM_TRANSP_BONES  = (1 << 0),
+};
+
+/* View3DOverlay->paint_flag */
+enum {
+       V3D_OVERLAY_PAINT_WIRE        = (1 << 0),
+};
+
+/* View3DOverlay->wpaint_flag */
+enum {
+       V3D_OVERLAY_WPAINT_CONTOURS   = (1 << 0),
+};
 
 /* View3D->around */
 enum {
 
 /* View3D->around */
 enum {
@@ -346,49 +513,25 @@ enum {
 #define V3D_SHOW_Y              (1 << 2)
 #define V3D_SHOW_Z              (1 << 3)
 
 #define V3D_SHOW_Y              (1 << 2)
 #define V3D_SHOW_Z              (1 << 3)
 
-/* View3d->twtype (bits, we can combine them) */
-#define V3D_MANIP_TRANSLATE     (1 << 0)
-#define V3D_MANIP_ROTATE        (1 << 1)
-#define V3D_MANIP_SCALE         (1 << 2)
-
-/* View3d->twmode */
+/* Scene.orientation_type */
 #define V3D_MANIP_GLOBAL               0
 #define V3D_MANIP_LOCAL                        1
 #define V3D_MANIP_NORMAL               2
 #define V3D_MANIP_VIEW                 3
 #define V3D_MANIP_GIMBAL               4
 #define V3D_MANIP_GLOBAL               0
 #define V3D_MANIP_LOCAL                        1
 #define V3D_MANIP_NORMAL               2
 #define V3D_MANIP_VIEW                 3
 #define V3D_MANIP_GIMBAL               4
-#define V3D_MANIP_CUSTOM               5 /* anything of value 5 or higher is custom */
-
-/* View3d->twflag */
-   /* USE = user setting, DRAW = based on selection */
-#define V3D_USE_MANIPULATOR            (1 << 0)
-#define V3D_DRAW_MANIPULATOR   (1 << 1)
-/* #define V3D_CALC_MANIPULATOR        (1 << 2) */ /*UNUSED*/
+#define V3D_MANIP_CURSOR               5
+#define V3D_MANIP_CUSTOM_MATRIX        (V3D_MANIP_CUSTOM - 1)  /* Runtime only, never saved to DNA. */
+#define V3D_MANIP_CUSTOM               1024
 
 
-/* BGPic->flag */
-/* may want to use 1 for select ? */
+/* View3d.mpr_flag (also) */
 enum {
 enum {
-       V3D_BGPIC_EXPANDED      = (1 << 1),
-       V3D_BGPIC_CAMERACLIP    = (1 << 2),
-       V3D_BGPIC_DISABLED      = (1 << 3),
-       V3D_BGPIC_FOREGROUND    = (1 << 4),
-
-       /* Camera framing options */
-       V3D_BGPIC_CAMERA_ASPECT = (1 << 5),  /* don't stretch to fit the camera view  */
-       V3D_BGPIC_CAMERA_CROP   = (1 << 6),  /* crop out the image */
-
-       /* Axis flip options */
-       V3D_BGPIC_FLIP_X        = (1 << 7),
-       V3D_BGPIC_FLIP_Y        = (1 << 8),
+       /** All gizmos. */
+       V3D_GIZMO_HIDE                = (1 << 0),
+       V3D_GIZMO_HIDE_NAVIGATE       = (1 << 1),
+       V3D_GIZMO_HIDE_CONTEXT        = (1 << 2),
+       V3D_GIZMO_HIDE_TOOL           = (1 << 3),
 };
 
 };
 
-#define V3D_BGPIC_EXPANDED (V3D_BGPIC_EXPANDED | V3D_BGPIC_CAMERACLIP)
-
-/* BGPic->source */
-/* may want to use 1 for select ?*/
-#define V3D_BGPIC_IMAGE                0
-#define V3D_BGPIC_MOVIE                1
-
 #define RV3D_CAMZOOM_MIN -30
 #define RV3D_CAMZOOM_MAX 600
 
 #define RV3D_CAMZOOM_MIN -30
 #define RV3D_CAMZOOM_MAX 600