Browse Source

No keep/discard setting dialog in project loading

CURA-4966
Lipu Fei 7 years ago
parent
commit
ef8cd304dc
2 changed files with 6 additions and 6 deletions
  1. 4 4
      cura/Settings/MachineManager.py
  2. 2 2
      plugins/3MFReader/ThreeMFWorkspaceReader.py

+ 4 - 4
cura/Settings/MachineManager.py

@@ -1012,13 +1012,13 @@ class MachineManager(QObject):
             self._updateQualityWithMaterial()
 
     @pyqtSlot(QObject)
-    def setQualityGroup(self, quality_group):
+    def setQualityGroup(self, quality_group, no_dialog = False):
         self.blurSettings.emit()
         with postponeSignals(*self._getContainerChangedSignals(), compress = CompressTechnique.CompressPerParameterValue):
             self._setQualityGroup(quality_group)
 
         # See if we need to show the Discard or Keep changes screen
-        if self.hasUserSettings and Preferences.getInstance().getValue("cura/active_mode") == 1:
+        if not no_dialog and self.hasUserSettings and Preferences.getInstance().getValue("cura/active_mode") == 1:
             self._application.discardOrKeepProfileChanges()
 
     @pyqtProperty(QObject, fset = setQualityGroup, notify = activeQualityGroupChanged)
@@ -1026,13 +1026,13 @@ class MachineManager(QObject):
         return self._current_quality_group
 
     @pyqtSlot(QObject)
-    def setQualityChangesGroup(self, quality_changes_group):
+    def setQualityChangesGroup(self, quality_changes_group, no_dialog = False):
         self.blurSettings.emit()
         with postponeSignals(*self._getContainerChangedSignals(), compress = CompressTechnique.CompressPerParameterValue):
             self._setQualityChangesGroup(quality_changes_group)
 
         # See if we need to show the Discard or Keep changes screen
-        if self.hasUserSettings and Preferences.getInstance().getValue("cura/active_mode") == 1:
+        if not no_dialog and self.hasUserSettings and Preferences.getInstance().getValue("cura/active_mode") == 1:
             self._application.discardOrKeepProfileChanges()
 
     @pyqtProperty(QObject, fset = setQualityChangesGroup, notify = activeQualityChangesGroupChanged)

+ 2 - 2
plugins/3MFReader/ThreeMFWorkspaceReader.py

@@ -980,7 +980,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
                 Logger.log("e", "Could not find quality_changes [%s]", self._quality_changes_to_apply)
                 return
             quality_changes_group = quality_changes_group_dict[self._quality_changes_to_apply]
-            machine_manager.setQualityChangesGroup(quality_changes_group)
+            machine_manager.setQualityChangesGroup(quality_changes_group, no_dialog = True)
         else:
             self._quality_type_to_apply = self._quality_type_to_apply.lower()
             quality_group_dict = quality_manager.getQualityGroups(global_stack)
@@ -995,7 +995,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
                     Logger.log("e", "Could not get preferred quality type [%s]", preferred_quality_type)
 
             if quality_group is not None:
-                machine_manager.setQualityGroup(quality_group)
+                machine_manager.setQualityGroup(quality_group, no_dialog = True)
 
         # Notify everything/one that is to notify about changes.
         global_stack.containersChanged.emit(global_stack.getTop())