diff --git a/cura/Settings/SettingInheritanceManager.py b/cura/Settings/SettingInheritanceManager.py index 4d1e60a739..6e8c13640c 100644 --- a/cura/Settings/SettingInheritanceManager.py +++ b/cura/Settings/SettingInheritanceManager.py @@ -168,12 +168,16 @@ class SettingInheritanceManager(QObject): if value is not None: # If a setting doesn't use any keys, it won't change it's value, so treat it as if it's a fixed value has_setting_function = isinstance(value, UM.Settings.SettingFunction) and len(value.getUsedSettingKeys()) > 0 + if key == "prime_tower_size": + print(container.getId()) if has_setting_function is False: has_non_function_value = True continue if has_setting_function: break # There is a setting function somewhere, stop looking deeper. + if key == "prime_tower_size": + print("YAY", has_setting_function, has_non_function_value) return has_setting_function and has_non_function_value def _update(self): diff --git a/resources/qml/Settings/SettingItem.qml b/resources/qml/Settings/SettingItem.qml index 2aa15e9244..5e1e4b21dc 100644 --- a/resources/qml/Settings/SettingItem.qml +++ b/resources/qml/Settings/SettingItem.qml @@ -227,7 +227,7 @@ Item { focus = true; // Get the most shallow function value (eg not a number) that we can find. - var last_entry = propertyProvider.stackLevels[propertyProvider.stackLevels.length] + var last_entry = propertyProvider.stackLevels[propertyProvider.stackLevels.length - 1] for (var i = 1; i < base.stackLevels.length; i++) { var has_setting_function = typeof(propertyProvider.getPropertyValue("value", base.stackLevels[i])) == "object";