mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-26 13:52:15 +01:00
AnatomyEntity makes sure that all children all overriden on project overrides
This commit is contained in:
parent
1d55c434b7
commit
95d8f7fb31
1 changed files with 17 additions and 0 deletions
|
|
@ -1,8 +1,25 @@
|
|||
from .dict_immutable_keys_entity import DictImmutableKeysEntity
|
||||
from .lib import OverrideState
|
||||
|
||||
|
||||
class AnatomyEntity(DictImmutableKeysEntity):
|
||||
schema_types = ["anatomy"]
|
||||
|
||||
def _update_current_metadata(self):
|
||||
if self._override_state is OverrideState.PROJECT:
|
||||
return {}
|
||||
return super(AnatomyEntity, self)._update_current_metadata()
|
||||
|
||||
def set_override_state(self, *args, **kwargs):
|
||||
super(AnatomyEntity, self).set_override_state(*args, **kwargs)
|
||||
if self._override_state is OverrideState.PROJECT:
|
||||
for child_obj in self.non_gui_children.values():
|
||||
if not child_obj.has_project_override:
|
||||
self.add_to_project_override()
|
||||
break
|
||||
|
||||
def on_child_change(self, child_obj):
|
||||
if self._override_state is OverrideState.PROJECT:
|
||||
if not child_obj.has_project_override:
|
||||
child_obj.add_to_project_override()
|
||||
return super(AnatomyEntity, self).on_child_change(child_obj)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue