mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
check if make sence to do any changes before execution of the action
This commit is contained in:
parent
db1cb01580
commit
bfc07c8ba6
3 changed files with 17 additions and 14 deletions
|
|
@ -519,6 +519,9 @@ class DictMutableKeysEntity(EndpointEntity):
|
|||
self.had_project_override = value is not NOT_SET
|
||||
|
||||
def _discard_changes(self, on_change_trigger):
|
||||
if not self.can_discard_changes:
|
||||
return
|
||||
|
||||
self.set_override_state(self._override_state)
|
||||
on_change_trigger.append(self.on_change)
|
||||
|
||||
|
|
@ -527,6 +530,9 @@ class DictMutableKeysEntity(EndpointEntity):
|
|||
self.on_change()
|
||||
|
||||
def _remove_from_studio_default(self, on_change_trigger):
|
||||
if not self.can_remove_from_studio_default:
|
||||
return
|
||||
|
||||
value = self._default_value
|
||||
if value is NOT_SET:
|
||||
value = self.value_on_not_set
|
||||
|
|
@ -555,10 +561,7 @@ class DictMutableKeysEntity(EndpointEntity):
|
|||
self.on_change()
|
||||
|
||||
def _remove_from_project_override(self, on_change_trigger):
|
||||
if self._override_state is not OverrideState.PROJECT:
|
||||
return
|
||||
|
||||
if not self.has_project_override:
|
||||
if not self.can_remove_from_project_override:
|
||||
return
|
||||
|
||||
if self._has_studio_override:
|
||||
|
|
|
|||
|
|
@ -251,6 +251,9 @@ class InputEntity(EndpointEntity):
|
|||
self._current_value = copy.deepcopy(value)
|
||||
|
||||
def _discard_changes(self, on_change_trigger=None):
|
||||
if not self.can_discard_changes:
|
||||
return
|
||||
|
||||
self._value_is_modified = False
|
||||
if self._override_state >= OverrideState.PROJECT:
|
||||
self._has_project_override = self.had_project_override
|
||||
|
|
@ -286,6 +289,9 @@ class InputEntity(EndpointEntity):
|
|||
self.on_change()
|
||||
|
||||
def _remove_from_studio_default(self, on_change_trigger):
|
||||
if not self.can_remove_from_studio_default:
|
||||
return
|
||||
|
||||
value = self._default_value
|
||||
if value is NOT_SET:
|
||||
value = self.value_on_not_set
|
||||
|
|
@ -301,10 +307,7 @@ class InputEntity(EndpointEntity):
|
|||
self.on_change()
|
||||
|
||||
def _remove_from_project_override(self, on_change_trigger):
|
||||
if self._override_state is not OverrideState.PROJECT:
|
||||
return
|
||||
|
||||
if not self._has_project_override:
|
||||
if not self.can_remove_from_project_override:
|
||||
return
|
||||
|
||||
self._has_project_override = False
|
||||
|
|
|
|||
|
|
@ -343,7 +343,7 @@ class ListEntity(EndpointEntity):
|
|||
return output
|
||||
|
||||
def _discard_changes(self, on_change_trigger):
|
||||
if self._override_state is OverrideState.NOT_DEFINED:
|
||||
if not self.can_discard_changes:
|
||||
return
|
||||
|
||||
not_set = object()
|
||||
|
|
@ -405,7 +405,7 @@ class ListEntity(EndpointEntity):
|
|||
self.on_change()
|
||||
|
||||
def _remove_from_studio_default(self, on_change_trigger):
|
||||
if self._override_state is not OverrideState.STUDIO:
|
||||
if not self.can_remove_from_studio_default:
|
||||
return
|
||||
|
||||
value = self._default_value
|
||||
|
|
@ -433,10 +433,7 @@ class ListEntity(EndpointEntity):
|
|||
self.on_change()
|
||||
|
||||
def _remove_from_project_override(self, on_change_trigger):
|
||||
if self._override_state is not OverrideState.PROJECT:
|
||||
return
|
||||
|
||||
if not self.has_project_override:
|
||||
if not self.can_remove_from_project_override:
|
||||
return
|
||||
|
||||
if self._has_studio_override:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue