Skip to content
This repository has been archived by the owner on Sep 20, 2024. It is now read-only.

settings: task types enum entity #1606

Merged
merged 3 commits into from
May 31, 2021
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions openpype/settings/entities/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,7 @@
EnumEntity,
AppsEnumEntity,
ToolsEnumEntity,
TaskTypeEnumEntity,
ProvidersEnum
)

Expand Down Expand Up @@ -154,6 +155,7 @@
"EnumEntity",
"AppsEnumEntity",
"ToolsEnumEntity",
"TaskTypeEnumEntity",
"ProvidersEnum",

"ListEntity",
Expand Down
34 changes: 34 additions & 0 deletions openpype/settings/entities/enum_entity.py
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,40 @@ def set_override_state(self, *args, **kwargs):
self._current_value = new_value


class TaskTypeEnumEntity(BaseEnumEntity):
schema_types = ["task-types-enum"]

def _item_initalization(self):
self.multiselection = True
self.value_on_not_set = []
self.enum_items = []
self.valid_keys = set()
self.valid_value_types = (list, )
self.placeholder = None

def _get_enum_values(self):
from ..lib import get_default_anatomy_settings
anatomy_settings = get_default_anatomy_settings()
iLLiCiTiT marked this conversation as resolved.
Show resolved Hide resolved

valid_keys = set()
enum_items = []
for task_type, _task_attr in anatomy_settings["tasks"].items():
enum_items.append({task_type: task_type})
valid_keys.add(task_type)

return enum_items, valid_keys

def set_override_state(self, *args, **kwargs):
super(TaskTypeEnumEntity, self).set_override_state(*args, **kwargs)

self.enum_items, self.valid_keys = self._get_enum_values()
new_value = []
for key in self._current_value:
if key in self.valid_keys:
new_value.append(key)
self._current_value = new_value


class ProvidersEnum(BaseEnumEntity):
schema_types = ["providers-enum"]

Expand Down