Moved addMachine to machineManager

CURA-1278
This commit is contained in:
Jaime van Kessel 2016-05-12 15:18:13 +02:00
parent a16acddff1
commit 44f5559db3
2 changed files with 13 additions and 1 deletions

View file

@ -2,6 +2,7 @@
from PyQt5.QtCore import QObject, pyqtSlot, pyqtProperty, pyqtSignal from PyQt5.QtCore import QObject, pyqtSlot, pyqtProperty, pyqtSignal
from UM.Application import Application from UM.Application import Application
from UM.Settings.ContainerRegistry import ContainerRegistry from UM.Settings.ContainerRegistry import ContainerRegistry
from UM.Settings.ContainerStack import ContainerStack
class MachineManagerModel(QObject): class MachineManagerModel(QObject):
def __init__(self, parent = None): def __init__(self, parent = None):
@ -19,6 +20,17 @@ class MachineManagerModel(QObject):
if containers: if containers:
Application.getInstance().setGlobalContainerStack(containers[0]) Application.getInstance().setGlobalContainerStack(containers[0])
@pyqtSlot(str, str)
def addMachine(self,name, definition_id):
definitions = ContainerRegistry.getInstance().findDefinitionContainers(id=definition_id)
if definitions:
new_global_stack = ContainerStack(name)
new_global_stack.addMetaDataEntry("type", "machine")
ContainerRegistry.getInstance().addContainer(new_global_stack)
# If a definition is found, its a list. Should only have one item.
new_global_stack.addContainer(definitions[0])
Application.getInstance().setGlobalContainerStack(new_global_stack)
@pyqtProperty(str, notify = globalContainerChanged) @pyqtProperty(str, notify = globalContainerChanged)
def activeMachineName(self): def activeMachineName(self):
return Application.getInstance().getGlobalContainerStack().getName() return Application.getInstance().getGlobalContainerStack().getName()

View file

@ -161,7 +161,7 @@ UM.Dialog
{ {
base.visible = false base.visible = false
var item = machineList.model.getItem(machineList.currentIndex); var item = machineList.model.getItem(machineList.currentIndex);
machineList.model.setNewGlobalStackFromDefinition(machineName.text, item.id) Cura.MachineManager.addMachine(machineName.text, item.id)
} }
} }