Cura/resources/qml/Menus/NozzleMenu.qml
2022-01-11 10:31:39 +01:00

60 lines
1.5 KiB
QML

// Copyright (c) 2022 Ultimaker B.V.
// Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.10
import QtQuick.Controls 2.4
import UM 1.5 as UM
import Cura 1.0 as Cura
UM.Menu
{
id: nozzleMenu
title: "Nozzle"
property int extruderIndex: 0
Cura.NozzleModel
{
id: nozzleModel
}
Instantiator
{
model: nozzleModel
UM.MenuItem
{
text: model.hotend_name
checkable: true
property var activeMachine: Cura.MachineManager.activeMachine
checked:
{
if (activeMachine === null)
{
return false
}
var extruder = Cura.MachineManager.activeMachine.extruderList[extruderIndex]
return (extruder === undefined) ? false : (extruder.variant.name == model.hotend_name)
}
enabled:
{
if (activeMachine === null)
{
return false
}
var extruder = Cura.MachineManager.activeMachine.extruderList[extruderIndex]
return (extruder === undefined) ? false : extruder.isEnabled
}
onTriggered:Cura.MachineManager.setVariant(nozzleMenu.extruderIndex, model.container_node)
}
onObjectAdded:
{
nozzleMenu.insertItem(index, object)
}
onObjectRemoved: nozzleMenu.removeItem(object)
}
}