mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-07 06:57:28 -06:00
Fix showing profile values for extruders
The profiles page would show the setting values in the quality profile, ignoring the quality_changes profile, because it could not find the appropriate quality_changes profile for the extruders CURA-2478
This commit is contained in:
parent
0e74b8eb08
commit
e7da471199
4 changed files with 27 additions and 5 deletions
|
@ -29,6 +29,9 @@ class ExtrudersModel(UM.Qt.ListModel.ListModel):
|
|||
# containers.
|
||||
IndexRole = Qt.UserRole + 4
|
||||
|
||||
# The ID of the definition of the extruder.
|
||||
DefinitionRole = Qt.UserRole + 5
|
||||
|
||||
## List of colours to display if there is no material or the material has no known
|
||||
# colour.
|
||||
defaultColors = ["#ffc924", "#86ec21", "#22eeee", "#245bff", "#9124ff", "#ff24c8"]
|
||||
|
@ -44,6 +47,7 @@ class ExtrudersModel(UM.Qt.ListModel.ListModel):
|
|||
self.addRoleName(self.NameRole, "name")
|
||||
self.addRoleName(self.ColorRole, "color")
|
||||
self.addRoleName(self.IndexRole, "index")
|
||||
self.addRoleName(self.DefinitionRole, "definition")
|
||||
|
||||
self._add_global = False
|
||||
self._simple_names = False
|
||||
|
@ -126,7 +130,8 @@ class ExtrudersModel(UM.Qt.ListModel.ListModel):
|
|||
"id": global_container_stack.getId(),
|
||||
"name": "Global",
|
||||
"color": color,
|
||||
"index": -1
|
||||
"index": -1,
|
||||
"definition": ""
|
||||
}
|
||||
items.append(item)
|
||||
changed = True
|
||||
|
@ -148,7 +153,8 @@ class ExtrudersModel(UM.Qt.ListModel.ListModel):
|
|||
"id": extruder.getId(),
|
||||
"name": extruder_name,
|
||||
"color": color,
|
||||
"index": position
|
||||
"index": position,
|
||||
"definition": extruder.getBottom().getId()
|
||||
}
|
||||
items.append(item)
|
||||
changed = True
|
||||
|
|
|
@ -25,6 +25,7 @@ class QualitySettingsModel(UM.Qt.ListModel.ListModel):
|
|||
self._container_registry = UM.Settings.ContainerRegistry.getInstance()
|
||||
|
||||
self._extruder_id = None
|
||||
self._extruder_definition_id = None
|
||||
self._quality = None
|
||||
self._material = None
|
||||
|
||||
|
@ -46,6 +47,17 @@ class QualitySettingsModel(UM.Qt.ListModel.ListModel):
|
|||
def extruderId(self):
|
||||
return self._extruder_id
|
||||
|
||||
def setExtruderDefinition(self, extruder_definition):
|
||||
if extruder_definition != self._extruder_definition_id:
|
||||
self._extruder_definition_id = extruder_definition
|
||||
self._update()
|
||||
self.extruderDefinitionChanged.emit()
|
||||
|
||||
extruderDefinitionChanged = pyqtSignal()
|
||||
@pyqtProperty(str, fset = setExtruderDefinition, notify = extruderDefinitionChanged)
|
||||
def extruderDefinition(self):
|
||||
return self._extruder_definition_id
|
||||
|
||||
def setQuality(self, quality):
|
||||
if quality != self._quality:
|
||||
self._quality = quality
|
||||
|
@ -138,8 +150,9 @@ class QualitySettingsModel(UM.Qt.ListModel.ListModel):
|
|||
|
||||
if quality_changes_container:
|
||||
criteria = {"type": "quality_changes", "quality_type": quality_type, "definition": definition_id, "name": quality_changes_container.getName()}
|
||||
if self._extruder_id != "":
|
||||
criteria["extruder"] = self._extruder_id
|
||||
if self._extruder_definition_id != "":
|
||||
criteria["extruder"] = self._extruder_definition_id
|
||||
criteria["name"] = "%s_%s" % (self._extruder_definition_id, quality_changes_container.getName())
|
||||
else:
|
||||
criteria["extruder"] = None
|
||||
|
||||
|
|
|
@ -12,6 +12,7 @@ Tab
|
|||
id: base
|
||||
|
||||
property string extruderId: "";
|
||||
property string extruderDefinition: "";
|
||||
property string quality: "";
|
||||
property string material: "";
|
||||
|
||||
|
@ -55,7 +56,8 @@ Tab
|
|||
|
||||
model: Cura.QualitySettingsModel
|
||||
{
|
||||
extruderId: base.extruderId != "" ? base.extruderId : ""
|
||||
extruderId: base.extruderId
|
||||
extruderDefinition: base.extruderDefinition
|
||||
quality: base.quality != null ? base.quality : ""
|
||||
material: base.material != null ? base.material : ""
|
||||
}
|
||||
|
|
|
@ -223,6 +223,7 @@ UM.ManagementPage
|
|||
{
|
||||
title: model.name;
|
||||
extruderId: model.id;
|
||||
extruderDefinition: model.definition;
|
||||
quality: base.currentItem != null ? base.currentItem.id : "";
|
||||
material: Cura.MachineManager.allActiveMaterialIds[model.id]
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue