From dcd6cace038f86c6a808aa2ac749f2f4ba72f5ed Mon Sep 17 00:00:00 2001 From: Dion Moult Date: Sat, 3 Jul 2021 14:34:15 +1000 Subject: [PATCH] Fix bug in IfcSverchok nodes where refresh buttons didn't work --- src/ifcsverchok/nodes/ifc/create_file.py | 10 ++++++---- src/ifcsverchok/nodes/ifc/create_shape.py | 10 ++++++---- src/ifcsverchok/nodes/ifc/select_blender_objects.py | 12 ++++++------ 3 files changed, 18 insertions(+), 14 deletions(-) diff --git a/src/ifcsverchok/nodes/ifc/create_file.py b/src/ifcsverchok/nodes/ifc/create_file.py index 52ffea1d21..4e6c24de69 100644 --- a/src/ifcsverchok/nodes/ifc/create_file.py +++ b/src/ifcsverchok/nodes/ifc/create_file.py @@ -10,12 +10,12 @@ class SvIfcCreateFileRefresh(bpy.types.Operator): bl_idname = "node.sv_ifc_create_file_refresh" bl_label = "LB Out" - idtree: StringProperty(default="") - idname: StringProperty(default="") + tree_name: StringProperty(default="") + node_name: StringProperty(default="") has_baked: bpy.props.BoolProperty(name="Has Baked", default=False) def execute(self, context): - node = bpy.data.node_groups[self.idtree].nodes[self.idname] + node = bpy.data.node_groups[self.tree_name].nodes[self.node_name] node.process() return {"FINISHED"} @@ -30,7 +30,9 @@ class SvIfcCreateFile(bpy.types.Node, SverchCustomTreeNode, ifcsverchok.helper.S self.outputs.new("SvVerticesSocket", "file") def draw_buttons(self, context, layout): - self.wrapper_tracked_ui_draw_op(layout, "node.sv_ifc_create_file_refresh", icon="FILE_REFRESH", text="Refresh") + op = layout.operator("node.sv_ifc_create_file_refresh", icon="FILE_REFRESH", text="Refresh") + op.tree_name = self.id_data.name + op.node_name = self.name def process(self): self.sv_input_names = ["schema"] diff --git a/src/ifcsverchok/nodes/ifc/create_shape.py b/src/ifcsverchok/nodes/ifc/create_shape.py index 6ecc18c63e..6ce2486dba 100644 --- a/src/ifcsverchok/nodes/ifc/create_shape.py +++ b/src/ifcsverchok/nodes/ifc/create_shape.py @@ -13,11 +13,11 @@ class SvIfcCreateShapeRefresh(bpy.types.Operator): bl_label = "IFC Create Shape Refresh" bl_options = {"UNDO"} - idtree: StringProperty(default="") - idname: StringProperty(default="") + tree_name: StringProperty(default="") + node_name: StringProperty(default="") def execute(self, context): - node = bpy.data.node_groups[self.idtree].nodes[self.idname] + node = bpy.data.node_groups[self.tree_name].nodes[self.node_name] node.process() return {"FINISHED"} @@ -33,7 +33,9 @@ class SvIfcCreateShape(bpy.types.Node, SverchCustomTreeNode, ifcsverchok.helper. self.inputs.new("SvStringsSocket", "entity").prop_name = "entity" def draw_buttons(self, context, layout): - self.wrapper_tracked_ui_draw_op(layout, "node.sv_ifc_create_shape_refresh", icon="FILE_REFRESH", text="Refresh") + op = layout.operator("node.sv_ifc_create_shape_refresh", icon="FILE_REFRESH", text="Refresh") + op.tree_name = self.id_data.name + op.node_name = self.name def process(self): self.sv_input_names = ["file", "entity"] diff --git a/src/ifcsverchok/nodes/ifc/select_blender_objects.py b/src/ifcsverchok/nodes/ifc/select_blender_objects.py index 9f9f15cad5..ade7c25498 100644 --- a/src/ifcsverchok/nodes/ifc/select_blender_objects.py +++ b/src/ifcsverchok/nodes/ifc/select_blender_objects.py @@ -13,11 +13,11 @@ class SvIfcSelectBlenderObjectsRefresh(bpy.types.Operator): bl_label = "IFC Select Blender Objects Refresh" bl_options = {"UNDO"} - idtree: StringProperty(default="") - idname: StringProperty(default="") + tree_name: StringProperty(default="") + node_name: StringProperty(default="") def execute(self, context): - node = bpy.data.node_groups[self.idtree].nodes[self.idname] + node = bpy.data.node_groups[self.tree_name].nodes[self.node_name] node.process() return {"FINISHED"} @@ -32,9 +32,9 @@ class SvIfcSelectBlenderObjects(bpy.types.Node, SverchCustomTreeNode, ifcsvercho self.inputs.new("SvStringsSocket", "entities").prop_name = "entities" def draw_buttons(self, context, layout): - self.wrapper_tracked_ui_draw_op( - layout, "node.sv_ifc_select_blender_objects_refresh", icon="FILE_REFRESH", text="Refresh" - ) + op = layout.operator("node.sv_ifc_select_blender_objects_refresh", icon="FILE_REFRESH", text="Refresh") + op.tree_name = self.id_data.name + op.node_name = self.name def process(self): self.file = IfcStore.get_file()