Add properties for user changes etc. to ExtruderStack

This commit is contained in:
Arjen Hiemstra 2017-03-23 00:03:58 +01:00
parent ccd22ef36d
commit dd8ea6175c

View file

@ -1,6 +1,8 @@
# Copyright (c) 2017 Ultimaker B.V.
# Cura is released under the terms of the AGPLv3 or higher.
from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot
from UM.MimeTypeDatabase import MimeType, MimeTypeDatabase
from UM.Settings.ContainerStack import ContainerStack
from UM.Settings.ContainerRegistry import ContainerRegistry
@ -9,6 +11,30 @@ class ExtruderStack(ContainerStack):
def __init__(self, container_id, *args, **kwargs):
super().__init__(container_id, *args, **kwargs)
@pyqtProperty(InstanceContainer)
def userChanges(self) -> InstanceContainer:
return self._containers[_ContainerIndexes.UserChanges]
@pyqtProperty(InstanceContainer)
def qualityChanges(self) -> InstanceContainer:
return self._containers[_ContainerIndexes.QualityChanges]
@pyqtProperty(InstanceContainer)
def quality(self) -> InstanceContainer:
return self._containers[_ContainerIndexes.Quality]
@pyqtProperty(InstanceContainer)
def material(self) -> InstanceContainer:
return self._containers[_ContainerIndexes.Material]
@pyqtProperty(InstanceContainer)
def variant(self) -> InstanceContainer:
return self._containers[_ContainerIndexes.Variant]
@pyqtProperty(DefinitionContainer)
def definition(self) -> DefinitionContainer:
return self._containers[_ContainerIndexes.Definition]
extruder_stack_mime = MimeType(
name = "application/x-cura-extruderstack",
comment = "Cura Extruder Stack",
@ -17,3 +43,12 @@ extruder_stack_mime = MimeType(
MimeTypeDatabase.addMimeType(extruder_stack_mime)
ContainerRegistry.addContainerTypeByName(ExtruderStack, "extruder_stack", extruder_stack_mime.name)
class _ContainerIndexes:
UserChanges = 0
QualityChanges = 1
Quality = 2
Material = 3
Variant = 4
Definition = 5