From 94f51376840794f4d07f9850d8a3a0e290d2ba76 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Wed, 21 Aug 2024 18:19:09 +0500 Subject: [PATCH] fix poll error messages addressing empty enum --- src/bonsai/bonsai/tool/covering.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/bonsai/bonsai/tool/covering.py b/src/bonsai/bonsai/tool/covering.py index 3221d33df5..4cb7347f28 100644 --- a/src/bonsai/bonsai/tool/covering.py +++ b/src/bonsai/bonsai/tool/covering.py @@ -62,9 +62,11 @@ class Covering(bonsai.core.tool.Covering): def covering_poll_relating_type_check( cls, operator: type[bpy.types.Operator], context: bpy.types.Context, covering_type: str ) -> bool: - relating_type_id = int(context.scene.BIMModelProperties.relating_type_id) - relating_type = ifcopenshell.util.element.get_predefined_type(tool.Ifc.get().by_id(relating_type_id)) - if relating_type != covering_type: - operator.poll_message_set(f"Select IfcCoveringType with predefined type '{covering_type}'.") - return False - return True + props = context.scene.BIMModelProperties + relating_type_id = tool.Blender.get_enum_safe(props, "relating_type_id") + if relating_type_id is not None: + relating_type = ifcopenshell.util.element.get_predefined_type(tool.Ifc.get().by_id(relating_type_id)) + if relating_type == covering_type: + return True + operator.poll_message_set(f"Select IfcCoveringType with predefined type '{covering_type}'.") + return False