Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r--source/blender/makesdna/DNA_ID.h9
-rw-r--r--source/blender/makesdna/DNA_brush_types.h15
-rw-r--r--source/blender/makesdna/DNA_collection_types.h12
-rw-r--r--source/blender/makesdna/DNA_constraint_types.h2
-rw-r--r--source/blender/makesdna/DNA_customdata_types.h8
-rw-r--r--source/blender/makesdna/DNA_gpencil_modifier_types.h17
-rw-r--r--source/blender/makesdna/DNA_gpencil_types.h13
-rw-r--r--source/blender/makesdna/DNA_lightprobe_types.h2
-rw-r--r--source/blender/makesdna/DNA_material_types.h2
-rw-r--r--source/blender/makesdna/DNA_node_types.h12
-rw-r--r--source/blender/makesdna/DNA_object_types.h2
-rw-r--r--source/blender/makesdna/DNA_scene_types.h6
-rw-r--r--source/blender/makesdna/DNA_space_types.h10
-rw-r--r--source/blender/makesdna/DNA_userdef_types.h318
-rw-r--r--source/blender/makesdna/DNA_view3d_types.h2
-rw-r--r--source/blender/makesdna/DNA_windowmanager_types.h2
-rw-r--r--source/blender/makesdna/intern/dna_genfile.c2
17 files changed, 241 insertions, 193 deletions
diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h
index cad1af8eb50..ef9069acb78 100644
--- a/source/blender/makesdna/DNA_ID.h
+++ b/source/blender/makesdna/DNA_ID.h
@@ -616,6 +616,15 @@ typedef enum IDRecalcFlag {
ID_RECALC_PARAMETERS = (1 << 21),
+ /* Makes it so everything what depends on time.
+ * Basically, the same what changing frame in a timeline will do. */
+ ID_RECALC_TIME = (1 << 22),
+
+ /* Input has changed and datablock is to be reload from disk.
+ * Applies to movie clips to inform that copy-on-written version is to be refreshed for the new
+ * input file or for color space changes. */
+ ID_RECALC_SOURCE = (1 << 23),
+
/***************************************************************************
* Pseudonyms, to have more semantic meaning in the actual code without
* using too much low-level and implementation specific tags. */
diff --git a/source/blender/makesdna/DNA_brush_types.h b/source/blender/makesdna/DNA_brush_types.h
index 6f775e48d58..93ce3d9769b 100644
--- a/source/blender/makesdna/DNA_brush_types.h
+++ b/source/blender/makesdna/DNA_brush_types.h
@@ -186,6 +186,18 @@ typedef enum eGP_BrushIcons {
GP_BRUSH_ICON_ERASE_STROKE = 10,
} eGP_BrushIcons;
+typedef enum eBrushCurvePreset {
+ BRUSH_CURVE_CUSTOM = 0,
+ BRUSH_CURVE_SMOOTH = 1,
+ BRUSH_CURVE_SPHERE = 2,
+ BRUSH_CURVE_ROOT = 3,
+ BRUSH_CURVE_SHARP = 4,
+ BRUSH_CURVE_LIN = 5,
+ BRUSH_CURVE_POW4 = 6,
+ BRUSH_CURVE_INVSQUARE = 7,
+ BRUSH_CURVE_CONSTANT = 8,
+} eBrushCurvePreset;
+
typedef struct Brush {
ID id;
@@ -289,6 +301,9 @@ typedef struct Brush {
float texture_sample_bias;
+ int curve_preset;
+ char _pad1[4];
+
/* overlay */
int texture_overlay_alpha;
int mask_overlay_alpha;
diff --git a/source/blender/makesdna/DNA_collection_types.h b/source/blender/makesdna/DNA_collection_types.h
index c7f3ef4156d..af543864536 100644
--- a/source/blender/makesdna/DNA_collection_types.h
+++ b/source/blender/makesdna/DNA_collection_types.h
@@ -57,7 +57,9 @@ typedef struct Collection {
float instance_offset[3];
short flag;
- char _pad[6];
+ /* Runtime-only, always cleared on file load. */
+ short tag;
+ char _pad[4];
/* Runtime. Cache of objects in this collection and all its
* children. This is created on demand when e.g. some physics
@@ -84,4 +86,12 @@ enum {
COLLECTION_IS_MASTER = (1 << 5), /* Is master collection embedded in the scene. */
};
+/* Collection->tag */
+enum {
+ /* That code (BKE_main_collections_parent_relations_rebuild and the like)
+ * is called from very low-level places, like e.g ID remapping...
+ * Using a generic tag like LIB_TAG_DOIT for this is just impossible, we need our very own. */
+ COLLECTION_TAG_RELATION_REBUILD = (1 << 0),
+};
+
#endif /* __DNA_COLLECTION_TYPES_H__ */
diff --git a/source/blender/makesdna/DNA_constraint_types.h b/source/blender/makesdna/DNA_constraint_types.h
index b613c661f29..eda52fdf14a 100644
--- a/source/blender/makesdna/DNA_constraint_types.h
+++ b/source/blender/makesdna/DNA_constraint_types.h
@@ -149,7 +149,7 @@ typedef struct bPythonConstraint {
*/
struct Object *tar;
/**
- * Subtarger from previous implementation
+ * Subtarget from previous implementation
* (version-patch sets this to "" on file-load), MAX_ID_NAME-2.
*/
char subtarget[64];
diff --git a/source/blender/makesdna/DNA_customdata_types.h b/source/blender/makesdna/DNA_customdata_types.h
index 75a417150c8..14a078d8386 100644
--- a/source/blender/makesdna/DNA_customdata_types.h
+++ b/source/blender/makesdna/DNA_customdata_types.h
@@ -42,13 +42,13 @@ typedef struct CustomDataLayer {
int flag;
/** Number of the active layer of this type. */
int active;
- /** Number of the layer to rende.r*/
+ /** Number of the layer to render. */
int active_rnd;
- /** Number of the layer to rende.r*/
+ /** Number of the layer to render. */
int active_clone;
- /** Number of the layer to rende.r*/
+ /** Number of the layer to render. */
int active_mask;
- /** Shape keyblock unique id referenc.e*/
+ /** Shape keyblock unique id reference. */
int uid;
/** Layer name, MAX_CUSTOMDATA_LAYER_NAME. */
char name[64];
diff --git a/source/blender/makesdna/DNA_gpencil_modifier_types.h b/source/blender/makesdna/DNA_gpencil_modifier_types.h
index 8b756ff2937..82628065014 100644
--- a/source/blender/makesdna/DNA_gpencil_modifier_types.h
+++ b/source/blender/makesdna/DNA_gpencil_modifier_types.h
@@ -90,16 +90,10 @@ typedef struct NoiseGpencilModifierData {
float factor;
/** How many frames before recalculate randoms. */
int step;
- /** Last gp frame used. */
- int gp_frame;
- /** Last scene frame used. */
- int scene_frame;
- /** Random values. */
- float vrand1, vrand2;
- struct RNG *rng;
/** Custom index for passes. */
int layer_pass;
- char _pad[4];
+ /** Random seed */
+ int seed;
} NoiseGpencilModifierData;
typedef enum eNoiseGpencil_Flag {
@@ -508,7 +502,8 @@ typedef struct SimplifyGpencilModifierData {
short step;
/** Custom index for passes. */
int layer_pass;
- char _pad[4];
+ /* Sample length */
+ float length;
} SimplifyGpencilModifierData;
typedef enum eSimplifyGpencil_Flag {
@@ -522,6 +517,10 @@ typedef enum eSimplifyGpencil_Mode {
GP_SIMPLIFY_FIXED = 0,
/* Use RDP algorithm */
GP_SIMPLIFY_ADAPTIVE = 1,
+ /* Sample the stroke using a fixed length */
+ GP_SIMPLIFY_SAMPLE = 2,
+ /* Sample the stroke doing vertex merge */
+ GP_SIMPLIFY_MERGE = 3,
} eSimplifyGpencil_Mode;
typedef struct OffsetGpencilModifierData {
diff --git a/source/blender/makesdna/DNA_gpencil_types.h b/source/blender/makesdna/DNA_gpencil_types.h
index 307a6f2fe16..bf72ce5e598 100644
--- a/source/blender/makesdna/DNA_gpencil_types.h
+++ b/source/blender/makesdna/DNA_gpencil_types.h
@@ -148,8 +148,7 @@ typedef struct bGPDpalette {
/* bGPDpalette->flag */
typedef enum eGPDpalette_Flag {
/* palette is active */
- A,
- PL_PALETTE_ACTIVE = (1 << 0)
+ PL_PALETTE_ACTIVE = (1 << 0),
} eGPDpalette_Flag;
/* ***************************************** */
@@ -412,7 +411,7 @@ typedef enum eGPLayerBlendModes {
typedef struct bGPdata_Runtime {
/** Last region where drawing was originated. */
struct ARegion *ar;
- /** Stroke buffer (can hold GP_STROKE_BUFFER_MAX). */
+ /** Stroke buffer. */
void *sbuffer;
/* GP Object drawing */
@@ -431,11 +430,13 @@ typedef struct bGPdata_Runtime {
* - buffer must be initialized before use, but freed after
* whole paint operation is over
*/
- /** Number of elements currently in cache. */
- short sbuffer_size;
+ /** Number of elements currently used in cache. */
+ short sbuffer_used;
/** Flags for stroke that cache represents. */
short sbuffer_sflag;
- char _pad[6];
+ /** Number of total elements available in cache. */
+ short sbuffer_size;
+ char _pad[4];
/** Number of control-points for stroke. */
int tot_cp_points;
diff --git a/source/blender/makesdna/DNA_lightprobe_types.h b/source/blender/makesdna/DNA_lightprobe_types.h
index 5cae3c0b1e9..6ffdd60a094 100644
--- a/source/blender/makesdna/DNA_lightprobe_types.h
+++ b/source/blender/makesdna/DNA_lightprobe_types.h
@@ -142,7 +142,7 @@ typedef struct LightGridCache {
float visibility_bias, visibility_bleed, visibility_range, _pad5;
} LightGridCache;
-/* Theses are used as ubo data. They need to be aligned to size of vec4. */
+/* These are used as ubo data. They need to be aligned to size of vec4. */
BLI_STATIC_ASSERT_ALIGN(LightProbeCache, 16)
BLI_STATIC_ASSERT_ALIGN(LightGridCache, 16)
diff --git a/source/blender/makesdna/DNA_material_types.h b/source/blender/makesdna/DNA_material_types.h
index 42308f54d7a..152ecb85991 100644
--- a/source/blender/makesdna/DNA_material_types.h
+++ b/source/blender/makesdna/DNA_material_types.h
@@ -128,6 +128,8 @@ typedef enum eMaterialGPencilStyle_Flag {
GP_STYLE_FILL_SHOW = (1 << 9),
/* mix stroke texture */
GP_STYLE_STROKE_TEX_MIX = (1 << 11),
+ /* disable stencil clipping (overlap) */
+ GP_STYLE_DISABLE_STENCIL = (1 << 12),
} eMaterialGPencilStyle_Flag;
typedef enum eMaterialGPencilStyle_Mode {
diff --git a/source/blender/makesdna/DNA_node_types.h b/source/blender/makesdna/DNA_node_types.h
index 672dbaebae1..75c0721f72a 100644
--- a/source/blender/makesdna/DNA_node_types.h
+++ b/source/blender/makesdna/DNA_node_types.h
@@ -387,12 +387,12 @@ typedef struct bNodeLink {
#define NTREE_QUALITY_LOW 2
/* tree->chunksize */
-#define NTREE_CHUNCKSIZE_32 32
-#define NTREE_CHUNCKSIZE_64 64
-#define NTREE_CHUNCKSIZE_128 128
-#define NTREE_CHUNCKSIZE_256 256
-#define NTREE_CHUNCKSIZE_512 512
-#define NTREE_CHUNCKSIZE_1024 1024
+#define NTREE_CHUNKSIZE_32 32
+#define NTREE_CHUNKSIZE_64 64
+#define NTREE_CHUNKSIZE_128 128
+#define NTREE_CHUNKSIZE_256 256
+#define NTREE_CHUNKSIZE_512 512
+#define NTREE_CHUNKSIZE_1024 1024
/* the basis for a Node tree, all links and nodes reside internal here */
/* only re-usable node trees are in the library though,
diff --git a/source/blender/makesdna/DNA_object_types.h b/source/blender/makesdna/DNA_object_types.h
index 13b7a0a7600..d9487f4338f 100644
--- a/source/blender/makesdna/DNA_object_types.h
+++ b/source/blender/makesdna/DNA_object_types.h
@@ -177,7 +177,7 @@ typedef struct Object_Runtime {
/** Runtime grease pencil drawing data */
struct GpencilBatchCache *gpencil_cache;
- void *_pad2; /* Padding is here for win32s unconventional stuct alignment rules. */
+ void *_pad2; /* Padding is here for win32s unconventional struct alignment rules. */
} Object_Runtime;
typedef struct Object {
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h
index 0973405ce7b..f50b345e402 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -1116,7 +1116,7 @@ typedef struct GP_Sculpt_Settings {
char _pad[4];
/** Multiframe edit falloff effect by frame. */
struct CurveMapping *cur_falloff;
- /** Curve used for primitve tools. */
+ /** Curve used for primitive tools. */
struct CurveMapping *cur_primitive;
/** Guides used for paint tools */
struct GP_Sculpt_Guide guide;
@@ -1138,7 +1138,7 @@ typedef enum eGP_Sculpt_SettingsFlag {
GP_SCULPT_SETT_FLAG_FRAME_FALLOFF = (1 << 5),
/* apply brush to uv data */
GP_SCULPT_SETT_FLAG_APPLY_UV = (1 << 6),
- /* apply primitve curve */
+ /* apply primitive curve */
GP_SCULPT_SETT_FLAG_PRIMITIVE_CURVE = (1 << 7),
} eGP_Sculpt_SettingsFlag;
@@ -2170,7 +2170,7 @@ typedef enum eSculptFlags {
SCULPT_USE_OPENMP = (1 << 7),
SCULPT_ONLY_DEFORM = (1 << 8),
- SCULPT_SHOW_DIFFUSE = (1 << 9),
+ // SCULPT_SHOW_DIFFUSE = (1 << 9), // deprecated
/* If set, the mesh will be drawn with smooth-shading in
* dynamic-topology mode */
diff --git a/source/blender/makesdna/DNA_space_types.h b/source/blender/makesdna/DNA_space_types.h
index ed9ea61d255..1b1b8fe2cce 100644
--- a/source/blender/makesdna/DNA_space_types.h
+++ b/source/blender/makesdna/DNA_space_types.h
@@ -1636,16 +1636,20 @@ typedef enum eSpace_Type {
SPACE_SEQ = 8,
SPACE_TEXT = 9,
#ifdef DNA_DEPRECATED
- SPACE_IMASEL = 10, /* deprecated */
+ SPACE_IMASEL = 10, /* Deprecated */
SPACE_SOUND = 11, /* Deprecated */
#endif
SPACE_ACTION = 12,
SPACE_NLA = 13,
/* TODO: fully deprecate */
SPACE_SCRIPT = 14, /* Deprecated */
- SPACE_TIME = 15, /* Deprecated */
+#ifdef DNA_DEPRECATED
+ SPACE_TIME = 15, /* Deprecated */
+#endif
SPACE_NODE = 16,
- SPACE_LOGIC = 17, /* deprecated */
+#ifdef DNA_DEPRECATED
+ SPACE_LOGIC = 17, /* Deprecated */
+#endif
SPACE_CONSOLE = 18,
SPACE_USERPREF = 19,
SPACE_CLIP = 20,
diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h
index 894dbc05c54..b8914c7a74f 100644
--- a/source/blender/makesdna/DNA_userdef_types.h
+++ b/source/blender/makesdna/DNA_userdef_types.h
@@ -116,37 +116,37 @@ typedef struct uiStyle {
} uiStyle;
typedef struct uiWidgetColors {
- char outline[4];
- char inner[4];
- char inner_sel[4];
- char item[4];
- char text[4];
- char text_sel[4];
- char shaded;
+ unsigned char outline[4];
+ unsigned char inner[4];
+ unsigned char inner_sel[4];
+ unsigned char item[4];
+ unsigned char text[4];
+ unsigned char text_sel[4];
+ unsigned char shaded;
char _pad0[7];
short shadetop, shadedown;
float roundness;
} uiWidgetColors;
typedef struct uiWidgetStateColors {
- char inner_anim[4];
- char inner_anim_sel[4];
- char inner_key[4];
- char inner_key_sel[4];
- char inner_driven[4];
- char inner_driven_sel[4];
- char inner_overridden[4];
- char inner_overridden_sel[4];
- char inner_changed[4];
- char inner_changed_sel[4];
+ unsigned char inner_anim[4];
+ unsigned char inner_anim_sel[4];
+ unsigned char inner_key[4];
+ unsigned char inner_key_sel[4];
+ unsigned char inner_driven[4];
+ unsigned char inner_driven_sel[4];
+ unsigned char inner_overridden[4];
+ unsigned char inner_overridden_sel[4];
+ unsigned char inner_changed[4];
+ unsigned char inner_changed_sel[4];
float blend;
char _pad0[4];
} uiWidgetStateColors;
typedef struct uiPanelColors {
- char header[4];
- char back[4];
- char sub_back[4];
+ unsigned char header[4];
+ unsigned char back[4];
+ unsigned char sub_back[4];
char _pad0[4];
} uiPanelColors;
@@ -160,13 +160,13 @@ typedef struct ThemeUI {
uiWidgetStateColors wcol_state;
- char widget_emboss[4];
+ unsigned char widget_emboss[4];
/* fac: 0 - 1 for blend factor, width in pixels */
float menu_shadow_fac;
short menu_shadow_width;
- char editor_outline[4];
+ unsigned char editor_outline[4];
char _pad0[2];
float icon_alpha;
@@ -174,28 +174,28 @@ typedef struct ThemeUI {
char _pad[4];
/* Axis Colors */
- char xaxis[4], yaxis[4], zaxis[4];
+ unsigned char xaxis[4], yaxis[4], zaxis[4];
/* Gizmo Colors. */
- char gizmo_hi[4];
- char gizmo_primary[4];
- char gizmo_secondary[4];
- char gizmo_a[4];
- char gizmo_b[4];
+ unsigned char gizmo_hi[4];
+ unsigned char gizmo_primary[4];
+ unsigned char gizmo_secondary[4];
+ unsigned char gizmo_a[4];
+ unsigned char gizmo_b[4];
/* Icon Colors. */
/** Scene items. */
- char icon_scene[4];
+ unsigned char icon_scene[4];
/** Collection items. */
- char icon_collection[4];
+ unsigned char icon_collection[4];
/** Object items. */
- char icon_object[4];
+ unsigned char icon_object[4];
/** Object data items. */
- char icon_object_data[4];
+ unsigned char icon_object_data[4];
/** Modifier and constraint items. */
- char icon_modifier[4];
+ unsigned char icon_modifier[4];
/** Shading related items. */
- char icon_shading[4];
+ unsigned char icon_shading[4];
/** Intensity of the border icons. >0 will render an border around themed
* icons. */
float icon_border_intensity;
@@ -206,216 +206,218 @@ typedef struct ThemeUI {
*/
typedef struct ThemeSpace {
/* main window colors */
- char back[4];
- char back_grad[4];
+ unsigned char back[4];
+ unsigned char back_grad[4];
char show_back_grad;
char _pad0[3];
/** Panel title. */
- char title[4];
- char text[4];
- char text_hi[4];
+ unsigned char title[4];
+ unsigned char text[4];
+ unsigned char text_hi[4];
/* header colors */
/** Region background. */
- char header[4];
+ unsigned char header[4];
/** Unused. */
- char header_title[4];
- char header_text[4];
- char header_text_hi[4];
+ unsigned char header_title[4];
+ unsigned char header_text[4];
+ unsigned char header_text_hi[4];
/* region tabs */
- char tab_active[4];
- char tab_inactive[4];
- char tab_back[4];
- char tab_outline[4];
+ unsigned char tab_active[4];
+ unsigned char tab_inactive[4];
+ unsigned char tab_back[4];
+ unsigned char tab_outline[4];
/* button/tool regions */
/** Region background. */
- char button[4];
+ unsigned char button[4];
/** Panel title. */
- char button_title[4];
- char button_text[4];
- char button_text_hi[4];
+ unsigned char button_title[4];
+ unsigned char button_text[4];
+ unsigned char button_text_hi[4];
/* listview regions */
/** Region background. */
- char list[4];
+ unsigned char list[4];
/** Panel title. */
- char list_title[4];
- char list_text[4];
- char list_text_hi[4];
+ unsigned char list_title[4];
+ unsigned char list_text[4];
+ unsigned char list_text_hi[4];
/* navigation bar regions */
/** Region background. */
- char navigation_bar[4];
+ unsigned char navigation_bar[4];
/** Region background. */
- char execution_buts[4];
+ unsigned char execution_buts[4];
/* note, cannot use name 'panel' because of DNA mapping old files */
uiPanelColors panelcolors;
- char shade1[4];
- char shade2[4];
+ unsigned char shade1[4];
+ unsigned char shade2[4];
- char hilite[4];
- char grid[4];
+ unsigned char hilite[4];
+ unsigned char grid[4];
- char view_overlay[4];
+ unsigned char view_overlay[4];
- char wire[4], wire_edit[4], select[4];
- char lamp[4], speaker[4], empty[4], camera[4];
- char active[4], group[4], group_active[4], transform[4];
- char vertex[4], vertex_select[4], vertex_bevel[4], vertex_unreferenced[4];
- char edge[4], edge_select[4];
- char edge_seam[4], edge_sharp[4], edge_facesel[4], edge_crease[4], edge_bevel[4];
+ unsigned char wire[4], wire_edit[4], select[4];
+ unsigned char lamp[4], speaker[4], empty[4], camera[4];
+ unsigned char active[4], group[4], group_active[4], transform[4];
+ unsigned char vertex[4], vertex_select[4], vertex_bevel[4], vertex_unreferenced[4];
+ unsigned char edge[4], edge_select[4];
+ unsigned char edge_seam[4], edge_sharp[4], edge_facesel[4], edge_crease[4], edge_bevel[4];
/** Solid faces. */
- char face[4], face_select[4];
+ unsigned char face[4], face_select[4];
/** selected color. */
- char face_dot[4];
- char extra_edge_len[4], extra_edge_angle[4], extra_face_angle[4], extra_face_area[4];
- char normal[4];
- char vertex_normal[4];
- char loop_normal[4];
- char bone_solid[4], bone_pose[4], bone_pose_active[4];
- char strip[4], strip_select[4];
- char cframe[4];
- char time_keyframe[4], time_gp_keyframe[4];
- char freestyle_edge_mark[4], freestyle_face_mark[4];
- char time_scrub_background[4];
+ unsigned char face_dot[4];
+ unsigned char extra_edge_len[4], extra_edge_angle[4], extra_face_angle[4], extra_face_area[4];
+ unsigned char normal[4];
+ unsigned char vertex_normal[4];
+ unsigned char loop_normal[4];
+ unsigned char bone_solid[4], bone_pose[4], bone_pose_active[4];
+ unsigned char strip[4], strip_select[4];
+ unsigned char cframe[4];
+ unsigned char time_keyframe[4], time_gp_keyframe[4];
+ unsigned char freestyle_edge_mark[4], freestyle_face_mark[4];
+ unsigned char time_scrub_background[4];
char _pad5[4];
- char nurb_uline[4], nurb_vline[4];
- char act_spline[4], nurb_sel_uline[4], nurb_sel_vline[4], lastsel_point[4];
+ unsigned char nurb_uline[4], nurb_vline[4];
+ unsigned char act_spline[4], nurb_sel_uline[4], nurb_sel_vline[4], lastsel_point[4];
- char handle_free[4], handle_auto[4], handle_vect[4], handle_align[4], handle_auto_clamped[4];
- char handle_sel_free[4], handle_sel_auto[4], handle_sel_vect[4], handle_sel_align[4],
+ unsigned char handle_free[4], handle_auto[4], handle_vect[4], handle_align[4],
+ handle_auto_clamped[4];
+ unsigned char handle_sel_free[4], handle_sel_auto[4], handle_sel_vect[4], handle_sel_align[4],
handle_sel_auto_clamped[4];
/** Dopesheet. */
- char ds_channel[4], ds_subchannel[4], ds_ipoline[4];
+ unsigned char ds_channel[4], ds_subchannel[4], ds_ipoline[4];
/** Keytypes. */
- char keytype_keyframe[4], keytype_extreme[4], keytype_breakdown[4], keytype_jitter[4],
+ unsigned char keytype_keyframe[4], keytype_extreme[4], keytype_breakdown[4], keytype_jitter[4],
keytype_movehold[4];
/** Keytypes. */
- char keytype_keyframe_select[4], keytype_extreme_select[4], keytype_breakdown_select[4],
+ unsigned char keytype_keyframe_select[4], keytype_extreme_select[4], keytype_breakdown_select[4],
keytype_jitter_select[4], keytype_movehold_select[4];
- char keyborder[4], keyborder_select[4];
+ unsigned char keyborder[4], keyborder_select[4];
char _pad4[3];
- char console_output[4], console_input[4], console_info[4], console_error[4];
- char console_cursor[4], console_select[4];
+ unsigned char console_output[4], console_input[4], console_info[4], console_error[4];
+ unsigned char console_cursor[4], console_select[4];
- char vertex_size, outline_width, obcenter_dia, facedot_size;
- char noodle_curving;
+ unsigned char vertex_size, outline_width, obcenter_dia, facedot_size;
+ unsigned char noodle_curving;
/* syntax for textwindow and nodes */
- char syntaxl[4], syntaxs[4]; // in nodespace used for backdrop matte
- char syntaxb[4], syntaxn[4]; // in nodespace used for color input
- char syntaxv[4], syntaxc[4]; // in nodespace used for converter group
- char syntaxd[4], syntaxr[4]; // in nodespace used for distort
+ unsigned char syntaxl[4], syntaxs[4]; // in nodespace used for backdrop matte
+ unsigned char syntaxb[4], syntaxn[4]; // in nodespace used for color input
+ unsigned char syntaxv[4], syntaxc[4]; // in nodespace used for converter group
+ unsigned char syntaxd[4], syntaxr[4]; // in nodespace used for distort
- char nodeclass_output[4], nodeclass_filter[4];
- char nodeclass_vector[4], nodeclass_texture[4];
- char nodeclass_shader[4], nodeclass_script[4];
- char nodeclass_pattern[4], nodeclass_layout[4];
+ unsigned char nodeclass_output[4], nodeclass_filter[4];
+ unsigned char nodeclass_vector[4], nodeclass_texture[4];
+ unsigned char nodeclass_shader[4], nodeclass_script[4];
+ unsigned char nodeclass_pattern[4], nodeclass_layout[4];
/** For sequence editor. */
- char movie[4], movieclip[4], mask[4], image[4], scene[4], audio[4];
- char effect[4], transition[4], meta[4], text_strip[4];
+ unsigned char movie[4], movieclip[4], mask[4], image[4], scene[4], audio[4];
+ unsigned char effect[4], transition[4], meta[4], text_strip[4];
/** For dopesheet - scale factor for size of keyframes (i.e. height of channels). */
float keyframe_scale_fac;
- char editmesh_active[4];
+ unsigned char editmesh_active[4];
- char handle_vertex[4];
- char handle_vertex_select[4];
+ unsigned char handle_vertex[4];
+ unsigned char handle_vertex_select[4];
- char handle_vertex_size;
+ unsigned char handle_vertex_size;
- char clipping_border_3d[4];
+ unsigned char clipping_border_3d[4];
- char marker_outline[4], marker[4], act_marker[4], sel_marker[4], dis_marker[4], lock_marker[4];
- char bundle_solid[4];
- char path_before[4], path_after[4];
- char camera_path[4];
- char _pad1[2];
+ unsigned char marker_outline[4], marker[4], act_marker[4], sel_marker[4], dis_marker[4],
+ lock_marker[4];
+ unsigned char bundle_solid[4];
+ unsigned char path_before[4], path_after[4];
+ unsigned char camera_path[4];
+ unsigned char _pad1[2];
- char gp_vertex_size;
- char gp_vertex[4], gp_vertex_select[4];
+ unsigned char gp_vertex_size;
+ unsigned char gp_vertex[4], gp_vertex_select[4];
- char preview_back[4];
- char preview_stitch_face[4];
- char preview_stitch_edge[4];
- char preview_stitch_vert[4];
- char preview_stitch_stitchable[4];
- char preview_stitch_unstitchable[4];
- char preview_stitch_active[4];
+ unsigned char preview_back[4];
+ unsigned char preview_stitch_face[4];
+ unsigned char preview_stitch_edge[4];
+ unsigned char preview_stitch_vert[4];
+ unsigned char preview_stitch_stitchable[4];
+ unsigned char preview_stitch_unstitchable[4];
+ unsigned char preview_stitch_active[4];
/** Two uses, for uvs with modifier applied on mesh and uvs during painting. */
- char uv_shadow[4];
+ unsigned char uv_shadow[4];
/** Uvs of other objects. */
- char uv_others[4];
+ unsigned char uv_others[4];
/** Outliner - filter match. */
- char match[4];
+ unsigned char match[4];
/** Outliner - selected item. */
- char selected_highlight[4];
+ unsigned char selected_highlight[4];
/** Outliner - selected object. */
- char selected_object[4];
+ unsigned char selected_object[4];
/** Outliner - active object. */
- char active_object[4];
+ unsigned char active_object[4];
/** Outliner - edited object. */
- char edited_object[4];
+ unsigned char edited_object[4];
/** Outliner - row color difference. */
- char row_alternate[4];
+ unsigned char row_alternate[4];
/** Skin modifier root color. */
- char skin_root[4];
+ unsigned char skin_root[4];
/* NLA */
/** Active Action + Summary Channel. */
- char anim_active[4];
+ unsigned char anim_active[4];
/** Active Action = NULL. */
- char anim_non_active[4];
+ unsigned char anim_non_active[4];
/** Preview range overlay. */
- char anim_preview_range[4];
+ unsigned char anim_preview_range[4];
/** NLA 'Tweaking' action/strip. */
- char nla_tweaking[4];
+ unsigned char nla_tweaking[4];
/** NLA - warning color for duplicate instances of tweaking strip. */
- char nla_tweakdupli[4];
+ unsigned char nla_tweakdupli[4];
/** NLA "Transition" strips. */
- char nla_transition[4], nla_transition_sel[4];
+ unsigned char nla_transition[4], nla_transition_sel[4];
/** NLA "Meta" strips. */
- char nla_meta[4], nla_meta_sel[4];
+ unsigned char nla_meta[4], nla_meta_sel[4];
/** NLA "Sound" strips. */
- char nla_sound[4], nla_sound_sel[4];
+ unsigned char nla_sound[4], nla_sound_sel[4];
/* info */
- char info_selected[4], info_selected_text[4];
- char info_error[4], info_error_text[4];
- char info_warning[4], info_warning_text[4];
- char info_info[4], info_info_text[4];
- char info_debug[4], info_debug_text[4];
+ unsigned char info_selected[4], info_selected_text[4];
+ unsigned char info_error[4], info_error_text[4];
+ unsigned char info_warning[4], info_warning_text[4];
+ unsigned char info_info[4], info_info_text[4];
+ unsigned char info_debug[4], info_debug_text[4];
- char paint_curve_pivot[4];
- char paint_curve_handle[4];
+ unsigned char paint_curve_pivot[4];
+ unsigned char paint_curve_handle[4];
- char metadatabg[4];
- char metadatatext[4];
+ unsigned char metadatabg[4];
+ unsigned char metadatatext[4];
char _pad2[4];
} ThemeSpace;
/* set of colors for use as a custom color set for Objects/Bones wire drawing */
typedef struct ThemeWireColor {
- char solid[4];
- char select[4];
- char active[4];
+ unsigned char solid[4];
+ unsigned char select[4];
+ unsigned char active[4];
/** #eWireColor_Flags. */
short flag;
@@ -735,11 +737,16 @@ typedef struct UserDef {
short autokey_flag;
/** Options for text rendering. */
- short text_render;
- char _pad9;
-
+ char text_render;
char navigation_mode;
+ char _pad9[2];
+
+ /** Turn-table rotation amount per-pixel in radians. Scaled with DPI. */
+ float view_rotate_sensitivity_turntable;
+ /** Track-ball rotation scale. */
+ float view_rotate_sensitivity_trackball;
+
/** From texture.h. */
struct ColorBand coba_weight;
@@ -756,8 +763,9 @@ typedef struct UserDef {
char font_path_ui[1024];
char font_path_ui_mono[1024];
+ /** Legacy, for backwards compatibility only. */
int compute_device_type;
- int compute_device_id;
+ char _pad6[4];
/** Opacity of inactive F-Curves in F-Curve Editor. */
float fcu_inactive_alpha;
@@ -952,6 +960,7 @@ typedef enum eUserpref_UI_Flag2 {
USER_UIFLAG2_UNUSED_3 = (1 << 3), /* dirty */
} eUserpref_UI_Flag2;
+/** #UserDef.gpu_flag */
typedef enum eUserpref_GPU_Flag {
USER_GPU_FLAG_NO_DEPT_PICK = (1 << 0),
USER_GPU_FLAG_NO_EDIT_MODE_SMOOTH_WIRE = (1 << 1),
@@ -1060,7 +1069,6 @@ typedef enum eText_Draw_Options {
* #UserDef.gp_settings */
typedef enum eGP_UserdefSettings {
GP_PAINT_UNUSED_0 = (1 << 0),
- GP_PAINT_DOSIMPLIFY = (1 << 1),
} eGP_UserdefSettings;
enum {
diff --git a/source/blender/makesdna/DNA_view3d_types.h b/source/blender/makesdna/DNA_view3d_types.h
index e7a4f9cbd4e..3ba33cfe3d4 100644
--- a/source/blender/makesdna/DNA_view3d_types.h
+++ b/source/blender/makesdna/DNA_view3d_types.h
@@ -144,7 +144,7 @@ typedef struct View3DCursor {
/** 3D Viewport Shading settings. */
typedef struct View3DShading {
- /** Shading type (VIEW3D_SHADE_SOLID, ..). */
+ /** Shading type (OB_SOLID, ..). */
char type;
/** Runtime, for toggle between rendered viewport. */
char prev_type;
diff --git a/source/blender/makesdna/DNA_windowmanager_types.h b/source/blender/makesdna/DNA_windowmanager_types.h
index 4ccb23045df..8dcae41aaa2 100644
--- a/source/blender/makesdna/DNA_windowmanager_types.h
+++ b/source/blender/makesdna/DNA_windowmanager_types.h
@@ -174,7 +174,7 @@ typedef struct wmWindowManager {
/** Indicates whether interface is locked for user interaction. */
char is_interface_locked;
- char par[7];
+ char _pad[7];
struct wmMsgBus *message_bus;
diff --git a/source/blender/makesdna/intern/dna_genfile.c b/source/blender/makesdna/intern/dna_genfile.c
index 3cc005535b6..5252c8f3350 100644
--- a/source/blender/makesdna/intern/dna_genfile.c
+++ b/source/blender/makesdna/intern/dna_genfile.c
@@ -899,7 +899,7 @@ static void cast_elem(
* as lookup keys to identify data blocks in the saved .blend file, not
* as actual in-memory pointers.
*
- * \param curlen: Pointer length to conver to
+ * \param curlen: Pointer length to convert to
* \param oldlen: Length of pointers in olddata
* \param name_array_len: Result of #DNA_elem_array_size for this element.
* \param curdata: Where to put converted data