From e5a59d0bea1167854a11159af86d5cf275dfbea1 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Thu, 12 Sep 2024 17:49:24 +0500 Subject: [PATCH] remove unnecessary ifc operators --- .../bonsai/bim/module/material/operator.py | 30 +++++++++++-------- .../bonsai/bim/module/profile/operator.py | 17 ++++++----- .../bonsai/bim/module/style/operator.py | 25 +++++++++------- src/bonsai/bonsai/bim/module/type/operator.py | 5 ++-- 4 files changed, 46 insertions(+), 31 deletions(-) diff --git a/src/bonsai/bonsai/bim/module/material/operator.py b/src/bonsai/bonsai/bim/module/material/operator.py index 2575e62c6c..1e6094e5fb 100644 --- a/src/bonsai/bonsai/bim/module/material/operator.py +++ b/src/bonsai/bonsai/bim/module/material/operator.py @@ -32,43 +32,47 @@ from bonsai.bim.module.material.prop import purge as material_prop_purge from bonsai.bim.ifc import IfcStore -class LoadMaterials(bpy.types.Operator, tool.Ifc.Operator): +class LoadMaterials(bpy.types.Operator): bl_idname = "bim.load_materials" bl_label = "Load Materials" bl_description = "Display list of named materials" bl_options = {"REGISTER", "UNDO"} - def _execute(self, context): + def execute(self, context): core.load_materials(tool.Material, context.scene.BIMMaterialProperties.material_type) + return {"FINISHED"} -class DisableEditingMaterials(bpy.types.Operator, tool.Ifc.Operator): +class DisableEditingMaterials(bpy.types.Operator): bl_idname = "bim.disable_editing_materials" bl_label = "Disable Editing Materials" bl_options = {"REGISTER", "UNDO"} - def _execute(self, context): + def execute(self, context): core.disable_editing_materials(tool.Material) + return {"FINISHED"} -class SelectByMaterial(bpy.types.Operator, tool.Ifc.Operator): +class SelectByMaterial(bpy.types.Operator): bl_idname = "bim.select_by_material" bl_label = "Select By Material" bl_options = {"REGISTER", "UNDO"} material: bpy.props.IntProperty() - def _execute(self, context): + def execute(self, context): core.select_by_material(tool.Material, tool.Spatial, material=tool.Ifc.get().by_id(self.material)) + return {"FINISHED"} -class EnableEditingMaterial(bpy.types.Operator, tool.Ifc.Operator): +class EnableEditingMaterial(bpy.types.Operator): bl_idname = "bim.enable_editing_material" bl_label = "Enable Editing Material" bl_options = {"REGISTER", "UNDO"} material: bpy.props.IntProperty() - def _execute(self, context): + def execute(self, context): core.enable_editing_material(tool.Material, material=tool.Ifc.get().by_id(self.material)) + return {"FINISHED"} class EditMaterial(bpy.types.Operator, tool.Ifc.Operator): @@ -81,14 +85,15 @@ class EditMaterial(bpy.types.Operator, tool.Ifc.Operator): core.edit_material(tool.Ifc, tool.Material, material=tool.Ifc.get().by_id(self.material)) -class DisableEditingMaterial(bpy.types.Operator, tool.Ifc.Operator): +class DisableEditingMaterial(bpy.types.Operator): bl_idname = "bim.disable_editing_material" bl_label = "Disable Editing Material" bl_options = {"REGISTER", "UNDO"} material: bpy.props.IntProperty() - def _execute(self, context): + def execute(self, context): core.disable_editing_material(tool.Material) + return {"FINISHED"} class AssignParameterizedProfile(bpy.types.Operator, tool.Ifc.Operator): @@ -776,13 +781,13 @@ class ContractMaterialCategory(bpy.types.Operator): return {"FINISHED"} -class EnableEditingMaterialStyle(bpy.types.Operator, tool.Ifc.Operator): +class EnableEditingMaterialStyle(bpy.types.Operator): bl_idname = "bim.enable_editing_material_style" bl_label = "Enable Editing Material Style" bl_options = {"REGISTER", "UNDO"} material: bpy.props.IntProperty() - def _execute(self, context): + def execute(self, context): props = bpy.context.scene.BIMMaterialProperties props.active_material_id = self.material props.editing_material_type = "STYLE" @@ -800,6 +805,7 @@ class EnableEditingMaterialStyle(bpy.types.Operator, tool.Ifc.Operator): style = rep.Items[0].Styles[0] if style.Name: # props.styles only has named styles props.styles = str(rep.Items[0].Styles[0].id()) + return {"FINISHED"} class EditMaterialStyle(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/profile/operator.py b/src/bonsai/bonsai/bim/module/profile/operator.py index 15e4b9ea7a..cb7cd27491 100644 --- a/src/bonsai/bonsai/bim/module/profile/operator.py +++ b/src/bonsai/bonsai/bim/module/profile/operator.py @@ -98,17 +98,18 @@ class RemoveProfileDef(bpy.types.Operator, tool.Ifc.Operator): props.active_profile_index = min(current_index, len(props.profiles) - 1) -class EnableEditingProfile(bpy.types.Operator, tool.Ifc.Operator): +class EnableEditingProfile(bpy.types.Operator): bl_idname = "bim.enable_editing_profile" bl_label = "Enable Editing Profile" bl_options = {"REGISTER", "UNDO"} profile: bpy.props.IntProperty() - def _execute(self, context): + def execute(self, context): props = context.scene.BIMProfileProperties props.profile_attributes.clear() bonsai.bim.helper.import_attributes2(tool.Ifc.get().by_id(self.profile), props.profile_attributes) props.active_profile_id = self.profile + return {"FINISHED"} class DisableEditingProfile(bpy.types.Operator): @@ -176,12 +177,12 @@ class DuplicateProfileDef(bpy.types.Operator, tool.Ifc.Operator): bpy.ops.bim.load_profiles() -class EnableEditingArbitraryProfile(bpy.types.Operator, tool.Ifc.Operator): +class EnableEditingArbitraryProfile(bpy.types.Operator): bl_idname = "bim.enable_editing_arbitrary_profile" bl_label = "Enable Editing Arbitrary Profile" bl_options = {"REGISTER", "UNDO"} - def _execute(self, context): + def execute(self, context): props = context.scene.BIMProfileProperties active_profile = props.profiles[props.active_profile_index] profile_id = active_profile.ifc_definition_id @@ -194,6 +195,7 @@ class EnableEditingArbitraryProfile(bpy.types.Operator, tool.Ifc.Operator): bpy.ops.object.mode_set(mode="EDIT") ProfileDecorator.install(context, exit_edit_mode_callback=lambda: disable_editing_arbitrary_profile(context)) tool.Blender.set_viewport_tool("bim.cad_tool") + return {"FINISHED"} def disable_editing_arbitrary_profile(context): @@ -212,13 +214,14 @@ def disable_editing_arbitrary_profile(context): refresh() -class DisableEditingArbitraryProfile(bpy.types.Operator, tool.Ifc.Operator): +class DisableEditingArbitraryProfile(bpy.types.Operator): bl_idname = "bim.disable_editing_arbitrary_profile" bl_label = "Disable Editing Arbitrary Profile" bl_options = {"REGISTER", "UNDO"} - def _execute(self, context): - return disable_editing_arbitrary_profile(context) + def execute(self, context): + disable_editing_arbitrary_profile(context) + return {"FINISHED"} class EditArbitraryProfile(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/style/operator.py b/src/bonsai/bonsai/bim/module/style/operator.py index ebfbec53af..0a1bc04598 100644 --- a/src/bonsai/bonsai/bim/module/style/operator.py +++ b/src/bonsai/bonsai/bim/module/style/operator.py @@ -356,14 +356,14 @@ class BrowseExternalStyle(bpy.types.Operator): return {"FINISHED"} -class ActivateExternalStyle(bpy.types.Operator, tool.Ifc.Operator): +class ActivateExternalStyle(bpy.types.Operator): bl_idname = "bim.activate_external_style" bl_label = "Activate External Style" bl_options = {"REGISTER", "UNDO", "INTERNAL"} material_name: bpy.props.StringProperty(name="Material Name", default="") - def _execute(self, context): + def execute(self, context): if not self.material_name: material = context.active_object.active_material else: @@ -403,6 +403,7 @@ class ActivateExternalStyle(bpy.types.Operator, tool.Ifc.Operator): if material.use_nodes: tool.Blender.copy_node_graph(material, db["data_block"]) bpy.data.materials.remove(db["data_block"]) + return {"FINISHED"} def copy_material_attributes(self, source, target): ID_properties = bpy.types.ID.bl_rna.properties @@ -444,34 +445,37 @@ class ActivateExternalStyle(bpy.types.Operator, tool.Ifc.Operator): set_prop(prop_name) -class DisableEditingStyles(bpy.types.Operator, tool.Ifc.Operator): +class DisableEditingStyles(bpy.types.Operator): bl_idname = "bim.disable_editing_styles" bl_options = {"REGISTER", "UNDO"} bl_label = "Disable Editing Styles" - def _execute(self, context): + def execute(self, context): core.disable_editing_styles(tool.Style) + return {"FINISHED"} -class LoadStyles(bpy.types.Operator, tool.Ifc.Operator): +class LoadStyles(bpy.types.Operator): bl_idname = "bim.load_styles" bl_label = "Load Styles" bl_options = {"REGISTER", "UNDO"} style_type: bpy.props.StringProperty() - def _execute(self, context): + def execute(self, context): style_type = self.style_type if self.style_type else context.scene.BIMStylesProperties.style_type core.load_styles(tool.Style, style_type=style_type) + return {"FINISHED"} -class SelectByStyle(bpy.types.Operator, tool.Ifc.Operator): +class SelectByStyle(bpy.types.Operator): bl_idname = "bim.select_by_style" bl_label = "Select By Style" bl_options = {"REGISTER", "UNDO"} style: bpy.props.IntProperty() - def _execute(self, context): + def execute(self, context): core.select_by_style(tool.Style, tool.Spatial, style=tool.Ifc.get().by_id(self.style)) + return {"FINISHED"} class ChooseTextureMapPath(bpy.types.Operator): @@ -634,14 +638,14 @@ class AddPresentationStyle(bpy.types.Operator, tool.Ifc.Operator): core.load_styles(tool.Style, style_type=props.style_type) -class EnableEditingSurfaceStyle(bpy.types.Operator, tool.Ifc.Operator): +class EnableEditingSurfaceStyle(bpy.types.Operator): bl_idname = "bim.enable_editing_surface_style" bl_label = "Enable Editing Surface Style" bl_options = {"REGISTER", "UNDO"} style: bpy.props.IntProperty(default=0) ifc_class: bpy.props.StringProperty(default="") - def _execute(self, context): + def execute(self, context): props = bpy.context.scene.BIMStylesProperties style = tool.Ifc.get().by_id(self.style) props.is_editing_style = self.style @@ -679,6 +683,7 @@ class EnableEditingSurfaceStyle(bpy.types.Operator, tool.Ifc.Operator): and active_style_type != "Shading" ): tool.Style.switch_shading(material, "Shading") + return {"FINISHED"} class EditSurfaceStyle(bpy.types.Operator, tool.Ifc.Operator): diff --git a/src/bonsai/bonsai/bim/module/type/operator.py b/src/bonsai/bonsai/bim/module/type/operator.py index be652058ab..605ab97c25 100644 --- a/src/bonsai/bonsai/bim/module/type/operator.py +++ b/src/bonsai/bonsai/bim/module/type/operator.py @@ -515,12 +515,12 @@ class RenameType(bpy.types.Operator, tool.Ifc.Operator): self.layout.prop(self, "name") -class AutoRenameOccurrences(bpy.types.Operator, tool.Ifc.Operator): +class AutoRenameOccurrences(bpy.types.Operator): bl_idname = "bim.auto_rename_occurrences" bl_label = "Auto Rename Occurrences" bl_options = {"REGISTER", "UNDO"} - def _execute(self, context): + def execute(self, context): obj = context.active_object element_type = tool.Ifc.get_entity(obj) if element_type and element_type.is_a("IfcTypeObject"): @@ -529,6 +529,7 @@ class AutoRenameOccurrences(bpy.types.Operator, tool.Ifc.Operator): occurrence.Name = tool.Model.generate_occurrence_name(element_type, occurrence.is_a()) if obj: tool.Root.set_object_name(obj, occurrence) + return {"FINISHED"} class DuplicateType(bpy.types.Operator, tool.Ifc.Operator):