CURA-4606 cleanup and optimization for replaceContainer

This commit is contained in:
Jack Ha 2018-02-14 11:12:21 +01:00 committed by Lipu Fei
parent bf2317a74d
commit 8aab8f4394
6 changed files with 8 additions and 23 deletions

View file

@ -239,7 +239,8 @@ class QualityManager(QObject):
machine_node = self._machine_quality_type_to_quality_changes_dict.get(machine_definition_id)
if not machine_node:
raise RuntimeError("Cannot find node for machine def [%s] in QualityChanges lookup table" % machine_definition_id)
Logger.log("e", "Cannot find node for machine def [%s] in QualityChanges lookup table", machine_definition_id)
return {}
# Update availability for each QualityChangesGroup:
# A custom profile is always available as long as the quality_type it's based on is available

View file

@ -348,6 +348,10 @@ class CuraContainerStack(ContainerStack):
elif container != self._empty_instance_container and container.getMetaDataEntry("type") != expected_type:
raise Exceptions.InvalidContainerError("Cannot replace container at index {index} with a container that is not of {type} type, but {actual_type} type.".format(index = index, type = expected_type, actual_type = container.getMetaDataEntry("type")))
current_container = self._containers[index]
if current_container.getId() == container.getId():
return
super().replaceContainer(index, container, postpone_emit)
## Overridden from ContainerStack

View file

@ -1642,6 +1642,7 @@ class MachineManager(QObject):
self.blurSettings.emit()
with postponeSignals(*self._getContainerChangedSignals(), compress = CompressTechnique.CompressPerParameterValue):
self._setQualityGroup(quality_group)
Logger.log("d", "Quality set!")
@pyqtProperty("QVariant", fset = setQualityGroup, notify = activeQualityGroupChanged)
def activeQualityGroup(self):

View file

@ -13,12 +13,6 @@ Menu
title: "Material"
property int extruderIndex: 0
property bool printerConnected: Cura.MachineManager.printerOutputDevices.length != 0
MenuSeparator
{
visible: automaticMaterial.visible
}
Instantiator
{

View file

@ -13,21 +13,6 @@ Menu
title: "Nozzle"
property int extruderIndex: 0
property bool printerConnected: Cura.MachineManager.printerOutputDevices.length != 0
property bool isClusterPrinter:
{
if (Cura.MachineManager.printerOutputDevices.length == 0)
{
return false;
}
var clusterSize = Cura.MachineManager.printerOutputDevices[0].clusterSize;
// This is not a cluster printer or the cluster it is just one printer
if (clusterSize == undefined || clusterSize == 1)
{
return false;
}
return true;
}
Cura.NozzleModel
{

View file

@ -19,7 +19,7 @@ Menu
{
text: (model.layer_height != "") ? model.name + " - " + model.layer_height : model.name
checkable: true
checked: Cura.MachineManager.activeQualityGroup.getName() == model.name
checked: Cura.MachineManager.activeQualityGroup && (Cura.MachineManager.activeQualityGroup.getName() == model.name)
exclusiveGroup: group
onTriggered: {
Cura.MachineManager.setQualityGroup(model.quality_group)