Merge branch 'refactoring_machine_manager' of github.com:Ultimaker/Cura into refactoring_machine_manager

This commit is contained in:
Jack Ha 2018-02-26 09:30:33 +01:00
commit 11be94c735
10 changed files with 77 additions and 110 deletions

View file

@ -404,24 +404,17 @@ class ContainerManager(QObject):
for node in quality_changes_group.getAllNodes():
self._container_registry.removeContainer(node.metadata["id"])
## Rename a set of quality changes containers.
#
# This will search for quality_changes containers matching the supplied name and rename them.
# Note that if the machine specifies that qualities should be filtered by machine and/or material
# only the containers related to the active machine/material are renamed.
# Rename a set of quality changes containers. Returns the new name.
#
# \param quality_name The name of the quality changes containers to rename.
# \param new_name The new name of the quality changes.
#
# \return True if successful, False if not.
@pyqtSlot(QObject, str)
def renameQualityChangesGroup(self, quality_changes_group, new_name):
@pyqtSlot(QObject, str, result = str)
def renameQualityChangesGroup(self, quality_changes_group, new_name) -> str:
Logger.log("i", "Renaming QualityChangesGroup[%s] to [%s]", quality_changes_group.name, new_name)
self._machine_manager.blurSettings.emit()
if new_name == quality_changes_group.name:
Logger.log("i", "QualityChangesGroup name [%s] unchanged.", quality_changes_group.name)
return
return new_name
new_name = self._container_registry.uniqueName(new_name)
for node in quality_changes_group.getAllNodes():
@ -430,6 +423,8 @@ class ContainerManager(QObject):
self._machine_manager.activeQualityChanged.emit()
self._machine_manager.activeQualityGroupChanged.emit()
return new_name
@pyqtSlot(str, "QVariantMap")
def duplicateQualityChanges(self, quality_changes_name, quality_model_item):
global_stack = Application.getInstance().getGlobalContainerStack()

View file

@ -989,7 +989,6 @@ class MachineManager(QObject):
@pyqtSlot("QVariant")
def setGlobalVariant(self, container_node):
Logger.log("d", "---------------- container = [%s]", container_node)
self.blurSettings.emit()
with postponeSignals(*self._getContainerChangedSignals(), compress = CompressTechnique.CompressPerParameterValue):
self._setGlobalVariant(container_node)
@ -998,7 +997,6 @@ class MachineManager(QObject):
@pyqtSlot(str, "QVariant")
def setMaterial(self, position, container_node):
Logger.log("d", "---------------- container = [%s]", container_node)
position = str(position)
self.blurSettings.emit()
with postponeSignals(*self._getContainerChangedSignals(), compress = CompressTechnique.CompressPerParameterValue):
@ -1007,7 +1005,6 @@ class MachineManager(QObject):
@pyqtSlot(str, "QVariant")
def setVariantGroup(self, position, container_node):
Logger.log("d", "---------------- container = [%s]", container_node)
position = str(position)
self.blurSettings.emit()
with postponeSignals(*self._getContainerChangedSignals(), compress = CompressTechnique.CompressPerParameterValue):
@ -1015,32 +1012,27 @@ class MachineManager(QObject):
self._updateMaterialWithVariant(position)
self._updateQualityWithMaterial()
@pyqtSlot("QVariant")
@pyqtSlot(QObject)
def setQualityGroup(self, quality_group):
Logger.log("d", "---------------- qg = [%s]", quality_group.name)
self.blurSettings.emit()
with postponeSignals(*self._getContainerChangedSignals(), compress = CompressTechnique.CompressPerParameterValue):
self._setQualityGroup(quality_group)
Logger.log("d", "Quality set!")
# See if we need to show the Discard or Keep changes screen
if self.hasUserSettings and Preferences.getInstance().getValue("cura/active_mode") == 1:
Application.getInstance().discardOrKeepProfileChanges()
@pyqtProperty("QVariant", fset = setQualityGroup, notify = activeQualityGroupChanged)
@pyqtProperty(QObject, fset = setQualityGroup, notify = activeQualityGroupChanged)
def activeQualityGroup(self):
return self._current_quality_group
@pyqtSlot("QVariant")
@pyqtSlot(QObject)
def setQualityChangesGroup(self, quality_changes_group):
Logger.log("d", "---------------- qcg = [%s]", quality_changes_group.name)
self.blurSettings.emit()
with postponeSignals(*self._getContainerChangedSignals(), compress = CompressTechnique.CompressPerParameterValue):
self._setQualityChangesGroup(quality_changes_group)
Logger.log("d", "Quality changes set!")
@pyqtProperty("QVariant", fset = setQualityChangesGroup, notify = activeQualityChangesGroupChanged)
@pyqtProperty(QObject, fset = setQualityChangesGroup, notify = activeQualityChangesGroupChanged)
def activeQualityChangesGroup(self):
return self._current_quality_changes_group