WIP: Refactor NozzleMenu.qml

This commit is contained in:
Lipu Fei 2018-02-13 22:37:43 +01:00
parent cd53ae0639
commit 54363bad02
2 changed files with 7 additions and 44 deletions

View file

@ -1168,11 +1168,11 @@ class MachineManager(QObject):
return ""
@pyqtProperty(str, notify = activeVariantChanged)
def activeVariantId(self) -> str:
def activeVariantName(self) -> str:
if self._active_container_stack:
variant = self._active_container_stack.variant
if variant:
return variant.getId()
return variant.getName()
return ""
@ -1488,7 +1488,9 @@ class MachineManager(QObject):
stacks.append(self._global_container_stack)
return [ s.containersChanged for s in stacks ]
#
# New
#
def _setEmptyQuality(self):
self._current_quality_group = None
self._global_container_stack.quality = self._empty_quality_container

View file

@ -16,20 +16,19 @@ Menu
property bool printerConnected: Cura.MachineManager.printerOutputDevices.length != 0
property bool isClusterPrinter:
{
if(Cura.MachineManager.printerOutputDevices.length == 0)
if (Cura.MachineManager.printerOutputDevices.length == 0)
{
return false;
}
var clusterSize = Cura.MachineManager.printerOutputDevices[0].clusterSize;
// This is not a cluster printer or the cluster it is just one printer
if(clusterSize == undefined || clusterSize == 1)
if (clusterSize == undefined || clusterSize == 1)
{
return false;
}
return true;
}
// TODO: single instance??
Cura.NozzleModel
{
id: nozzleModel
@ -43,55 +42,17 @@ Menu
{
text: model.hotend_name
checkable: true
checked: Cura.MachineManager.activeVariantId == model.hotend_name
checked: Cura.MachineManager.activeVariantName == model.hotend_name
exclusiveGroup: group
onTriggered: {
var position = Cura.ExtruderManager.activeExtruderIndex;
Cura.MachineManager.setVariantGroup(position, model.container_node);
}
visible: true
}
onObjectAdded: menu.insertItem(index, object);
onObjectRemoved: menu.removeItem(object);
}
/*
Instantiator
{
id: nozzleInstantiator
model: UM.InstanceContainersModel
{
filter:
{
var filter_dict =
{
"type": "variant",
"definition": Cura.MachineManager.activeQualityDefinitionId //Only show variants of this machine
}
if (Cura.MachineManager.hasVariantBuildplates)
{
filter_dict["hardware_type"] = "nozzle"
}
return filter_dict
}
}
MenuItem {
text: model.name
checkable: true
checked: model.id == Cura.MachineManager.allActiveVariantIds[Cura.ExtruderManager.extruderIds[extruderIndex]]
exclusiveGroup: group
onTriggered:
{
var activeExtruderIndex = Cura.ExtruderManager.activeExtruderIndex;
Cura.ExtruderManager.setActiveExtruderIndex(extruderIndex);
Cura.MachineManager.setActiveVariant(model.id);
Cura.ExtruderManager.setActiveExtruderIndex(activeExtruderIndex);
}
}
onObjectAdded: menu.insertItem(index, object)
onObjectRemoved: menu.removeItem(object)
} */
ExclusiveGroup { id: group }
}