From 4e1acc7955207f3c8ae41d77222eb481dc7a7575 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Wed, 28 Jun 2023 10:32:33 +0500 Subject: [PATCH] Added IFC override operators to outliner/object context menus #3345 Outliner context menu - https://i.imgur.com/TkJKbLh.png Object context menu - https://i.imgur.com/JXOEdYH.png --- src/blenderbim/blenderbim/bim/module/geometry/__init__.py | 4 ++++ src/blenderbim/blenderbim/bim/module/geometry/ui.py | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/blenderbim/blenderbim/bim/module/geometry/__init__.py b/src/blenderbim/blenderbim/bim/module/geometry/__init__.py index 8ae77d88a0..93adf2b5fb 100644 --- a/src/blenderbim/blenderbim/bim/module/geometry/__init__.py +++ b/src/blenderbim/blenderbim/bim/module/geometry/__init__.py @@ -63,6 +63,8 @@ def register(): bpy.types.Scene.BIMGeometryProperties = bpy.props.PointerProperty(type=prop.BIMGeometryProperties) bpy.types.OBJECT_PT_transform.append(ui.BIM_PT_transform) bpy.types.VIEW3D_MT_object.append(ui.object_menu) + bpy.types.OUTLINER_MT_object.append(ui.outliner_menu) + bpy.types.VIEW3D_MT_object_context_menu.append(ui.object_menu) wm = bpy.context.window_manager if wm.keyconfigs.addon: km = wm.keyconfigs.addon.keymaps.new(name="Object Mode", space_type="EMPTY") @@ -90,6 +92,8 @@ def register(): def unregister(): bpy.types.VIEW3D_MT_object.remove(ui.object_menu) bpy.types.OBJECT_PT_transform.remove(ui.BIM_PT_transform) + bpy.types.OUTLINER_MT_object.remove(ui.outliner_menu) + bpy.types.VIEW3D_MT_object_context_menu.remove(ui.outliner_menu) del bpy.types.Scene.BIMGeometryProperties del bpy.types.Object.BIMGeometryProperties wm = bpy.context.window_manager diff --git a/src/blenderbim/blenderbim/bim/module/geometry/ui.py b/src/blenderbim/blenderbim/bim/module/geometry/ui.py index f3227829e7..26d1a9ddc6 100644 --- a/src/blenderbim/blenderbim/bim/module/geometry/ui.py +++ b/src/blenderbim/blenderbim/bim/module/geometry/ui.py @@ -24,10 +24,14 @@ from blenderbim.bim.module.geometry.data import RepresentationsData, Connections def object_menu(self, context): + self.layout.separator() self.layout.operator("bim.override_object_duplicate_move", icon="PLUGIN") self.layout.operator("bim.override_object_delete", icon="PLUGIN") self.layout.operator("bim.override_paste_buffer", icon="PLUGIN") +def outliner_menu(self, context): + self.layout.separator() + self.layout.operator("bim.override_outliner_delete", icon='X') class BIM_PT_representations(Panel): bl_label = "IFC Representations"