From c79b913624d9a9a3bb50000d2bcd5fbc04e3bf40 Mon Sep 17 00:00:00 2001 From: Pablo Dobarro Date: Fri, 25 Sep 2020 02:47:01 +0200 Subject: [PATCH] Object: Move Switch Active Objects to experimental The operator has some problems with Undo, so better put it in experimental for now. Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D9007 --- release/scripts/startup/bl_ui/space_userpref.py | 1 + source/blender/editors/object/object_modes.c | 5 +++++ source/blender/makesdna/DNA_userdef_types.h | 3 +-- source/blender/makesrna/intern/rna_userdef.c | 5 +++++ 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/release/scripts/startup/bl_ui/space_userpref.py b/release/scripts/startup/bl_ui/space_userpref.py index 40cb03acdfc..9a8934b8e50 100644 --- a/release/scripts/startup/bl_ui/space_userpref.py +++ b/release/scripts/startup/bl_ui/space_userpref.py @@ -2183,6 +2183,7 @@ class USERPREF_PT_experimental_new_features(ExperimentalPanel, Panel): ({"property": "use_new_particle_system"}, "T73324"), ({"property": "use_sculpt_vertex_colors"}, "T71947"), ({"property": "use_tools_missing_icons"}, "T80331"), + ({"property": "use_switch_object_operator"}, "T80402"), ), ) diff --git a/source/blender/editors/object/object_modes.c b/source/blender/editors/object/object_modes.c index cde70107d29..9e44c0b29cc 100644 --- a/source/blender/editors/object/object_modes.c +++ b/source/blender/editors/object/object_modes.c @@ -408,6 +408,11 @@ bool ED_object_mode_generic_has_data(struct Depsgraph *depsgraph, struct Object static bool object_switch_object_poll(bContext *C) { + + if (!U.experimental.use_switch_object_operator) { + return false; + } + if (!CTX_wm_region_view3d(C)) { return false; } diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h index e83353e04df..1ed2fba208f 100644 --- a/source/blender/makesdna/DNA_userdef_types.h +++ b/source/blender/makesdna/DNA_userdef_types.h @@ -629,8 +629,7 @@ typedef struct UserDef_Experimental { char use_sculpt_vertex_colors; char use_image_editor_legacy_drawing; char use_tools_missing_icons; - /** `makesdna` does not allow empty structs. */ - char _pad[1]; + char use_switch_object_operator; } UserDef_Experimental; #define USER_EXPERIMENTAL_TEST(userdef, member) \ diff --git a/source/blender/makesrna/intern/rna_userdef.c b/source/blender/makesrna/intern/rna_userdef.c index 7986e129067..0e1c5af8fae 100644 --- a/source/blender/makesrna/intern/rna_userdef.c +++ b/source/blender/makesrna/intern/rna_userdef.c @@ -6158,6 +6158,11 @@ static void rna_def_userdef_experimental(BlenderRNA *brna) RNA_def_property_boolean_sdna(prop, NULL, "use_sculpt_vertex_colors", 1); RNA_def_property_ui_text(prop, "Sculpt Vertex Colors", "Use the new Vertex Painting system"); + prop = RNA_def_property(srna, "use_switch_object_operator", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "use_switch_object_operator", 1); + RNA_def_property_ui_text( + prop, "Switch Object Operator", "Enable the operator to switch objects by pressing D"); + prop = RNA_def_property(srna, "use_image_editor_legacy_drawing", PROP_BOOLEAN, PROP_NONE); RNA_def_property_boolean_sdna(prop, NULL, "use_image_editor_legacy_drawing", 1); RNA_def_property_ui_text(