diff --git a/client/ayon_core/tools/publisher/control.py b/client/ayon_core/tools/publisher/control.py index ede772b917..d114524f84 100644 --- a/client/ayon_core/tools/publisher/control.py +++ b/client/ayon_core/tools/publisher/control.py @@ -38,7 +38,7 @@ from ayon_core.pipeline.create.context import ( ConvertorsOperationFailed, ) from ayon_core.pipeline.publish import get_publish_instance_label -from ayon_core.tools.common_models import HierarchyModel +from ayon_core.tools.common_models import ProjectsModel, HierarchyModel # Define constant for plugin orders offset PLUGIN_ORDER_OFFSET = 0.5 @@ -1630,6 +1630,7 @@ class PublisherController(BasePublisherController): self._resetting_instances = False # Cacher of avalon documents + self._projects_model = ProjectsModel(self) self._hierarchy_model = HierarchyModel(self) @property @@ -1686,6 +1687,16 @@ class PublisherController(BasePublisherController): """Publish plugins.""" return self._create_context.publish_plugins + def get_folder_type_items(self, project_name, sender=None): + return self._projects_model.get_folder_type_items( + project_name, sender + ) + + def get_task_type_items(self, project_name, sender=None): + return self._projects_model.get_task_type_items( + project_name, sender + ) + # Hierarchy model def get_folder_items(self, project_name, sender=None): return self._hierarchy_model.get_folder_items(project_name, sender) diff --git a/client/ayon_core/tools/publisher/widgets/create_context_widgets.py b/client/ayon_core/tools/publisher/widgets/create_context_widgets.py index 235a778d0f..18df798bf0 100644 --- a/client/ayon_core/tools/publisher/widgets/create_context_widgets.py +++ b/client/ayon_core/tools/publisher/widgets/create_context_widgets.py @@ -128,6 +128,16 @@ class CreateHierarchyController: project_name, folder_id, sender ) + def get_folder_type_items(self, project_name, sender=None): + return self._controller.get_folder_type_items( + project_name, sender + ) + + def get_task_type_items(self, project_name, sender=None): + return self._controller.get_task_type_items( + project_name, sender + ) + # Selection model def set_selected_project(self, project_name): self._selection_model.set_selected_project(project_name) diff --git a/client/ayon_core/tools/publisher/widgets/folders_dialog.py b/client/ayon_core/tools/publisher/widgets/folders_dialog.py index 8dce7aba3a..28bdce37b1 100644 --- a/client/ayon_core/tools/publisher/widgets/folders_dialog.py +++ b/client/ayon_core/tools/publisher/widgets/folders_dialog.py @@ -26,6 +26,11 @@ class FoldersDialogController: def get_folder_items(self, project_name, sender=None): return self._controller.get_folder_items(project_name, sender) + def get_folder_type_items(self, project_name, sender=None): + return self._controller.get_folder_type_items( + project_name, sender + ) + def set_selected_folder(self, folder_id): pass