From 712ec6def34195d9683dcb11948e2c11d442b720 Mon Sep 17 00:00:00 2001 From: Dion Moult Date: Fri, 20 Oct 2023 22:15:37 +1100 Subject: [PATCH] Reorganise new stakeholders panel, move profiles into geometry tab. General UI polish. --- src/blenderbim/blenderbim/bim/__init__.py | 12 +++--- .../blenderbim/bim/module/boundary/ui.py | 2 +- .../blenderbim/bim/module/bsdd/ui.py | 2 +- .../bim/module/classification/ui.py | 2 +- .../blenderbim/bim/module/constraint/ui.py | 2 +- .../blenderbim/bim/module/context/ui.py | 2 +- .../blenderbim/bim/module/document/ui.py | 2 +- .../blenderbim/bim/module/georeference/ui.py | 2 +- .../blenderbim/bim/module/ifcgit/ui.py | 2 +- .../blenderbim/bim/module/library/ui.py | 2 +- .../blenderbim/bim/module/material/ui.py | 23 ++++++++---- .../blenderbim/bim/module/model/ui.py | 2 +- .../blenderbim/bim/module/owner/ui.py | 8 ++-- .../blenderbim/bim/module/profile/ui.py | 8 ++-- .../blenderbim/bim/module/project/ui.py | 6 +-- .../blenderbim/bim/module/pset_template/ui.py | 2 +- .../blenderbim/bim/module/spatial/ui.py | 2 +- .../blenderbim/bim/module/style/__init__.py | 4 +- .../blenderbim/bim/module/style/operator.py | 8 ++-- .../blenderbim/bim/module/style/ui.py | 4 +- .../blenderbim/bim/module/system/ui.py | 4 +- .../blenderbim/bim/module/unit/ui.py | 2 +- src/blenderbim/blenderbim/bim/ui.py | 37 +++++++++++++++++-- 23 files changed, 89 insertions(+), 51 deletions(-) diff --git a/src/blenderbim/blenderbim/bim/__init__.py b/src/blenderbim/blenderbim/bim/__init__.py index 62f444208e..f932fb9a63 100644 --- a/src/blenderbim/blenderbim/bim/__init__.py +++ b/src/blenderbim/blenderbim/bim/__init__.py @@ -125,13 +125,14 @@ classes = [ ui.BIM_UL_generic, ui.BIM_UL_topics, ui.BIM_ADDON_preferences, - # Project overview - ui.BIM_PT_project_info, - ui.BIM_PT_project_setup, - ui.BIM_PT_geometry, - ui.BIM_PT_tab_grouping_and_filtering, # Tabs panel ui.BIM_PT_tabs, + # Project overview + ui.BIM_PT_tab_project_info, + ui.BIM_PT_tab_project_setup, + ui.BIM_PT_tab_geometry, + ui.BIM_PT_tab_stakeholders, + ui.BIM_PT_tab_grouping_and_filtering, # Object information ui.BIM_PT_tab_object_metadata, ui.BIM_PT_tab_misc, @@ -140,6 +141,7 @@ classes = [ ui.BIM_PT_tab_representations, ui.BIM_PT_tab_geometric_relationships, ui.BIM_PT_tab_parametric_geometry, + ui.BIM_PT_tab_profiles, ui.BIM_PT_tab_materials, ui.BIM_PT_tab_styles, # Drawings and documents diff --git a/src/blenderbim/blenderbim/bim/module/boundary/ui.py b/src/blenderbim/blenderbim/bim/module/boundary/ui.py index 1e1068077f..fada4c0ca3 100644 --- a/src/blenderbim/blenderbim/bim/module/boundary/ui.py +++ b/src/blenderbim/blenderbim/bim/module/boundary/ui.py @@ -31,7 +31,7 @@ class BIM_PT_SceneBoundaries(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_geometry" + bl_parent_id = "BIM_PT_tab_geometry" @classmethod def poll(cls, context): diff --git a/src/blenderbim/blenderbim/bim/module/bsdd/ui.py b/src/blenderbim/blenderbim/bim/module/bsdd/ui.py index 8577c3242a..9b0e3a8446 100644 --- a/src/blenderbim/blenderbim/bim/module/bsdd/ui.py +++ b/src/blenderbim/blenderbim/bim/module/bsdd/ui.py @@ -28,7 +28,7 @@ class BIM_PT_bsdd(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_project_setup" def draw(self, context): props = context.scene.BIMBSDDProperties diff --git a/src/blenderbim/blenderbim/bim/module/classification/ui.py b/src/blenderbim/blenderbim/bim/module/classification/ui.py index f63c887fdf..9cc7a970a0 100644 --- a/src/blenderbim/blenderbim/bim/module/classification/ui.py +++ b/src/blenderbim/blenderbim/bim/module/classification/ui.py @@ -36,7 +36,7 @@ class BIM_PT_classifications(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_project_setup" @classmethod def poll(cls, context): diff --git a/src/blenderbim/blenderbim/bim/module/constraint/ui.py b/src/blenderbim/blenderbim/bim/module/constraint/ui.py index 2b017e89c3..0f3b522c7e 100644 --- a/src/blenderbim/blenderbim/bim/module/constraint/ui.py +++ b/src/blenderbim/blenderbim/bim/module/constraint/ui.py @@ -29,7 +29,7 @@ class BIM_PT_constraints(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_project_setup" @classmethod def poll(cls, context): diff --git a/src/blenderbim/blenderbim/bim/module/context/ui.py b/src/blenderbim/blenderbim/bim/module/context/ui.py index c8fe010625..85635fe86b 100644 --- a/src/blenderbim/blenderbim/bim/module/context/ui.py +++ b/src/blenderbim/blenderbim/bim/module/context/ui.py @@ -29,7 +29,7 @@ class BIM_PT_context(bpy.types.Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_geometry" + bl_parent_id = "BIM_PT_tab_geometry" @classmethod def poll(cls, context): diff --git a/src/blenderbim/blenderbim/bim/module/document/ui.py b/src/blenderbim/blenderbim/bim/module/document/ui.py index a656f4f576..289e2f992f 100644 --- a/src/blenderbim/blenderbim/bim/module/document/ui.py +++ b/src/blenderbim/blenderbim/bim/module/document/ui.py @@ -29,7 +29,7 @@ class BIM_PT_documents(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_project_setup" @classmethod def poll(cls, context): diff --git a/src/blenderbim/blenderbim/bim/module/georeference/ui.py b/src/blenderbim/blenderbim/bim/module/georeference/ui.py index f401376bbe..ffccee6af3 100644 --- a/src/blenderbim/blenderbim/bim/module/georeference/ui.py +++ b/src/blenderbim/blenderbim/bim/module/georeference/ui.py @@ -29,7 +29,7 @@ class BIM_PT_gis(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_geometry" + bl_parent_id = "BIM_PT_tab_geometry" def draw(self, context): self.layout.use_property_split = True diff --git a/src/blenderbim/blenderbim/bim/module/ifcgit/ui.py b/src/blenderbim/blenderbim/bim/module/ifcgit/ui.py index 304615353f..7c18bd6e42 100644 --- a/src/blenderbim/blenderbim/bim/module/ifcgit/ui.py +++ b/src/blenderbim/blenderbim/bim/module/ifcgit/ui.py @@ -11,7 +11,7 @@ class IFCGIT_PT_panel(bpy.types.Panel): bl_region_type = "WINDOW" bl_context = "scene" bl_options = {"DEFAULT_CLOSED"} - bl_parent_id = "BIM_PT_project_info" + bl_parent_id = "BIM_PT_tab_project_info" def draw(self, context): diff --git a/src/blenderbim/blenderbim/bim/module/library/ui.py b/src/blenderbim/blenderbim/bim/module/library/ui.py index c963203cd7..fb6ef10fda 100644 --- a/src/blenderbim/blenderbim/bim/module/library/ui.py +++ b/src/blenderbim/blenderbim/bim/module/library/ui.py @@ -29,7 +29,7 @@ class BIM_PT_libraries(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_project_setup" @classmethod def poll(cls, context): diff --git a/src/blenderbim/blenderbim/bim/module/material/ui.py b/src/blenderbim/blenderbim/bim/module/material/ui.py index 7124ff840d..8eddab9856 100644 --- a/src/blenderbim/blenderbim/bim/module/material/ui.py +++ b/src/blenderbim/blenderbim/bim/module/material/ui.py @@ -63,13 +63,19 @@ class BIM_PT_materials(Panel): material = self.props.materials[self.props.active_material_index] if material.ifc_definition_id: if self.props.active_material_id: - row.operator("bim.edit_material", text="", icon="CHECKMARK").material = material.ifc_definition_id - row.operator("bim.disable_editing_material", text="", icon="CANCEL").material = material.ifc_definition_id + row.operator( + "bim.edit_material", text="", icon="CHECKMARK" + ).material = material.ifc_definition_id + row.operator( + "bim.disable_editing_material", text="", icon="CANCEL" + ).material = material.ifc_definition_id self.draw_editable_material_attributes_ui() else: op = row.operator("bim.select_by_material", text="", icon="RESTRICT_SELECT_OFF") op.material = material.ifc_definition_id - row.operator("bim.enable_editing_material", text="", icon="GREASEPENCIL").material = material.ifc_definition_id + row.operator( + "bim.enable_editing_material", text="", icon="GREASEPENCIL" + ).material = material.ifc_definition_id row.operator("bim.remove_material", text="", icon="X").material = material.ifc_definition_id else: row.operator("bim.add_material_set", text="", icon="ADD").set_type = self.props.material_type @@ -82,10 +88,10 @@ class BIM_PT_materials(Panel): self.layout.template_list("BIM_UL_materials", "", self.props, "materials", self.props, "active_material_index") - def draw_editable_material_attributes_ui(self): blenderbim.bim.helper.draw_attributes(self.props.material_attributes, self.layout) + class BIM_PT_material(Panel): bl_label = "Material" bl_idname = "BIM_PT_material" @@ -219,9 +225,7 @@ class BIM_PT_object_material(Panel): elif self.props.active_material_set_item_id == set_item["id"]: self.draw_editable_set_item_ui(set_item) else: - self.draw_read_only_set_item_ui( - set_item, index, is_first=index == 0, is_last=index == total_items - 1 - ) + self.draw_read_only_set_item_ui(set_item, index, is_first=index == 0, is_last=index == total_items - 1) def draw_editable_set_item_profile_ui(self, set_item): box = self.layout.box() @@ -267,7 +271,10 @@ class BIM_PT_object_material(Panel): op.old_index = index op.new_index = index + 1 setattr(op, "material_set", ObjectMaterialData.data["set"]["id"]) - if not self.props.active_material_set_item_id and ObjectMaterialData.data["material_class"] != "IfcMaterialList": + if ( + not self.props.active_material_set_item_id + and ObjectMaterialData.data["material_class"] != "IfcMaterialList" + ): if "Profile" in ObjectMaterialData.data["material_class"]: op = row.operator("bim.enable_editing_material_set_item_profile", icon="ITALIC", text="") op.material_set_item = set_item["id"] diff --git a/src/blenderbim/blenderbim/bim/module/model/ui.py b/src/blenderbim/blenderbim/bim/module/model/ui.py index c99104261f..44ede97125 100644 --- a/src/blenderbim/blenderbim/bim/module/model/ui.py +++ b/src/blenderbim/blenderbim/bim/module/model/ui.py @@ -160,7 +160,7 @@ class BIM_PT_Grids(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_project_setup" def draw(self, context): self.layout.row().operator("mesh.add_grid", icon="ADD", text="Add Grids") diff --git a/src/blenderbim/blenderbim/bim/module/owner/ui.py b/src/blenderbim/blenderbim/bim/module/owner/ui.py index 622808c6f0..cd951316a8 100644 --- a/src/blenderbim/blenderbim/bim/module/owner/ui.py +++ b/src/blenderbim/blenderbim/bim/module/owner/ui.py @@ -83,7 +83,7 @@ class BIM_PT_people(bpy.types.Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_stakeholders" @classmethod def poll(cls, context): @@ -142,7 +142,7 @@ class BIM_PT_organisations(bpy.types.Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_stakeholders" @classmethod def poll(cls, context): @@ -189,7 +189,7 @@ class BIM_PT_owner(bpy.types.Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_stakeholders" @classmethod def poll(cls, context): @@ -240,7 +240,7 @@ class BIM_PT_actor(bpy.types.Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_stakeholders" @classmethod def poll(cls, context): diff --git a/src/blenderbim/blenderbim/bim/module/profile/ui.py b/src/blenderbim/blenderbim/bim/module/profile/ui.py index dc6ba88717..85e407b2e3 100644 --- a/src/blenderbim/blenderbim/bim/module/profile/ui.py +++ b/src/blenderbim/blenderbim/bim/module/profile/ui.py @@ -27,11 +27,11 @@ from blenderbim.bim.module.profile.prop import generate_thumbnail_for_active_pro class BIM_PT_profiles(Panel): bl_label = "Profiles" bl_idname = "BIM_PT_profiles" - bl_options = {"DEFAULT_CLOSED"} + bl_options = {"HIDE_HEADER"} bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_geometry" + bl_parent_id = "BIM_PT_tab_profiles" @classmethod def poll(cls, context): @@ -58,11 +58,11 @@ class BIM_PT_profiles(Panel): box.template_icon(icon_value=preview_image.icon_id, scale=5) row = self.layout.row(align=True) - row.label(text=f"{ProfileData.data['total_profiles']} Named Profiles Found", icon="SNAP_GRID") + row.label(text=f"{ProfileData.data['total_profiles']} Named Profiles", icon="ITALIC") if self.props.is_editing: row.operator("bim.disable_profile_editing_ui", text="", icon="CANCEL") else: - row.operator("bim.load_profiles", text="", icon="GREASEPENCIL") + row.operator("bim.load_profiles", text="", icon="IMPORT") if not self.props.is_editing: return diff --git a/src/blenderbim/blenderbim/bim/module/project/ui.py b/src/blenderbim/blenderbim/bim/module/project/ui.py index d2bc4feb8b..1c59236929 100644 --- a/src/blenderbim/blenderbim/bim/module/project/ui.py +++ b/src/blenderbim/blenderbim/bim/module/project/ui.py @@ -84,7 +84,7 @@ class BIM_PT_project(Panel): bl_region_type = "WINDOW" bl_context = "scene" bl_options = {"HIDE_HEADER"} - bl_parent_id = "BIM_PT_project_info" + bl_parent_id = "BIM_PT_tab_project_info" def draw(self, context): if not ProjectData.is_loaded: @@ -244,7 +244,7 @@ class BIM_PT_project_library(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_project_setup" def draw(self, context): self.layout.use_property_decorate = False @@ -287,7 +287,7 @@ class BIM_PT_links(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_project_setup" def draw(self, context): self.props = context.scene.BIMProjectProperties diff --git a/src/blenderbim/blenderbim/bim/module/pset_template/ui.py b/src/blenderbim/blenderbim/bim/module/pset_template/ui.py index 2f90bd94dd..1975438471 100644 --- a/src/blenderbim/blenderbim/bim/module/pset_template/ui.py +++ b/src/blenderbim/blenderbim/bim/module/pset_template/ui.py @@ -29,7 +29,7 @@ class BIM_PT_pset_template(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_project_setup" def draw(self, context): if not PsetTemplatesData.is_loaded: diff --git a/src/blenderbim/blenderbim/bim/module/spatial/ui.py b/src/blenderbim/blenderbim/bim/module/spatial/ui.py index 28e65d2982..61f1555531 100644 --- a/src/blenderbim/blenderbim/bim/module/spatial/ui.py +++ b/src/blenderbim/blenderbim/bim/module/spatial/ui.py @@ -103,7 +103,7 @@ class BIM_PT_SpatialManager(Panel): bl_region_type = "WINDOW" bl_context = "scene" bl_options = {"DEFAULT_CLOSED"} - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_project_setup" @classmethod def poll(cls, context): diff --git a/src/blenderbim/blenderbim/bim/module/style/__init__.py b/src/blenderbim/blenderbim/bim/module/style/__init__.py index 7aa30f52f4..f2fa818234 100644 --- a/src/blenderbim/blenderbim/bim/module/style/__init__.py +++ b/src/blenderbim/blenderbim/bim/module/style/__init__.py @@ -25,14 +25,14 @@ classes = ( operator.AddStyle, operator.BrowseExternalStyle, operator.ClearTextureMapPath, - operator.DisableAddPresentationStyle, + operator.DisableAddingPresentationStyle, operator.DisableEditingExternalStyle, operator.DisableEditingStyle, operator.DisableEditingStyles, operator.EditExternalStyle, operator.EditStyle, operator.EditSurfaceStyle, - operator.EnableAddPresentationStyle, + operator.EnableAddingPresentationStyle, operator.EnableEditingExternalStyle, operator.EnableEditingStyle, operator.EnableEditingSurfaceStyle, diff --git a/src/blenderbim/blenderbim/bim/module/style/operator.py b/src/blenderbim/blenderbim/bim/module/style/operator.py index d47d21cfaa..32a592b24c 100644 --- a/src/blenderbim/blenderbim/bim/module/style/operator.py +++ b/src/blenderbim/blenderbim/bim/module/style/operator.py @@ -431,8 +431,8 @@ class ClearTextureMapPath(bpy.types.Operator): return {"FINISHED"} -class EnableAddPresentationStyle(bpy.types.Operator, tool.Ifc.Operator): - bl_idname = "bim.enable_add_presentation_style" +class EnableAddingPresentationStyle(bpy.types.Operator, tool.Ifc.Operator): + bl_idname = "bim.enable_adding_presentation_style" bl_label = "Enable Add Presentation Style" bl_options = {"REGISTER", "UNDO"} @@ -441,8 +441,8 @@ class EnableAddPresentationStyle(bpy.types.Operator, tool.Ifc.Operator): props.is_adding = True -class DisableAddPresentationStyle(bpy.types.Operator, tool.Ifc.Operator): - bl_idname = "bim.disable_add_presentation_style" +class DisableAddingPresentationStyle(bpy.types.Operator, tool.Ifc.Operator): + bl_idname = "bim.disable_adding_presentation_style" bl_label = "Disable Add Presentation Style" bl_options = {"REGISTER", "UNDO"} diff --git a/src/blenderbim/blenderbim/bim/module/style/ui.py b/src/blenderbim/blenderbim/bim/module/style/ui.py index 0289eaab65..d3e97deb94 100644 --- a/src/blenderbim/blenderbim/bim/module/style/ui.py +++ b/src/blenderbim/blenderbim/bim/module/style/ui.py @@ -48,7 +48,7 @@ class BIM_PT_styles(Panel): row = self.layout.row(align=True) row.label(text="{} {}s".format(len(self.props.styles), self.props.style_type), icon="SHADING_RENDERED") if not self.props.is_adding: - row.operator("bim.enable_add_presentation_style", text="", icon="ADD") + row.operator("bim.enable_adding_presentation_style", text="", icon="ADD") row.operator("bim.disable_editing_styles", text="", icon="CANCEL") else: row = self.layout.row(align=True) @@ -69,7 +69,7 @@ class BIM_PT_styles(Panel): row.prop(self.props, "surface_colour", text="Colour") row = box.row(align=True) row.operator("bim.add_presentation_style", text="Save New Style", icon="CHECKMARK") - row.operator("bim.disable_add_presentation_style", text="", icon="CANCEL") + row.operator("bim.disable_adding_presentation_style", text="", icon="CANCEL") if self.props.styles and self.props.active_style_index < len(self.props.styles): row = self.layout.row(align=True) diff --git a/src/blenderbim/blenderbim/bim/module/system/ui.py b/src/blenderbim/blenderbim/bim/module/system/ui.py index 3d3ceae9bc..f986ca0883 100644 --- a/src/blenderbim/blenderbim/bim/module/system/ui.py +++ b/src/blenderbim/blenderbim/bim/module/system/ui.py @@ -97,7 +97,7 @@ class BIM_PT_systems(Panel): prop_with_search(row, self.props, "system_class", text="") row.operator("bim.add_system", text="", icon="ADD") else: - row.operator("bim.load_systems", text="", icon="GREASEPENCIL") + row.operator("bim.load_systems", text="", icon="IMPORT") if self.props.is_editing: self.layout.template_list( @@ -293,7 +293,7 @@ class BIM_PT_zones(Panel): row = self.layout.row(align=True) row.label(text="{} Zones Found".format(ZonesData.data["total_zones"]), icon="SEQ_STRIP_META") if not self.props.is_loaded: - row.operator("bim.load_zones", text="", icon="GREASEPENCIL") + row.operator("bim.load_zones", text="", icon="IMPORT") return row.operator("bim.add_zone", text="", icon="ADD") diff --git a/src/blenderbim/blenderbim/bim/module/unit/ui.py b/src/blenderbim/blenderbim/bim/module/unit/ui.py index 19d45eb825..86cf184eab 100644 --- a/src/blenderbim/blenderbim/bim/module/unit/ui.py +++ b/src/blenderbim/blenderbim/bim/module/unit/ui.py @@ -30,7 +30,7 @@ class BIM_PT_units(Panel): bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" - bl_parent_id = "BIM_PT_project_setup" + bl_parent_id = "BIM_PT_tab_geometry" @classmethod def poll(cls, context): diff --git a/src/blenderbim/blenderbim/bim/ui.py b/src/blenderbim/blenderbim/bim/ui.py index 29b120db5a..f63c32a138 100644 --- a/src/blenderbim/blenderbim/bim/ui.py +++ b/src/blenderbim/blenderbim/bim/ui.py @@ -339,7 +339,7 @@ class BIM_PT_tabs(Panel): tab_entry.enabled = enabled -class BIM_PT_project_info(Panel): +class BIM_PT_tab_project_info(Panel): bl_label = "Project Info" bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" @@ -353,16 +353,30 @@ class BIM_PT_project_info(Panel): pass -class BIM_PT_project_setup(Panel): +class BIM_PT_tab_project_setup(Panel): bl_label = "Project Setup" bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" bl_context = "scene" + + @classmethod + def poll(cls, context): + return tool.Blender.is_tab(context, "PROJECT") + + def draw(self, context): + pass + + +class BIM_PT_tab_stakeholders(Panel): + bl_label = "Stakeholders" + bl_space_type = "PROPERTIES" + bl_region_type = "WINDOW" + bl_context = "scene" bl_options = {"DEFAULT_CLOSED"} @classmethod def poll(cls, context): - return tool.Blender.is_tab(context, "PROJECT") + return tool.Blender.is_tab(context, "PROJECT") and tool.Ifc.get() def draw(self, context): pass @@ -397,7 +411,7 @@ class BIM_PT_tab_grouping_and_filtering(Panel): pass -class BIM_PT_geometry(Panel): +class BIM_PT_tab_geometry(Panel): bl_label = "Geometry" bl_space_type = "PROPERTIES" bl_region_type = "WINDOW" @@ -661,6 +675,21 @@ class BIM_PT_tab_styles(Panel): pass +class BIM_PT_tab_profiles(Panel): + bl_label = "Profiles" + bl_space_type = "PROPERTIES" + bl_region_type = "WINDOW" + bl_context = "scene" + bl_order = 1 + + @classmethod + def poll(cls, context): + return tool.Blender.is_tab(context, "GEOMETRY") and tool.Ifc.get() + + def draw(self, context): + pass + + class BIM_PT_tab_sheets(Panel): bl_label = "Sheets" bl_space_type = "PROPERTIES"