Cura/cura/LayerDataDecorator.py
2019-01-28 13:40:42 +01:00

24 lines
780 B
Python

from typing import TYPE_CHECKING, Optional
from UM.Scene.SceneNodeDecorator import SceneNodeDecorator
if TYPE_CHECKING:
from cura.LayerData import LayerData
## Simple decorator to indicate a scene node holds layer data.
class LayerDataDecorator(SceneNodeDecorator):
def __init__(self):
super().__init__()
self._layer_data = None # type: Optional[LayerData]
def getLayerData(self) -> Optional["LayerData"]:
return self._layer_data
def setLayerData(self, layer_data: Optional["LayerData"]) -> None:
self._layer_data = layer_data
def __deepcopy__(self, memo) -> "LayerDataDecorator":
copied_decorator = LayerDataDecorator()
copied_decorator.setLayerData(self.getLayerData())
return copied_decorator