CURA-5330 Add typing in ExtruderOutputModel

This commit is contained in:
Diego Prado Gesto 2018-06-08 15:53:33 +02:00
parent ace7e89ea0
commit fcdb1aef52

View file

@ -4,10 +4,9 @@
from PyQt5.QtCore import pyqtSignal, pyqtProperty, QObject, pyqtSlot from PyQt5.QtCore import pyqtSignal, pyqtProperty, QObject, pyqtSlot
from cura.PrinterOutput.ExtruderConfigurationModel import ExtruderConfigurationModel from cura.PrinterOutput.ExtruderConfigurationModel import ExtruderConfigurationModel
from typing import Optional from typing import Optional, TYPE_CHECKING
MYPY = False if TYPE_CHECKING:
if MYPY:
from cura.PrinterOutput.PrinterOutputModel import PrinterOutputModel from cura.PrinterOutput.PrinterOutputModel import PrinterOutputModel
from cura.PrinterOutput.MaterialOutputModel import MaterialOutputModel from cura.PrinterOutput.MaterialOutputModel import MaterialOutputModel
@ -20,12 +19,12 @@ class ExtruderOutputModel(QObject):
extruderConfigurationChanged = pyqtSignal() extruderConfigurationChanged = pyqtSignal()
isPreheatingChanged = pyqtSignal() isPreheatingChanged = pyqtSignal()
def __init__(self, printer: "PrinterOutputModel", position, parent=None): def __init__(self, printer: "PrinterOutputModel", position, parent=None) -> None:
super().__init__(parent) super().__init__(parent)
self._printer = printer self._printer = printer
self._position = position self._position = position
self._target_hotend_temperature = 0 self._target_hotend_temperature = 0 # type: float
self._hotend_temperature = 0 self._hotend_temperature = 0 # type: float
self._hotend_id = "" self._hotend_id = ""
self._active_material = None # type: Optional[MaterialOutputModel] self._active_material = None # type: Optional[MaterialOutputModel]
self._extruder_configuration = ExtruderConfigurationModel() self._extruder_configuration = ExtruderConfigurationModel()
@ -47,7 +46,7 @@ class ExtruderOutputModel(QObject):
return False return False
@pyqtProperty(QObject, notify = activeMaterialChanged) @pyqtProperty(QObject, notify = activeMaterialChanged)
def activeMaterial(self) -> "MaterialOutputModel": def activeMaterial(self) -> Optional["MaterialOutputModel"]:
return self._active_material return self._active_material
def updateActiveMaterial(self, material: Optional["MaterialOutputModel"]): def updateActiveMaterial(self, material: Optional["MaterialOutputModel"]):