mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-13 09:47:50 -06:00
Changing the material is now possible
CURA-1278
This commit is contained in:
parent
89c0644e4b
commit
f5e63f2e71
2 changed files with 17 additions and 4 deletions
|
@ -17,8 +17,14 @@ class MachineManagerModel(QObject):
|
||||||
activeMaterialChanged = pyqtSignal()
|
activeMaterialChanged = pyqtSignal()
|
||||||
|
|
||||||
def _onGlobalContainerChanged(self):
|
def _onGlobalContainerChanged(self):
|
||||||
|
Application.getInstance().getGlobalContainerStack().containersChanged.connect(self._onInstanceContainersChanged)
|
||||||
self.globalContainerChanged.emit()
|
self.globalContainerChanged.emit()
|
||||||
|
|
||||||
|
def _onInstanceContainersChanged(self, container):
|
||||||
|
container_type = container.getMetaDataEntry("type")
|
||||||
|
if container_type == "material":
|
||||||
|
self.activeMaterialChanged.emit()
|
||||||
|
|
||||||
@pyqtSlot(str)
|
@pyqtSlot(str)
|
||||||
def setActiveMachine(self, stack_id):
|
def setActiveMachine(self, stack_id):
|
||||||
containers = ContainerRegistry.getInstance().findContainerStacks(id = stack_id)
|
containers = ContainerRegistry.getInstance().findContainerStacks(id = stack_id)
|
||||||
|
@ -61,6 +67,13 @@ class MachineManagerModel(QObject):
|
||||||
if material:
|
if material:
|
||||||
return material.getName()
|
return material.getName()
|
||||||
|
|
||||||
|
@pyqtSlot(str)
|
||||||
|
def setActiveMaterial(self, material_id):
|
||||||
|
containers = ContainerRegistry.getInstance().findInstanceContainers(id=material_id)
|
||||||
|
old_material = Application.getInstance().getGlobalContainerStack().findContainer({"type":"material"})
|
||||||
|
material_index = Application.getInstance().getGlobalContainerStack().getContainerIndex(old_material)
|
||||||
|
Application.getInstance().getGlobalContainerStack().replaceContainer(material_index, containers[0])
|
||||||
|
|
||||||
@pyqtSlot(str, str)
|
@pyqtSlot(str, str)
|
||||||
def renameMachine(self, machine_id, new_name):
|
def renameMachine(self, machine_id, new_name):
|
||||||
containers = ContainerRegistry.getInstance().findContainerStacks(id = machine_id)
|
containers = ContainerRegistry.getInstance().findContainerStacks(id = machine_id)
|
||||||
|
|
|
@ -201,14 +201,14 @@ Item
|
||||||
exclusiveGroup: materialSelectionMenuGroup;
|
exclusiveGroup: materialSelectionMenuGroup;
|
||||||
onTriggered:
|
onTriggered:
|
||||||
{
|
{
|
||||||
UM.MachineManager.setActiveMaterial(machineMaterialsModel.getItem(index).name);
|
Cura.MachineManager.setActiveMaterial(model.id);
|
||||||
if (typeof(model) !== "undefined" && !model.active) {
|
/*if (typeof(model) !== "undefined" && !model.active) {
|
||||||
//Selecting a material was canceled; undo menu selection
|
//Selecting a material was canceled; undo menu selection
|
||||||
materialSelectionInstantiator.model.setProperty(index, "active", false);
|
materialSelectionInstantiator.model.setProperty(index, "active", false);
|
||||||
var activeMaterialName = UM.MachineManager.activeMaterial;
|
var activeMaterialName = Cura.MachineManager.activeMaterialName
|
||||||
var activeMaterialIndex = materialSelectionInstantiator.model.find("name", activeMaterialName);
|
var activeMaterialIndex = materialSelectionInstantiator.model.find("name", activeMaterialName);
|
||||||
materialSelectionInstantiator.model.setProperty(activeMaterialIndex, "active", true);
|
materialSelectionInstantiator.model.setProperty(activeMaterialIndex, "active", true);
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
onObjectAdded: materialSelectionMenu.insertItem(index, object)
|
onObjectAdded: materialSelectionMenu.insertItem(index, object)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue