diff --git a/release/datafiles/icons_svg/record_on.svg b/release/datafiles/icons_svg/record_on.svg index fbd2812475b..95a19dc5e99 100644 --- a/release/datafiles/icons_svg/record_on.svg +++ b/release/datafiles/icons_svg/record_on.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/release/datafiles/userdef/userdef_default_theme.c b/release/datafiles/userdef/userdef_default_theme.c index a3da4c79482..2a3ed7ceef7 100644 --- a/release/datafiles/userdef/userdef_default_theme.c +++ b/release/datafiles/userdef/userdef_default_theme.c @@ -244,6 +244,7 @@ const bTheme U_theme_default = { .icon_modifier = RGBA(0x74a2ffff), .icon_shading = RGBA(0xcc6670ff), .icon_folder = RGBA(0xccad63ff), + .icon_autokey = RGBA(0xab3c48ff), .panel_roundness = 0.4f, }, .space_properties = { diff --git a/scripts/startup/bl_ui/space_userpref.py b/scripts/startup/bl_ui/space_userpref.py index 96c44b61f6b..26022bccb79 100644 --- a/scripts/startup/bl_ui/space_userpref.py +++ b/scripts/startup/bl_ui/space_userpref.py @@ -1203,6 +1203,7 @@ class USERPREF_PT_theme_interface_icons(ThemePanel, CenterAlignMixIn, Panel): flow.prop(ui, "icon_modifier") flow.prop(ui, "icon_shading") flow.prop(ui, "icon_folder") + flow.prop(ui, "icon_autokey") flow.prop(ui, "icon_border_intensity") diff --git a/source/blender/blenkernel/BKE_blender_version.h b/source/blender/blenkernel/BKE_blender_version.h index dd36a60494c..8f2a98c7120 100644 --- a/source/blender/blenkernel/BKE_blender_version.h +++ b/source/blender/blenkernel/BKE_blender_version.h @@ -31,7 +31,7 @@ extern "C" { /* Blender file format version. */ #define BLENDER_FILE_VERSION BLENDER_VERSION -#define BLENDER_FILE_SUBVERSION 17 +#define BLENDER_FILE_SUBVERSION 18 /* Minimum Blender version that supports reading file written with the current * version. Older Blender versions will test this and cancel loading the file, showing a warning to diff --git a/source/blender/blenloader/intern/versioning_userdef.cc b/source/blender/blenloader/intern/versioning_userdef.cc index bc4e91205b7..be57049f83f 100644 --- a/source/blender/blenloader/intern/versioning_userdef.cc +++ b/source/blender/blenloader/intern/versioning_userdef.cc @@ -190,6 +190,10 @@ static void do_versions_theme(const UserDef *userdef, bTheme *btheme) FROM_DEFAULT_V4_UCHAR(space_sequencer.after_current_frame); } + if (!USER_VERSION_ATLEAST(403, 18)) { + FROM_DEFAULT_V4_UCHAR(tui.icon_autokey); + } + /** * Always bump subversion in BKE_blender_version.h when adding versioning * code here, and wrap it inside a USER_VERSION_ATLEAST check. diff --git a/source/blender/editors/include/UI_icons.hh b/source/blender/editors/include/UI_icons.hh index 7f51ab9315d..3e9bbfdff6c 100644 --- a/source/blender/editors/include/UI_icons.hh +++ b/source/blender/editors/include/UI_icons.hh @@ -137,7 +137,7 @@ DEF_ICON_SCENE(TOOL_SETTINGS) DEF_ICON_MODIFIER(SHADERFX) DEF_ICON_MODIFIER(MODIFIER) DEF_ICON(RECORD_OFF) -DEF_ICON(RECORD_ON) +DEF_ICON_COLOR(RECORD_ON) DEF_ICON(BLANK1) /* Not actually blank - this is used all over the place */ DEF_ICON(FAKE_USER_OFF) DEF_ICON(FAKE_USER_ON) diff --git a/source/blender/editors/include/UI_resources.hh b/source/blender/editors/include/UI_resources.hh index 9a76da80b08..21e580ae471 100644 --- a/source/blender/editors/include/UI_resources.hh +++ b/source/blender/editors/include/UI_resources.hh @@ -297,6 +297,7 @@ enum ThemeColorID { TH_ICON_MODIFIER, TH_ICON_SHADING, TH_ICON_FOLDER, + TH_ICON_AUTOKEY, TH_ICON_FUND, TH_SCROLL_TEXT, diff --git a/source/blender/editors/interface/interface_icons.cc b/source/blender/editors/interface/interface_icons.cc index 349b99b320a..860e04dba60 100644 --- a/source/blender/editors/interface/interface_icons.cc +++ b/source/blender/editors/interface/interface_icons.cc @@ -1344,6 +1344,7 @@ static void svg_replace_color_attributes(std::string &svg, {"blender.shading", nullptr, TH_ICON_SHADING}, {"blender.folder", nullptr, TH_ICON_FOLDER}, {"blender.fund", nullptr, TH_ICON_FUND}, + {"blender.autokey", nullptr, TH_ICON_AUTOKEY}, {"blender.tool_add", tool_add}, {"blender.tool_remove", tool_remove}, {"blender.tool_select", tool_select}, diff --git a/source/blender/editors/interface/resources.cc b/source/blender/editors/interface/resources.cc index 73e7226dd34..fa43149e588 100644 --- a/source/blender/editors/interface/resources.cc +++ b/source/blender/editors/interface/resources.cc @@ -1013,6 +1013,9 @@ const uchar *UI_ThemeGetColorPtr(bTheme *btheme, int spacetype, int colorid) case TH_ICON_FOLDER: cp = btheme->tui.icon_folder; break; + case TH_ICON_AUTOKEY: + cp = btheme->tui.icon_autokey; + break; case TH_ICON_FUND: { /* Development fund icon color is not part of theme. */ static const uchar red[4] = {204, 48, 72, 255}; diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h index cf52a8c5f44..280582b6aba 100644 --- a/source/blender/makesdna/DNA_userdef_types.h +++ b/source/blender/makesdna/DNA_userdef_types.h @@ -202,6 +202,9 @@ typedef struct ThemeUI { unsigned char icon_shading[4]; /** File folders. */ unsigned char icon_folder[4]; + /** Auto Keying indicator. */ + unsigned char icon_autokey[4]; + char _pad3[4]; /** Intensity of the border icons. >0 will render an border around themed * icons. */ float icon_border_intensity; diff --git a/source/blender/makesrna/intern/rna_userdef.cc b/source/blender/makesrna/intern/rna_userdef.cc index 9dd88854710..e8bda53254d 100644 --- a/source/blender/makesrna/intern/rna_userdef.cc +++ b/source/blender/makesrna/intern/rna_userdef.cc @@ -2021,6 +2021,13 @@ static void rna_def_userdef_theme_ui(BlenderRNA *brna) RNA_def_property_ui_text(prop, "File Folders", "Color of folders in the file browser"); RNA_def_property_update(prop, 0, "rna_userdef_theme_update"); + prop = RNA_def_property(srna, "icon_autokey", PROP_FLOAT, PROP_COLOR_GAMMA); + RNA_def_property_float_sdna(prop, nullptr, "icon_autokey"); + RNA_def_property_array(prop, 4); + RNA_def_property_ui_text( + prop, "Auto Keying Indicator", "Color of Auto Keying indicator when enabled"); + RNA_def_property_update(prop, 0, "rna_userdef_gpu_update"); + prop = RNA_def_property(srna, "icon_border_intensity", PROP_FLOAT, PROP_FACTOR); RNA_def_property_float_sdna(prop, nullptr, "icon_border_intensity"); RNA_def_property_ui_text(