Merge branch 'develop' into 3.0/settings_styles

This commit is contained in:
Milan Kolar 2020-12-04 12:26:24 +01:00
commit 17d63a6e43
3 changed files with 14 additions and 15 deletions

View file

@ -244,7 +244,6 @@ class SettingsCategoryWidget(QtWidgets.QWidget):
def _on_hide_studio_overrides(self, state):
self._hide_studio_overrides = (state == QtCore.Qt.Checked)
self._update_values()
self.hierarchical_style_update()
def _save_as_defaults(self):
if not self.items_are_valid():
@ -288,7 +287,6 @@ class SettingsCategoryWidget(QtWidgets.QWidget):
reset_default_settings()
self._update_values()
self.hierarchical_style_update()
def _update_values(self):
self.ignore_value_changes = True
@ -590,14 +588,11 @@ class ProjectWidget(SettingsCategoryWidget):
project_anatomy_data = output_data.get(PROJECT_ANATOMY_KEY, {})
save_project_anatomy(self.project_name, project_anatomy_data)
if studio_overrides:
# Update saved values
self._update_values()
else:
# Refill values with overrides
self._on_project_change()
def update_values(self):
if self.project_name is not None:
self._on_project_change()
return
default_values = lib.convert_data_to_gui_data(
{self.main_schema_key: get_default_settings()}
)

View file

@ -326,9 +326,11 @@ class SettingObject:
return True
if self.is_overidable:
if self.as_widget:
return self._was_overriden != self.is_overriden
return self.was_overriden != self.is_overriden
else:
return self.has_studio_override != self.had_studio_override
return self.has_studio_override != self.had_studio_override
@property
def is_overriden(self):
@ -1744,7 +1746,9 @@ class ListWidget(QtWidgets.QWidget, InputObject):
def apply_overrides(self, parent_values):
self._is_modified = False
if parent_values is NOT_SET or self.key not in parent_values:
if self.as_widget:
override_value = parent_values
elif parent_values is NOT_SET or self.key not in parent_values:
override_value = NOT_SET
else:
override_value = parent_values[self.key]
@ -2345,9 +2349,9 @@ class ModifiableDictItem(QtWidgets.QWidget, SettingObject):
if self._is_empty:
return False
return (
self.is_value_modified()
or self.is_key_modified()
self.is_key_modified()
or self.is_key_label_modified()
or self.is_value_modified()
)
def hierarchical_style_update(self):