diff --git a/pype/tools/settings/settings/widgets/item_types.py b/pype/tools/settings/settings/widgets/item_types.py index 706347bd21..f3d51e3f1f 100644 --- a/pype/tools/settings/settings/widgets/item_types.py +++ b/pype/tools/settings/settings/widgets/item_types.py @@ -1464,6 +1464,12 @@ class ListItem(QtWidgets.QWidget, SettingObject): return self.value_input.item_value() return NOT_SET + @property + def is_modified(self): + if self._is_empty: + return False + return self.value_input.is_modified + @property def child_has_studio_override(self): return self.value_input.child_has_studio_override @@ -1708,6 +1714,17 @@ class ListWidget(QtWidgets.QWidget, InputObject): input_field.hierarchical_style_update() self.update_style() + @property + def is_modified(self): + is_modified = super(ListWidget, self).is_modified + if is_modified: + return is_modified + + for input_field in self.input_fields: + if input_field.is_modified: + return True + return False + def update_style(self): if not self.label_widget: return @@ -2027,6 +2044,8 @@ class ModifiableDictItem(QtWidgets.QWidget, SettingObject): @property def is_modified(self): + if self._is_empty: + return False return self.is_value_modified() or self.is_key_modified() def hierarchical_style_update(self):