From cfdc54064e450edd7fdb185ca33b6a2253b0aacf Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Thu, 14 Dec 2023 18:53:54 +0500 Subject: [PATCH] disable rel paths for adding ref images and textures with unsaved .ifc --- .../blenderbim/bim/module/drawing/operator.py | 11 +++++++++++ .../blenderbim/bim/module/style/operator.py | 9 +++++++++ 2 files changed, 20 insertions(+) diff --git a/src/blenderbim/blenderbim/bim/module/drawing/operator.py b/src/blenderbim/blenderbim/bim/module/drawing/operator.py index 2a9552f456..c41b75461e 100644 --- a/src/blenderbim/blenderbim/bim/module/drawing/operator.py +++ b/src/blenderbim/blenderbim/bim/module/drawing/operator.py @@ -2591,6 +2591,17 @@ class AddReferenceImage(bpy.types.Operator, Operator): options={"SKIP_SAVE"}, ) + def draw(self, context): + layout = self.layout + if Path(tool.Ifc.get_path()).is_file(): + layout.prop(self, "use_relative_path") + else: + self.use_relative_path = False + layout.label(text="Save the .ifc file first ") + layout.label(text="to use relative paths.") + layout.prop(self, "override_existing_image") + layout.prop(self, "use_existing_object_by_name") + def invoke(self, context, event): context.window_manager.fileselect_add(self) return {"RUNNING_MODAL"} diff --git a/src/blenderbim/blenderbim/bim/module/style/operator.py b/src/blenderbim/blenderbim/bim/module/style/operator.py index a1be0ce674..fa82626966 100644 --- a/src/blenderbim/blenderbim/bim/module/style/operator.py +++ b/src/blenderbim/blenderbim/bim/module/style/operator.py @@ -428,6 +428,15 @@ class ChooseTextureMapPath(bpy.types.Operator): filter_image: bpy.props.BoolProperty(default=True, options={"HIDDEN", "SKIP_SAVE"}) filter_folder: bpy.props.BoolProperty(default=True, options={"HIDDEN", "SKIP_SAVE"}) + def draw(self, context): + layout = self.layout + if Path(tool.Ifc.get_path()).is_file(): + layout.prop(self, "use_relative_path") + else: + self.use_relative_path = False + layout.label(text="Save the .ifc file first ") + layout.label(text="to use relative paths.") + def invoke(self, context, event): context.window_manager.fileselect_add(self) return {"RUNNING_MODAL"}