From 51c78a89bdcc7203ae954dc6e119b1af5a81bb24 Mon Sep 17 00:00:00 2001 From: Gorgious56 Date: Thu, 17 Aug 2023 17:31:00 +0200 Subject: [PATCH] simplify ifc class suggestions json file and operator --- src/blenderbim/blenderbim/bim/operator.py | 12 +-- .../util/schema/ifc_classes_suggestions.json | 81 +++++++------------ 2 files changed, 33 insertions(+), 60 deletions(-) diff --git a/src/blenderbim/blenderbim/bim/operator.py b/src/blenderbim/blenderbim/bim/operator.py index 36628cc2cd..08f591be6e 100644 --- a/src/blenderbim/blenderbim/bim/operator.py +++ b/src/blenderbim/blenderbim/bim/operator.py @@ -830,13 +830,13 @@ class BIM_OT_enum_property_search(bpy.types.Operator): mapping = getter_suggestions.get(self.prop_name) if mapping is None: return - for key, values in mapping().items(): + for key, suggestions in mapping().items(): if key in self.identifiers: - if not isinstance(values, (tuple, list)): - values = [values] - for value in values: - predefined_type = value["predefined_type"].upper() - name = value.get("name") + if not isinstance(suggestions, (tuple, list)): + suggestions = [suggestions] + for suggestion in suggestions: + predefined_type = suggestion.get("predefined_type", "NOTDEFINED").upper() + name = suggestion.get("name") self.add_item( identifier=key, name=f"{key} > {name if name else predefined_type }", diff --git a/src/ifcopenshell-python/ifcopenshell/util/schema/ifc_classes_suggestions.json b/src/ifcopenshell-python/ifcopenshell/util/schema/ifc_classes_suggestions.json index 5a32b3905e..562e92fa49 100644 --- a/src/ifcopenshell-python/ifcopenshell/util/schema/ifc_classes_suggestions.json +++ b/src/ifcopenshell-python/ifcopenshell/util/schema/ifc_classes_suggestions.json @@ -7,138 +7,111 @@ ], "IfcAirTerminalBox": [ { - "name": "VAV Box", - "predefined_type": "NOTDEFINED" + "name": "VAV Box" } ], "IfcCableSegment": [ { - "name": "Lighting Rod", - "predefined_type": "NOTDEFINED" + "name": "Lighting Rod" } ], "IfcCovering": [ { - "name": "Flashing", - "predefined_type": "NOTDEFINED" + "name": "Flashing" }, { - "name": "Capping", - "predefined_type": "NOTDEFINED" + "name": "Capping" } ], "IfcDistributionElement": [ { - "name": "Furnace", - "predefined_type": "NOTDEFINED" + "name": "Furnace" } ], "IfcDistributionElementType": [ { - "name": "Furnace", - "predefined_type": "NOTDEFINED" + "name": "Furnace" } ], "IfcFurniture": [ { - "name": "Casework", - "predefined_type": "NOTDEFINED" + "name": "Casework" }, { - "name": "Millwork", - "predefined_type": "NOTDEFINED" + "name": "Millwork" }, { - "name": "Signage", - "predefined_type": "NOTDEFINED" + "name": "Signage" } ], "IfcFurnitureType": [ { - "name": "Casework", - "predefined_type": "NOTDEFINED" + "name": "Casework" }, { - "name": "Millwork", - "predefined_type": "NOTDEFINED" + "name": "Millwork" }, { - "name": "Signage", - "predefined_type": "NOTDEFINED" + "name": "Signage" } ], "IfcPlate": [ { - "name": "Glazing", - "predefined_type": "NOTDEFINED" + "name": "Glazing" }, { - "name": "Glass", - "predefined_type": "NOTDEFINED" + "name": "Glass" }, { - "name": "Pane", - "predefined_type": "NOTDEFINED" + "name": "Pane" } ], "IfcSensor": [ { - "name": "Card Reader", - "predefined_type": "NOTDEFINED" + "name": "Card Reader" }, { - "name": "Fob Reader", - "predefined_type": "NOTDEFINED" + "name": "Fob Reader" } ], "IfcSlab": [ { - "name": "Hob", - "predefined_type": "NOTDEFINED" + "name": "Hob" } ], "IfcSwitchingDevice": [ { - "name": "Reed Switch", - "predefined_type": "NOTDEFINED" + "name": "Reed Switch" }, { - "name": "Electric Isolating Switch", - "predefined_type": "NOTDEFINED" + "name": "Electric Isolating Switch" } ], "IfcUnitaryEquipment": [ { - "name": "Fan Coil Unit", - "predefined_type": "NOTDEFINED" + "name": "Fan Coil Unit" } ], "IfcWall": [ { - "name": "Glazing", - "predefined_type": "NOTDEFINED" + "name": "Glazing" }, { - "name": "Glass", - "predefined_type": "NOTDEFINED" + "name": "Glass" }, { - "name": "Pane", - "predefined_type": "NOTDEFINED" + "name": "Pane" } ], "IfcWindow": [ { - "name": "Glazing", - "predefined_type": "NOTDEFINED" + "name": "Glazing" }, { - "name": "Glass", - "predefined_type": "NOTDEFINED" + "name": "Glass" }, { - "name": "Pane", - "predefined_type": "NOTDEFINED" + "name": "Pane" } ] } \ No newline at end of file