UI: add Blender -> System menu
authorCampbell Barton <ideasman42@gmail.com>
Tue, 24 Mar 2020 03:04:33 +0000 (14:04 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Tue, 24 Mar 2020 03:11:31 +0000 (14:11 +1100)
Include technical operators here so they're available
when using menu-search.

release/scripts/startup/bl_ui/space_topbar.py
source/blender/windowmanager/intern/wm_operators.c

index 7ffb61fef5addf1cd2c46fa91dea43437f853cd1..40824cbeb521e3bc54d33851d4d2cdf4e798ca5b 100644 (file)
@@ -243,6 +243,10 @@ class TOPBAR_MT_app(Menu):
         layout.operator("preferences.app_template_install",
                         text="Install Application Template...")
 
+        layout.separator()
+
+        layout.menu("TOPBAR_MT_app_system")
+
 
 class TOPBAR_MT_file_cleanup(Menu):
     bl_label = "Clean Up"
@@ -442,6 +446,26 @@ class TOPBAR_MT_app_support(Menu):
         ).url = "https://store.blender.org"
 
 
+# Include technical operators here which would otherwise have no way for users to access.
+class TOPBAR_MT_app_system(Menu):
+    bl_label = "System"
+
+    def draw(self, _context):
+        layout = self.layout
+
+        layout.operator("script.reload")
+
+        layout.separator()
+
+        layout.operator("wm.memory_statistics")
+        layout.operator("wm.debug_menu")
+        layout.operator_menu_enum("wm.redraw_timer", "type")
+
+        layout.separator()
+
+        layout.operator("screen.spacedata_cleanup")
+
+
 class TOPBAR_MT_templates_more(Menu):
     bl_label = "Templates"
 
@@ -828,6 +852,7 @@ classes = (
     TOPBAR_MT_editor_menus,
     TOPBAR_MT_app,
     TOPBAR_MT_app_about,
+    TOPBAR_MT_app_system,
     TOPBAR_MT_app_support,
     TOPBAR_MT_file,
     TOPBAR_MT_file_new,
index 2ae71eb2490c4378d8c35f6fbc7f484100fe042e..853da714f76676a861a6aea00fe1e916648e8f7c 100644 (file)
@@ -1675,7 +1675,7 @@ static int wm_operator_defaults_exec(bContext *C, wmOperator *op)
 /* used by operator preset menu. pre-2.65 this was a 'Reset' button */
 static void WM_OT_operator_defaults(wmOperatorType *ot)
 {
-  ot->name = "Restore Defaults";
+  ot->name = "Restore Operator Defaults";
   ot->idname = "WM_OT_operator_defaults";
   ot->description = "Set the active operator to its default values";