From de57546020473a5dd6bb7a6b3841138e2f6ec168 Mon Sep 17 00:00:00 2001 From: Arjen Hiemstra Date: Tue, 18 Apr 2017 17:37:52 +0200 Subject: [PATCH] Document ExtruderStack --- cura/Settings/ExtruderStack.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/cura/Settings/ExtruderStack.py b/cura/Settings/ExtruderStack.py index 03ed5f8a41..a85140065e 100644 --- a/cura/Settings/ExtruderStack.py +++ b/cura/Settings/ExtruderStack.py @@ -16,12 +16,18 @@ from UM.Settings.Interfaces import ContainerInterface from . import Exceptions from .CuraContainerStack import CuraContainerStack +## Represents an Extruder and its related containers. +# +# class ExtruderStack(CuraContainerStack): def __init__(self, container_id, *args, **kwargs): super().__init__(container_id, *args, **kwargs) self.addMetaDataEntry("type", "extruder_train") # For backward compatibility + ## Overridden from ContainerStack + # + # This will set the next stack and ensure that we register this stack as an extruder. @override(ContainerStack) def setNextStack(self, stack: ContainerStack) -> None: super().setNextStack(stack) @@ -31,6 +37,15 @@ class ExtruderStack(CuraContainerStack): else: self.setMetaDataEntry("machine", stack.id) + ## Overridden from ContainerStack + # + # It will perform a few extra checks when trying to get properties. + # + # The two extra checks it currently does is to ensure a next stack is set and to bypass + # the extruder when the property is not settable per extruder. + # + # \throws Exceptions.NoGlobalStackError Raised when trying to get a property from an extruder without + # having a next stack set. @override(ContainerStack) def getProperty(self, key: str, property_name: str) -> Any: if not self._next_stack: