mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-16 13:46:54 +00:00
See #7159. Make polls consistent in add foo to sheet operators.
This commit is contained in:
@@ -1866,13 +1866,15 @@ class AddDrawingToSheet(bpy.types.Operator, tool.Ifc.Operator):
|
|||||||
@classmethod
|
@classmethod
|
||||||
def poll(cls, context):
|
def poll(cls, context):
|
||||||
props = tool.Drawing.get_document_props()
|
props = tool.Drawing.get_document_props()
|
||||||
# Won't be visible in UI anyway.
|
|
||||||
prefs = tool.Blender.get_addon_preferences()
|
|
||||||
if not props.sheets or not prefs.data_dir:
|
|
||||||
return False
|
|
||||||
if not tool.Drawing.get_active_drawing_item():
|
if not tool.Drawing.get_active_drawing_item():
|
||||||
cls.poll_message_set("No drawing selected.")
|
cls.poll_message_set("No drawing selected.")
|
||||||
return False
|
return False
|
||||||
|
if not props.sheets:
|
||||||
|
cls.poll_message_set("No sheets available.")
|
||||||
|
return False
|
||||||
|
if not tool.Blender.get_user_data_dir():
|
||||||
|
cls.poll_message_set("BIM data directory not set.")
|
||||||
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def _execute(self, context):
|
def _execute(self, context):
|
||||||
@@ -2816,8 +2818,13 @@ class AddScheduleToSheet(bpy.types.Operator, tool.Ifc.Operator):
|
|||||||
if not props.schedules:
|
if not props.schedules:
|
||||||
cls.poll_message_set("No schedule selected.")
|
cls.poll_message_set("No schedule selected.")
|
||||||
return False
|
return False
|
||||||
prefs = tool.Blender.get_addon_preferences()
|
if not props.sheets:
|
||||||
return props.schedules and props.sheets and prefs.data_dir
|
cls.poll_message_set("No sheets available.")
|
||||||
|
return False
|
||||||
|
if not tool.Blender.get_user_data_dir():
|
||||||
|
cls.poll_message_set("BIM data directory not set.")
|
||||||
|
return False
|
||||||
|
return True
|
||||||
|
|
||||||
def _execute(self, context):
|
def _execute(self, context):
|
||||||
props = tool.Drawing.get_document_props()
|
props = tool.Drawing.get_document_props()
|
||||||
@@ -2887,8 +2894,7 @@ class AddReferenceToSheet(bpy.types.Operator, tool.Ifc.Operator):
|
|||||||
if not props.sheets:
|
if not props.sheets:
|
||||||
cls.poll_message_set("No sheets available.")
|
cls.poll_message_set("No sheets available.")
|
||||||
return False
|
return False
|
||||||
prefs = tool.Blender.get_addon_preferences()
|
if not tool.Blender.get_user_data_dir():
|
||||||
if not prefs.data_dir:
|
|
||||||
cls.poll_message_set("BIM data directory not set.")
|
cls.poll_message_set("BIM data directory not set.")
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|||||||
Reference in New Issue
Block a user