From 2a949237c1423f851ab5a7ab02d9e28d12791ea7 Mon Sep 17 00:00:00 2001 From: fieldOfView Date: Mon, 11 Jul 2016 12:49:32 +0200 Subject: [PATCH] Do not ask the user about keeping current settings when creating a profile from the current changes. CURA-1885 --- cura/Settings/MachineManager.py | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/cura/Settings/MachineManager.py b/cura/Settings/MachineManager.py index 42802fc8cb..6159283353 100644 --- a/cura/Settings/MachineManager.py +++ b/cura/Settings/MachineManager.py @@ -403,8 +403,8 @@ class MachineManager(QObject): if new_container_id == "": return self.blurSettings.emit() + self.updateQualityContainerFromUserContainer(new_container_id) self.setActiveQuality(new_container_id) - self.updateQualityContainerFromUserContainer() return new_container_id @pyqtSlot(str, result=str) @@ -477,12 +477,23 @@ class MachineManager(QObject): self.setActiveQuality(containers[0].getId()) self.activeQualityChanged.emit() - @pyqtSlot() - def updateQualityContainerFromUserContainer(self): + @pyqtSlot(str) + def updateQualityContainerFromUserContainer(self, quality_id = None): if not self._active_container_stack: return + + if quality_id: + quality = UM.Settings.ContainerRegistry.getInstance().findInstanceContainers(id = quality_id, type = "quality") + if quality: + quality = quality[0] + else: + quality = self._active_container_stack.findContainer({"type": "quality"}) + + if not quality: + return + user_settings = self._active_container_stack.getTop() - quality = self._active_container_stack.findContainer({"type": "quality"}) + for key in user_settings.getAllKeys(): quality.setProperty(key, "value", user_settings.getProperty(key, "value")) self.clearUserSettings() # As all users settings are noq a quality, remove them.