CURA-4400 fix per object setting change reslicing without reevaluate is non printing mesh all the time

This commit is contained in:
Jack Ha 2018-03-08 13:57:11 +01:00
parent 961b868424
commit a9976e93c1

View File

@ -94,8 +94,13 @@ class SettingOverrideDecorator(SceneNodeDecorator):
return any(bool(self._stack.getProperty(setting, "value")) for setting in self._non_printing_mesh_settings) return any(bool(self._stack.getProperty(setting, "value")) for setting in self._non_printing_mesh_settings)
def _onSettingChanged(self, instance, property_name): # Reminder: 'property' is a built-in function def _onSettingChanged(self, instance, property_name): # Reminder: 'property' is a built-in function
# Trigger slice/need slicing if the value has changed. object_has_instance_setting = False
if property_name == "value" and instance in self._non_printing_mesh_settings: for container in self._stack.getContainers():
if container.hasProperty(instance, "value"):
object_has_instance_setting = True
break
if property_name == "value" and object_has_instance_setting:
# Trigger slice/need slicing if the value has changed.
self._is_non_printing_mesh = self.evaluateIsNonPrintingMesh() self._is_non_printing_mesh = self.evaluateIsNonPrintingMesh()
Application.getInstance().getBackend().needsSlicing() Application.getInstance().getBackend().needsSlicing()