diff --git a/src/blenderbim/blenderbim/bim/module/brick/prop.py b/src/blenderbim/blenderbim/bim/module/brick/prop.py index 2e5e60056a..e44a8848c3 100644 --- a/src/blenderbim/blenderbim/bim/module/brick/prop.py +++ b/src/blenderbim/blenderbim/bim/module/brick/prop.py @@ -54,6 +54,14 @@ def get_brick_equipment_classes(self, context): return BrickschemaData.data["brick_equipment_classes"] +def get_brick_view_types(self, context): + return [("System", "System", ""), + ("Location", "Location", ""), + ("Equipment", "Equipment", ""), + ("Point", "Point", "") + ] + + class Brick(PropertyGroup): name: StringProperty(name="Name") label: StringProperty(name="Label") @@ -72,4 +80,5 @@ class BIMBrickProperties(PropertyGroup): brick_settings_toggled: BoolProperty(name="Brick Settings Toggled", default=False) new_brick_label: StringProperty(name="New Brick Label") new_brick_namespace_alias: StringProperty(name="New Brick Namespace Alias") - new_brick_namespace_uri: StringProperty(name="New Brick Namespace URI") \ No newline at end of file + new_brick_namespace_uri: StringProperty(name="New Brick Namespace URI") + brick_view_type: EnumProperty(name="Brick View Type", items=get_brick_view_types) \ No newline at end of file diff --git a/src/blenderbim/blenderbim/bim/module/brick/ui.py b/src/blenderbim/blenderbim/bim/module/brick/ui.py index 2303ac6498..64ee774ea3 100644 --- a/src/blenderbim/blenderbim/bim/module/brick/ui.py +++ b/src/blenderbim/blenderbim/bim/module/brick/ui.py @@ -47,21 +47,26 @@ class BIM_PT_brickschema(Panel): row.label(text=BrickStore.path, icon="FILEBROWSER") row = self.layout.row(align=True) - if len(self.props.brick_breadcrumbs): - row.operator("bim.rewind_brick_class", text="", icon="FRAME_PREV") - row.label(text=self.props.active_brick_class) - row.prop(data=self.props, property="brick_settings_toggled", text="", icon="PREFERENCES") - row.operator("bim.refresh_brick_viewer", text="", icon="FILE_REFRESH") + op = row.operator("bim.serialize_brick", icon="EXPORT", text="Save") + op.should_save_as = False + op = row.operator("bim.serialize_brick", icon="FILE_TICK", text="Save As") + op.should_save_as = True row.operator("bim.close_brick_project", text="", icon="CANCEL") + row = self.layout.row(align=True) + row.prop(data=self.props, property="brick_settings_toggled", text="", icon="PREFERENCES") + if self.props.brick_settings_toggled: box = self.layout.box() row = box.row(align=True) row.label(text="Active Namespace:") + row = box.row(align=True) prop_with_search(row, self.props, "namespace", text="") + row = box.row(align=True) row.label(text="Bind New Namespace:") + row = box.row(align=True) row.prop(data=self.props, property="new_brick_namespace_alias", text="") col = row.column() @@ -71,6 +76,9 @@ class BIM_PT_brickschema(Panel): row.prop(data=self.props, property="new_brick_namespace_uri", text="") row.operator("bim.add_brick_namespace", text="", icon="ADD") + row = box.row(align=True) + row.prop(data=self.props, property="brick_view_type", text="List View") + row = self.layout.row(align=True) row.label(text="Create Entity:") row = self.layout.row(align=True) @@ -79,15 +87,18 @@ class BIM_PT_brickschema(Panel): row.operator("bim.add_brick", text="", icon="ADD") row = self.layout.row(align=True) - row.alignment = "RIGHT" - row.operator("bim.add_brick_feed", text="", icon="PLUGIN") + col = row.column() + col.alignment = "LEFT" + if len(self.props.brick_breadcrumbs): + row.operator("bim.rewind_brick_class", text="", icon="FRAME_PREV") + col = row.column() + col.alignment = "RIGHT" + # row.operator("bim.add_brick_feed", text="", icon="PLUGIN") row.operator("bim.remove_brick", text="", icon="X") + # row.operator("bim.refresh_brick_viewer", text="", icon="FILE_REFRESH") row = self.layout.row(align=True) - op = row.operator("bim.serialize_brick", icon="EXPORT", text="Save") - op.should_save_as = False - op = row.operator("bim.serialize_brick", icon="FILE_TICK", text="Save As") - op.should_save_as = True + row.label(text=self.props.active_brick_class) self.layout.template_list("BIM_UL_bricks", "", self.props, "bricks", self.props, "active_brick_index")