diff --git a/cura/Settings/MachineManager.py b/cura/Settings/MachineManager.py index 42784e4e38..417e948773 100644 --- a/cura/Settings/MachineManager.py +++ b/cura/Settings/MachineManager.py @@ -731,6 +731,16 @@ class MachineManager(QObject): return "" + ## Gets how the active definition calls variants + # Caveat: per-definition-variant-title is currently not translated (though the fallback is) + @pyqtProperty(str, notify = globalContainerChanged) + def activeDefinitionVariantsName(self): + fallback_title = catalog.i18nc("@label", "Nozzle") + if self._global_container_stack: + return self._global_container_stack.getBottom().getMetaDataEntry("variants_name", fallback_title) + + return fallback_title + @pyqtSlot(str, str) def renameMachine(self, machine_id, new_name): containers = UM.Settings.ContainerRegistry.getInstance().findContainerStacks(id = machine_id) diff --git a/resources/qml/SidebarHeader.qml b/resources/qml/SidebarHeader.qml index b1cf45f6d3..ff2a6a19a2 100644 --- a/resources/qml/SidebarHeader.qml +++ b/resources/qml/SidebarHeader.qml @@ -183,8 +183,23 @@ Column Label { id: variantLabel - text: (Cura.MachineManager.hasVariants && Cura.MachineManager.hasMaterials) ? catalog.i18nc("@label","Nozzle & Material:"): - Cura.MachineManager.hasVariants ? catalog.i18nc("@label","Nozzle:") : catalog.i18nc("@label","Material:"); + text: + { + var label; + if(Cura.MachineManager.hasVariants && Cura.MachineManager.hasMaterials) + { + label = "%1 & %2".arg(Cura.MachineManager.activeDefinitionVariantsName).arg(catalog.i18nc("@label","Material")); + } + else if(Cura.MachineManager.hasVariants) + { + label = Cura.MachineManager.activeDefinitionVariantsName; + } + else + { + label = catalog.i18nc("@label","Material"); + } + return "%1:".arg(label); + } anchors.verticalCenter: parent.verticalCenter width: parent.width * 0.45 - UM.Theme.getSize("default_margin").width