From 1b83fcc1c79933ac4e4c9594e2a77c5ed43b1bb6 Mon Sep 17 00:00:00 2001 From: "Sigma Dimensions (Yass)" <79010126+myoualid@users.noreply.github.com> Date: Wed, 23 Aug 2023 14:02:53 +0100 Subject: [PATCH] when editing sequence relationships, enabling selecting successor and predecessor task --- .../blenderbim/bim/module/sequence/__init__.py | 2 +- .../blenderbim/bim/module/sequence/operator.py | 6 +++--- src/blenderbim/blenderbim/bim/module/sequence/ui.py | 9 +++++---- src/blenderbim/blenderbim/core/sequence.py | 6 +++--- 4 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/blenderbim/blenderbim/bim/module/sequence/__init__.py b/src/blenderbim/blenderbim/bim/module/sequence/__init__.py index c2f79dc7f3..bb89b8152f 100644 --- a/src/blenderbim/blenderbim/bim/module/sequence/__init__.py +++ b/src/blenderbim/blenderbim/bim/module/sequence/__init__.py @@ -82,7 +82,7 @@ classes = ( operator.ExportP6, operator.GenerateGanttChart, operator.GuessDateRange, - operator.HighlightTask, + operator.GoToTask, operator.ImportCSV, operator.ImportMSP, operator.ImportP6, diff --git a/src/blenderbim/blenderbim/bim/module/sequence/operator.py b/src/blenderbim/blenderbim/bim/module/sequence/operator.py index e4ac5efa44..ddcfc309e4 100644 --- a/src/blenderbim/blenderbim/bim/module/sequence/operator.py +++ b/src/blenderbim/blenderbim/bim/module/sequence/operator.py @@ -1410,14 +1410,14 @@ class LoadProductTasks(bpy.types.Operator): return {"FINISHED"} -class HighlightTask(bpy.types.Operator): - bl_idname = "bim.highlight_task" +class GoToTask(bpy.types.Operator): + bl_idname = "bim.go_to_task" bl_label = "Highlight Task" bl_options = {"REGISTER", "UNDO"} task: bpy.props.IntProperty() def execute(self, context): - r = core.highlight_task(tool.Sequence, task=tool.Ifc.get().by_id(self.task)) + r = core.go_to_task(tool.Sequence, task=tool.Ifc.get().by_id(self.task)) if isinstance(r, str): self.report({"WARNING"}, r) return {"FINISHED"} diff --git a/src/blenderbim/blenderbim/bim/module/sequence/ui.py b/src/blenderbim/blenderbim/bim/module/sequence/ui.py index 61f8a22311..f28794e481 100644 --- a/src/blenderbim/blenderbim/bim/module/sequence/ui.py +++ b/src/blenderbim/blenderbim/bim/module/sequence/ui.py @@ -351,6 +351,7 @@ class BIM_PT_work_schedules(Panel): def draw_editable_sequence_ui(self, sequence, process_type): task = SequenceData.data["tasks"][sequence[process_type]] row = self.layout.row(align=True) + row.operator("bim.go_to_task", text="", icon="RESTRICT_SELECT_OFF").task = task["id"] row.label(text=task["Identification"] or "XXX") row.label(text=task["Name"] or "Unnamed") row.label(text=sequence["SequenceType"] or "N/A") @@ -765,9 +766,9 @@ class BIM_UL_task_resources(UIList): def draw_item(self, context, layout, data, item, icon, active_data, active_propname): if item: row = layout.row(align=True) + row.operator("bim.go_to_resource", text="", icon="STYLUS_PRESSURE").resource = item.ifc_definition_id row.prop(item, "name", emboss=False, text="") - row.label(text=str(item.schedule_usage)) - + row.prop(item, "schedule_usage", emboss=False, text="") class BIM_UL_animation_colors(UIList): def draw_item(self, context, layout, data, item, icon, active_data, active_propname): @@ -790,7 +791,7 @@ class BIM_UL_product_input_tasks(UIList): def draw_item(self, context, layout, data, item, icon, active_data, active_propname): if item: row = layout.row(align=True) - op = row.operator("bim.highlight_task", text="", icon="STYLUS_PRESSURE") + op = row.operator("bim.go_to_task", text="", icon="STYLUS_PRESSURE") op.task = item.ifc_definition_id row.split(factor=0.8) row.label(text=item.name) @@ -800,7 +801,7 @@ class BIM_UL_product_output_tasks(UIList): def draw_item(self, context, layout, data, item, icon, active_data, active_propname): if item: row = layout.row(align=True) - op = row.operator("bim.highlight_task", text="", icon="STYLUS_PRESSURE") + op = row.operator("bim.go_to_task", text="", icon="STYLUS_PRESSURE") op.task = item.ifc_definition_id row.split(factor=0.8) row.label(text=item.name) diff --git a/src/blenderbim/blenderbim/core/sequence.py b/src/blenderbim/blenderbim/core/sequence.py index eb3bdbc8c9..e0258d39a1 100644 --- a/src/blenderbim/blenderbim/core/sequence.py +++ b/src/blenderbim/blenderbim/core/sequence.py @@ -465,11 +465,11 @@ def load_animation_color_scheme(sequence, scheme): sequence.load_animation_color_scheme(scheme) -def highlight_task(sequence, task=None): +def go_to_task(sequence, task=None): work_schedule = sequence.get_work_schedule(task) is_work_schedule_active = sequence.is_work_schedule_active(work_schedule) if is_work_schedule_active: - sequence.highlight_task(task) + sequence.go_to_task(task) else: return "Work schedule is not active" @@ -485,7 +485,7 @@ def highlight_product_related_task(sequence, spatial, product_type=None): work_schedule = sequence.get_work_schedule(task) is_work_schedule_active = sequence.is_work_schedule_active(work_schedule) if is_work_schedule_active: - sequence.highlight_task(task) + sequence.go_to_task(task) def guess_date_range(sequence, work_schedule=None):