mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-25 07:33:57 -06:00
Fix cases where there is no "normal" quality
CURA-2494
This commit is contained in:
parent
2742a4ef65
commit
040f49e474
2 changed files with 14 additions and 3 deletions
|
@ -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):
|
||||
|
|
|
@ -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()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue