Merge branch 'master' of github.com:Ultimaker/Cura

This commit is contained in:
Jaime van Kessel 2016-09-29 13:56:40 +02:00
commit 6b323dff01
2 changed files with 14 additions and 3 deletions

View File

@ -53,7 +53,9 @@ class QualityManager:
# the current set of selected materials is used.
# \return the matching quality containers \type{List[ContainerInstance]}
def findQualityByQualityType(self, quality_type, machine_definition=None, material_containers=None):
criteria = {"type": "quality", "quality_type": quality_type}
criteria = {"type": "quality"}
if quality_type:
criteria["quality_type"] = quality_type
return self._getFilteredContainersForStack(machine_definition, material_containers, **criteria)
def _getFilteredContainers(self, **kwargs):

View File

@ -580,9 +580,18 @@ class MachineManager(QObject):
[material_container])
if not candidate_qualities:
# Fall back to normal quality
new_quality_id = quality_manager.findQualityByQualityType("normal",
quality_containers = quality_manager.findQualityByQualityType("normal",
quality_manager.getWholeMachineDefinition(machine_definition),
[material_container])[0].getId()
[material_container])
if quality_containers:
new_quality_id = quality_containers[0].getId()
else:
# There is no normal quality for this machine/variant/material combination
quality_containers = quality_manager.findQualityByQualityType(None,
quality_manager.getWholeMachineDefinition(machine_definition),
[material_container])
new_quality_id = quality_containers[0].getId()
else:
if not old_quality_changes:
new_quality_id = candidate_qualities[0].getId()