Moved the show brush flag from sculpt to paint, and it now shows/hides the brush...
[blender-staging.git] / source / blender / makesdna / DNA_scene_types.h
index b00500a321a48823a79a4f108ea15c579a951904..810b34a746eba37d8e8b7d46fe0c7393ea508508 100644 (file)
@@ -93,6 +93,8 @@ typedef struct FFMpegCodecData {
        int audio_codec;
        int video_bitrate;
        int audio_bitrate;
+       int audio_mixrate;
+       float audio_volume;
        int gop_size;
        int flags;
 
@@ -106,10 +108,13 @@ typedef struct FFMpegCodecData {
 
 
 typedef struct AudioData {
-       int mixrate;
-       float main;             /* Main mix in dB */
+       int mixrate; // 2.5: now in FFMpegCodecData: audio_mixrate
+       float main; // 2.5: now in FFMpegCodecData: audio_volume
+       float speed_of_sound;
+       float doppler_factor;
+       int distance_model;
        short flag;
-       short pad[3];
+       short pad;
 } AudioData;
 
 typedef struct SceneRenderLayer {
@@ -172,7 +177,6 @@ typedef struct RenderData {
        struct AviCodecData *avicodecdata;
        struct QuicktimeCodecData *qtcodecdata;
        struct FFMpegCodecData ffcodecdata;
-       struct AudioData audio; /* new in 2.5 */
        
        int cfra, sfra, efra;   /* frames as in 'images' */
        int psfra, pefra;               /* start+end frames of preview range */
@@ -238,12 +242,23 @@ typedef struct RenderData {
         */
        int mode;
 
-       /* render engine (deprecated), octree resolution */
-       short renderer, ocres;
-       short raystructure;
-       short raytrace_tree_type;
-       short pad4[2];
+       /**
+        * Flags for raytrace settings. Use bit-masking to access the settings.
+        */
+       int raytrace_options;
+       
+       /**
+        * Raytrace acceleration structure
+        */
+       short raytrace_structure;
 
+       /* renderer (deprecated) */
+       short renderer;
+
+       /* octree resolution */
+       short ocres;
+       short pad4;
+       
        /**
         * What to do with the sky/background. Picks sky/premul/key
         * blending for the background
@@ -256,6 +271,7 @@ typedef struct RenderData {
        short osa;
 
        short frs_sec, edgeint;
+
        
        /* safety, border and display rect */
        rctf safety, border;
@@ -465,7 +481,7 @@ typedef struct Paint {
        void *paint_cursor;
        unsigned char paint_cursor_col[4];
 
-       int pad;
+       int flags;
 } Paint;
 
 typedef struct ImagePaintSettings {
@@ -540,7 +556,7 @@ typedef struct VPaint {
 #define VP_SOFT                4
 #define VP_NORMALS     8
 #define VP_SPRAY       16
-#define VP_MIRROR_X    32
+// #define VP_MIRROR_X 32 // depricated in 2.5x use (me->editflag & ME_EDIT_MIRROR_X)
 #define VP_HARD                64
 #define VP_ONLYVGROUP  128
 
@@ -653,6 +669,8 @@ typedef struct ToolSettings {
        /* Transform */
        short snap_mode, snap_flag, snap_target;
        short proportional, prop_mode;
+
+       int auto_normalize, intpad; /*auto normalizing mode in wpaint*/
 } ToolSettings;
 
 typedef struct bStats {
@@ -668,6 +686,11 @@ typedef struct UnitSettings {
        short flag; /* imperial, metric etc */
 } UnitSettings;
 
+typedef struct PhysicsSettings {
+       float gravity[3];
+       int flag;
+} PhysicsSettings;
+
 typedef struct Scene {
        ID id;
        struct AnimData *adt;   /* animation data (must be immediately after id for utilities to use it) */ 
@@ -702,7 +725,7 @@ typedef struct Scene {
        /* migrate or replace? depends on some internal things... */
        /* no, is on the right place (ton) */
        struct RenderData r;
-       struct AudioData audio;         /* DEPRECATED 2.5 */
+       struct AudioData audio;
        
        ListBase markers;
        ListBase transform_spaces;
@@ -732,6 +755,9 @@ typedef struct Scene {
        
        /* Grease Pencil */
        struct bGPdata *gpd;
+
+       /* Physics simulation settings */
+       struct PhysicsSettings physics_settings;
 } Scene;
 
 
@@ -804,7 +830,10 @@ typedef struct Scene {
 #define R_RAYSTRUCTURE_VBVH                            3
 #define R_RAYSTRUCTURE_SIMD_SVBVH              4       /* needs SIMD */
 #define R_RAYSTRUCTURE_SIMD_QBVH               5       /* needs SIMD */
-#define R_RAYSTRUCTURE_BIH                             6
+
+/* raytrace_options */
+#define R_RAYTRACE_USE_LOCAL_COORDS            0x0001
+#define R_RAYTRACE_USE_INSTANCES               0x0002
 
 /* scemode (int now) */
 #define R_DOSEQ                                0x0001
@@ -813,7 +842,7 @@ typedef struct Scene {
 #define R_PASSEPARTOUT         0x0004
 #define R_PREVIEWBUTS          0x0008
 #define R_EXTENSION                    0x0010
-#define R_NODE_PREVIEW         0x0020
+#define R_MATNODE_PREVIEW      0x0020
 #define R_DOCOMP                       0x0040
 #define R_COMP_CROP                    0x0080
 #define R_FREE_IMAGE           0x0100
@@ -825,7 +854,8 @@ typedef struct Scene {
 #define R_STAMP_INFO           0x4000  /* deprecated */
 #define R_FULL_SAMPLE          0x8000
 #define R_COMP_RERENDER                0x10000
-#define R_RECURS_PROTECTION     0x20000
+#define R_RECURS_PROTECTION    0x20000
+#define R_TEXNODE_PREVIEW      0x40000
 
 /* r->stamp */
 #define R_STAMP_TIME   0x0001
@@ -838,7 +868,8 @@ typedef struct Scene {
 #define R_STAMP_MARKER 0x0080
 #define R_STAMP_FILENAME       0x0100
 #define R_STAMP_SEQSTRIP       0x0200
-#define R_STAMP_ALL            (R_STAMP_TIME|R_STAMP_FRAME|R_STAMP_DATE|R_STAMP_CAMERA|R_STAMP_SCENE|R_STAMP_NOTE|R_STAMP_MARKER|R_STAMP_FILENAME|R_STAMP_SEQSTRIP)
+#define R_STAMP_RENDERTIME     0x0400
+#define R_STAMP_ALL            (R_STAMP_TIME|R_STAMP_FRAME|R_STAMP_DATE|R_STAMP_CAMERA|R_STAMP_SCENE|R_STAMP_NOTE|R_STAMP_MARKER|R_STAMP_FILENAME|R_STAMP_SEQSTRIP|R_STAMP_RENDERTIME)
 
 /* alphamode */
 #define R_ADDSKY               0
@@ -925,7 +956,8 @@ typedef struct Scene {
 /* depricate this! */
 #define TESTBASE(v3d, base)    ( ((base)->flag & SELECT) && ((base)->lay & v3d->lay) && (((base)->object->restrictflag & OB_RESTRICT_VIEW)==0) )
 #define TESTBASELIB(v3d, base) ( ((base)->flag & SELECT) && ((base)->lay & v3d->lay) && ((base)->object->id.lib==0) && (((base)->object->restrictflag & OB_RESTRICT_VIEW)==0))
-#define TESTBASELIB_BGMODE(v3d, base)   ( ((base)->flag & SELECT) && ((base)->lay & (v3d ? v3d->lay : scene->lay)) && ((base)->object->id.lib==0) && (((base)->object->restrictflag & OB_RESTRICT_VIEW)==0))
+#define TESTBASELIB_BGMODE(v3d, scene, base)   ( ((base)->flag & SELECT) && ((base)->lay & (v3d ? v3d->lay : scene->lay)) && ((base)->object->id.lib==0) && (((base)->object->restrictflag & OB_RESTRICT_VIEW)==0))
+#define BASE_EDITABLE_BGMODE(v3d, scene, base)   (((base)->lay & (v3d ? v3d->lay : scene->lay)) && ((base)->object->id.lib==0) && (((base)->object->restrictflag & OB_RESTRICT_VIEW)==0))
 #define BASE_SELECTABLE(v3d, base)      ((base->lay & v3d->lay) && (base->object->restrictflag & (OB_RESTRICT_SELECT|OB_RESTRICT_VIEW))==0)
 #define FIRSTBASE              scene->base.first
 #define LASTBASE               scene->base.last
@@ -954,6 +986,7 @@ typedef struct Scene {
 #define SCE_SNAP                               1
 #define SCE_SNAP_ROTATE                        2
 #define SCE_SNAP_PEEL_OBJECT   4
+#define SCE_SNAP_PROJECT               8
 /* toolsettings->snap_target */
 #define SCE_SNAP_TARGET_CLOSEST        0
 #define SCE_SNAP_TARGET_CENTER 1
@@ -987,6 +1020,11 @@ typedef struct Scene {
 #define PROP_CONST             5
 #define PROP_RANDOM            6
 
+/* toolsettings->proportional */
+#define PROP_EDIT_OFF                  0
+#define PROP_EDIT_ON                   1
+#define PROP_EDIT_CONNECTED    2
+
 /* sce->flag */
 #define SCE_DS_SELECTED                        (1<<0)
 #define SCE_DS_COLLAPSED               (1<<1)
@@ -1008,14 +1046,17 @@ typedef struct Scene {
 #define FFMPEG_MULTIPLEX_AUDIO  1
 #define FFMPEG_AUTOSPLIT_OUTPUT 2
 
+/* Paint.flags */
+typedef enum {
+       PAINT_SHOW_BRUSH = 1
+} PaintFlags;
+
 /* Sculpt.flags */
+/* These can eventually be moved to paint flags? */
 typedef enum SculptFlags {
        SCULPT_SYMM_X = 1,
        SCULPT_SYMM_Y = 2,
        SCULPT_SYMM_Z = 4,
-       SCULPT_INPUT_SMOOTH = 8,
-       SCULPT_DRAW_FAST = 16,
-       SCULPT_DRAW_BRUSH = 32,
        SCULPT_LOCK_X = 64,
        SCULPT_LOCK_Y = 128,
        SCULPT_LOCK_Z = 256
@@ -1134,9 +1175,13 @@ typedef enum SculptFlags {
 #define        SK_RETARGET_AUTONAME                    1
 
 /* toolsettings->skgen_retarget_roll */
+#define        SK_RETARGET_ROLL_NONE                   0
 #define        SK_RETARGET_ROLL_VIEW                   1
 #define        SK_RETARGET_ROLL_JOINT                  2
 
+/* physics_settings->flag */
+#define PHYS_GLOBAL_GRAVITY            1
+
 /* UnitSettings */
 
 /* UnitSettings->system */