updated according to comments

This commit is contained in:
Vukas Pajic
2022-06-29 08:22:43 +02:00
committed by Dion Moult
parent 1f4022a41b
commit 5b77001568
2 changed files with 5 additions and 10 deletions
+1 -1
View File
@@ -33,7 +33,7 @@ def draw_attributes(props, layout, copy_operator=None):
draw_attribute(attribute, row, copy_operator) draw_attribute(attribute, row, copy_operator)
def draw_attribute(box, attribute, layout, copy_operator=None): def draw_attribute(attribute, layout, copy_operator=None):
value_name = attribute.get_value_name() value_name = attribute.get_value_name()
if not value_name: if not value_name:
layout.label(text=attribute.name) layout.label(text=attribute.name)
@@ -81,13 +81,8 @@ def get_properties(properties):
if prop.is_a("IfcPropertySingleValue"): if prop.is_a("IfcPropertySingleValue"):
results[prop.Name] = prop.NominalValue.wrappedValue if prop.NominalValue else None results[prop.Name] = prop.NominalValue.wrappedValue if prop.NominalValue else None
elif prop.is_a("IfcPropertyEnumeratedValue"): elif prop.is_a("IfcPropertyEnumeratedValue"):
values = [] values = [v.wrappedValue for v in prop.EnumerationValues]
for enum in prop.EnumerationValues: results[prop.Name] = [v.wrappedValue for v in prop.EnumerationValues] or None
values.append(enum.wrappedValue)
if values:
results[prop.Name] = str(values) if len(values)>1 else values[0]
else:
results[prop.Name] = None
elif prop.is_a("IfcComplexProperty"): elif prop.is_a("IfcComplexProperty"):
data = {k: v for k, v in prop.get_info().items() if v is not None and k != "Name"} data = {k: v for k, v in prop.get_info().items() if v is not None and k != "Name"}
@@ -100,9 +95,9 @@ def get_properties(properties):
def get_predefined_type(element): def get_predefined_type(element):
element_type = get_type(element) element_type = get_type(element)
if element_type: if element_type:
predefined_type = getattr(element_type, "ElementType", getattr(element_type, "ProcessType", None)) predefined_type = getattr(element_type, "PredefinedType", None)
if predefined_type == "USERDEFINED" or not predefined_type: if predefined_type == "USERDEFINED" or not predefined_type:
predefined_type = getattr(element_type, "ElementType", None) predefined_type = getattr(element_type, "ElementType", getattr(element_type, "ProcessType", None))
if predefined_type and predefined_type != "NOTDEFINED": if predefined_type and predefined_type != "NOTDEFINED":
return predefined_type return predefined_type
predefined_type = getattr(element, "PredefinedType", None) predefined_type = getattr(element, "PredefinedType", None)