From 3dcd10b4784ce36a46175d86cde65682998ba447 Mon Sep 17 00:00:00 2001 From: Dion Moult Date: Tue, 6 Jul 2021 16:03:27 +1000 Subject: [PATCH] Implement undo in debug and diff operators. --- src/blenderbim/blenderbim/bim/module/debug/operator.py | 5 +++++ src/blenderbim/blenderbim/bim/module/diff/operator.py | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/src/blenderbim/blenderbim/bim/module/debug/operator.py b/src/blenderbim/blenderbim/bim/module/debug/operator.py index ff4dbf56b7..b9199db361 100644 --- a/src/blenderbim/blenderbim/bim/module/debug/operator.py +++ b/src/blenderbim/blenderbim/bim/module/debug/operator.py @@ -76,8 +76,12 @@ class CreateAllShapes(bpy.types.Operator): class CreateShapeFromStepId(bpy.types.Operator): bl_idname = "bim.create_shape_from_step_id" bl_label = "Create Shape From STEP ID" + bl_options = {"REGISTER", "UNDO"} def execute(self, context): + return IfcStore.execute_ifc_operator(self, context) + + def _execute(self, context): logger = logging.getLogger("ImportIFC") self.ifc_import_settings = import_ifc.IfcImportSettings.factory(bpy.context, IfcStore.path, logger) self.file = IfcStore.get_file() @@ -96,6 +100,7 @@ class CreateShapeFromStepId(bpy.types.Operator): class SelectHighPolygonMeshes(bpy.types.Operator): bl_idname = "bim.select_high_polygon_meshes" bl_label = "Select High Polygon Meshes" + bl_options = {"REGISTER", "UNDO"} def execute(self, context): results = {} diff --git a/src/blenderbim/blenderbim/bim/module/diff/operator.py b/src/blenderbim/blenderbim/bim/module/diff/operator.py index 5ca9dfefc8..811622eb3c 100644 --- a/src/blenderbim/blenderbim/bim/module/diff/operator.py +++ b/src/blenderbim/blenderbim/bim/module/diff/operator.py @@ -9,6 +9,7 @@ from blenderbim.bim.ifc import IfcStore class SelectDiffJsonFile(bpy.types.Operator): bl_idname = "bim.select_diff_json_file" bl_label = "Select Diff JSON File" + bl_options = {"REGISTER", "UNDO"} filepath: bpy.props.StringProperty(subtype="FILE_PATH") def execute(self, context): @@ -23,6 +24,7 @@ class SelectDiffJsonFile(bpy.types.Operator): class VisualiseDiff(bpy.types.Operator): bl_idname = "bim.visualise_diff" bl_label = "Visualise Diff" + bl_options = {"REGISTER", "UNDO"} def execute(self, context): #ifc_file = IfcStore.get_file() # In case we get from Store @@ -48,6 +50,7 @@ class VisualiseDiff(bpy.types.Operator): class SelectDiffOldFile(bpy.types.Operator): bl_idname = "bim.select_diff_old_file" bl_label = "Select Diff Old File" + bl_options = {"REGISTER", "UNDO"} filepath: bpy.props.StringProperty(subtype="FILE_PATH") def execute(self, context): @@ -62,6 +65,7 @@ class SelectDiffOldFile(bpy.types.Operator): class SelectDiffNewFile(bpy.types.Operator): bl_idname = "bim.select_diff_new_file" bl_label = "Select Diff New File" + bl_options = {"REGISTER", "UNDO"} filepath: bpy.props.StringProperty(subtype="FILE_PATH") def execute(self, context):