From 87702994063b5092b088422f09afec164f1dbfa5 Mon Sep 17 00:00:00 2001 From: Harley Acheson Date: Sat, 16 Mar 2024 17:24:34 +0100 Subject: [PATCH] UI: Option for Separate Extension Dev Tools Experimental flag for "Extensions Development Utilities" that can be enabled separately from "Extensions". Note this PR does not enable the use of this flag (coming later) as uses are in addons-contrib. This flag is requested in #119521 Pull Request: https://projects.blender.org/blender/blender/pulls/119562 --- scripts/startup/bl_ui/space_userpref.py | 1 + source/blender/makesdna/DNA_userdef_types.h | 3 ++- source/blender/makesrna/intern/rna_userdef.cc | 5 +++++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/scripts/startup/bl_ui/space_userpref.py b/scripts/startup/bl_ui/space_userpref.py index 80e61b94da2..f177e8f0101 100644 --- a/scripts/startup/bl_ui/space_userpref.py +++ b/scripts/startup/bl_ui/space_userpref.py @@ -2695,6 +2695,7 @@ class USERPREF_PT_experimental_prototypes(ExperimentalPanel, Panel): ({"property": "use_new_matrix_socket"}, ("blender/blender/issues/116067", "Matrix Socket")), ({"property": "enable_overlay_next"}, ("blender/blender/issues/102179", "#102179")), ({"property": "use_extension_repos"}, ("/blender/blender/issues/117286", "#117286")), + ({"property": "use_extension_utils"}, ("/blender/blender/issues/117286", "#117286")), ), ) diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h index 4bacd88cf43..0daa2b2585f 100644 --- a/source/blender/makesdna/DNA_userdef_types.h +++ b/source/blender/makesdna/DNA_userdef_types.h @@ -721,8 +721,9 @@ typedef struct UserDef_Experimental { char use_new_volume_nodes; char use_shader_node_previews; char use_extension_repos; + char use_extension_utils; - char _pad[3]; + char _pad[2]; /** `makesdna` does not allow empty structs. */ } UserDef_Experimental; diff --git a/source/blender/makesrna/intern/rna_userdef.cc b/source/blender/makesrna/intern/rna_userdef.cc index dd3180572a6..efaa829a904 100644 --- a/source/blender/makesrna/intern/rna_userdef.cc +++ b/source/blender/makesrna/intern/rna_userdef.cc @@ -7189,6 +7189,11 @@ static void rna_def_userdef_experimental(BlenderRNA *brna) "section of the preferences"); RNA_def_property_boolean_funcs( prop, nullptr, "rna_PreferencesExperimental_use_extension_repos_set"); + + prop = RNA_def_property(srna, "use_extension_utils", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_ui_text( + prop, "Extensions Development Utilities", "Developer support utilities for extensions"); + RNA_def_property_update(prop, 0, "rna_userdef_update"); } static void rna_def_userdef_addon_collection(BlenderRNA *brna, PropertyRNA *cprop)