diff --git a/src/blenderbim/blenderbim/bim/module/sequence/prop.py b/src/blenderbim/blenderbim/bim/module/sequence/prop.py index e6ce095872..0a27e24757 100644 --- a/src/blenderbim/blenderbim/bim/module/sequence/prop.py +++ b/src/blenderbim/blenderbim/bim/module/sequence/prop.py @@ -286,6 +286,11 @@ def update_sort_reversed(self, context): work_schedule=tool.Ifc.get().by_id(context.scene.BIMWorkScheduleProperties.active_work_schedule_id), ) +def update_filter_by_active_schedule(self, context): + if context.active_object: + core.load_product_related_tasks( + tool.Sequence, product=tool.Ifc.get().by_id(context.active_object.BIMObjectProperties.ifc_definition_id) + ) class Task(PropertyGroup): name: StringProperty(name="Name", update=updateTaskName) @@ -420,7 +425,7 @@ class BIMWorkScheduleProperties(PropertyGroup): enable_reorder: BoolProperty(name="Enable Reorder", default=False) show_task_operators: BoolProperty(name="Show Task Options", default=True) should_show_schedule_baseline_ui: BoolProperty(name="Baselines", default=False) - filter_by_active_schedule: BoolProperty(name="Filter By Active Schedule", default=False) + filter_by_active_schedule: BoolProperty(name="Filter By Active Schedule", default=False, update = update_filter_by_active_schedule) class BIMTaskTreeProperties(PropertyGroup): diff --git a/src/blenderbim/blenderbim/core/sequence.py b/src/blenderbim/blenderbim/core/sequence.py index 4a2b625cf1..1a68ffd9ea 100644 --- a/src/blenderbim/blenderbim/core/sequence.py +++ b/src/blenderbim/blenderbim/core/sequence.py @@ -556,7 +556,10 @@ def load_product_related_tasks(sequence, product=None): filter_by_schedule = sequence.is_filter_by_active_schedule() if filter_by_schedule: work_schedule = sequence.get_active_work_schedule() - task_inputs, task_ouputs = sequence.get_tasks_for_product(product, work_schedule) + if work_schedule: + task_inputs, task_ouputs = sequence.get_tasks_for_product(product, work_schedule) + else: + return "No active work schedule" else: task_inputs, task_ouputs = sequence.get_tasks_for_product(product) sequence.load_product_related_tasks(task_inputs, task_ouputs)