Fix types

Added the missing ones and fixed the broken ones.

Contributes to issue CURA-5330.
This commit is contained in:
Ghostkeeper 2018-06-01 16:47:46 +02:00
parent e4a0345fe4
commit da285a33d5
No known key found for this signature in database
GPG Key ID: 5252B696FB5E7C7A

View File

@ -1,4 +1,4 @@
# Copyright (c) 2017 Ultimaker B.V. # Copyright (c) 2018 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher. # Cura is released under the terms of the LGPLv3 or higher.
from PyQt5.QtCore import QObject, QUrl from PyQt5.QtCore import QObject, QUrl
@ -6,7 +6,6 @@ from PyQt5.QtGui import QDesktopServices
from UM.FlameProfiler import pyqtSlot from UM.FlameProfiler import pyqtSlot
from UM.Event import CallFunctionEvent from UM.Event import CallFunctionEvent
from UM.Application import Application
from UM.Math.Vector import Vector from UM.Math.Vector import Vector
from UM.Scene.Selection import Selection from UM.Scene.Selection import Selection
from UM.Scene.Iterator.BreadthFirstIterator import BreadthFirstIterator from UM.Scene.Iterator.BreadthFirstIterator import BreadthFirstIterator
@ -14,6 +13,7 @@ from UM.Operations.GroupedOperation import GroupedOperation
from UM.Operations.RemoveSceneNodeOperation import RemoveSceneNodeOperation from UM.Operations.RemoveSceneNodeOperation import RemoveSceneNodeOperation
from UM.Operations.TranslateOperation import TranslateOperation from UM.Operations.TranslateOperation import TranslateOperation
from cura.CuraApplication import CuraApplication
from cura.Operations.SetParentOperation import SetParentOperation from cura.Operations.SetParentOperation import SetParentOperation
from cura.MultiplyObjectsJob import MultiplyObjectsJob from cura.MultiplyObjectsJob import MultiplyObjectsJob
from cura.Settings.SetObjectExtruderOperation import SetObjectExtruderOperation from cura.Settings.SetObjectExtruderOperation import SetObjectExtruderOperation
@ -25,26 +25,26 @@ from UM.Logger import Logger
class CuraActions(QObject): class CuraActions(QObject):
def __init__(self, parent = None): def __init__(self, parent: QObject = None) -> None:
super().__init__(parent) super().__init__(parent)
@pyqtSlot() @pyqtSlot()
def openDocumentation(self): def openDocumentation(self) -> None:
# Starting a web browser from a signal handler connected to a menu will crash on windows. # Starting a web browser from a signal handler connected to a menu will crash on windows.
# So instead, defer the call to the next run of the event loop, since that does work. # So instead, defer the call to the next run of the event loop, since that does work.
# Note that weirdly enough, only signal handlers that open a web browser fail like that. # Note that weirdly enough, only signal handlers that open a web browser fail like that.
event = CallFunctionEvent(self._openUrl, [QUrl("http://ultimaker.com/en/support/software")], {}) event = CallFunctionEvent(self._openUrl, [QUrl("http://ultimaker.com/en/support/software")], {})
Application.getInstance().functionEvent(event) CuraApplication.getInstance().functionEvent(event)
@pyqtSlot() @pyqtSlot()
def openBugReportPage(self): def openBugReportPage(self) -> None:
event = CallFunctionEvent(self._openUrl, [QUrl("http://github.com/Ultimaker/Cura/issues")], {}) event = CallFunctionEvent(self._openUrl, [QUrl("http://github.com/Ultimaker/Cura/issues")], {})
Application.getInstance().functionEvent(event) CuraApplication.getInstance().functionEvent(event)
## Reset camera position and direction to default ## Reset camera position and direction to default
@pyqtSlot() @pyqtSlot()
def homeCamera(self) -> None: def homeCamera(self) -> None:
scene = Application.getInstance().getController().getScene() scene = CuraApplication.getInstance().getController().getScene()
camera = scene.getActiveCamera() camera = scene.getActiveCamera()
camera.setPosition(Vector(-80, 250, 700)) camera.setPosition(Vector(-80, 250, 700))
camera.setPerspective(True) camera.setPerspective(True)
@ -72,14 +72,14 @@ class CuraActions(QObject):
# \param count The number of times to multiply the selection. # \param count The number of times to multiply the selection.
@pyqtSlot(int) @pyqtSlot(int)
def multiplySelection(self, count: int) -> None: def multiplySelection(self, count: int) -> None:
min_offset = Application.getInstance().getBuildVolume().getEdgeDisallowedSize() + 2 # Allow for some rounding errors min_offset = CuraApplication.getInstance().getBuildVolume().getEdgeDisallowedSize() + 2 # Allow for some rounding errors
job = MultiplyObjectsJob(Selection.getAllSelectedObjects(), count, min_offset = max(min_offset, 8)) job = MultiplyObjectsJob(Selection.getAllSelectedObjects(), count, min_offset = max(min_offset, 8))
job.start() job.start()
## Delete all selected objects. ## Delete all selected objects.
@pyqtSlot() @pyqtSlot()
def deleteSelection(self) -> None: def deleteSelection(self) -> None:
if not Application.getInstance().getController().getToolsEnabled(): if not CuraApplication.getInstance().getController().getToolsEnabled():
return return
removed_group_nodes = [] removed_group_nodes = []
@ -96,7 +96,7 @@ class CuraActions(QObject):
op.addOperation(RemoveSceneNodeOperation(group_node)) op.addOperation(RemoveSceneNodeOperation(group_node))
# Reset the print information # Reset the print information
Application.getInstance().getController().getScene().sceneChanged.emit(node) CuraApplication.getInstance().getController().getScene().sceneChanged.emit(node)
op.push() op.push()
@ -111,7 +111,7 @@ class CuraActions(QObject):
for node in Selection.getAllSelectedObjects(): for node in Selection.getAllSelectedObjects():
# If the node is a group, apply the active extruder to all children of the group. # If the node is a group, apply the active extruder to all children of the group.
if node.callDecoration("isGroup"): if node.callDecoration("isGroup"):
for grouped_node in BreadthFirstIterator(node): for grouped_node in BreadthFirstIterator(node): #type: ignore #Ignore type error because iter() should get called automatically by Python syntax.
if grouped_node.callDecoration("getActiveExtruder") == extruder_id: if grouped_node.callDecoration("getActiveExtruder") == extruder_id:
continue continue
@ -143,7 +143,7 @@ class CuraActions(QObject):
Logger.log("d", "Setting build plate number... %d" % build_plate_nr) Logger.log("d", "Setting build plate number... %d" % build_plate_nr)
operation = GroupedOperation() operation = GroupedOperation()
root = Application.getInstance().getController().getScene().getRoot() root = CuraApplication.getInstance().getController().getScene().getRoot()
nodes_to_change = [] nodes_to_change = []
for node in Selection.getAllSelectedObjects(): for node in Selection.getAllSelectedObjects():
@ -151,7 +151,7 @@ class CuraActions(QObject):
while parent_node.getParent() != root: while parent_node.getParent() != root:
parent_node = parent_node.getParent() parent_node = parent_node.getParent()
for single_node in BreadthFirstIterator(parent_node): for single_node in BreadthFirstIterator(parent_node): #type: ignore #Ignore type error because iter() should get called automatically by Python syntax.
nodes_to_change.append(single_node) nodes_to_change.append(single_node)
if not nodes_to_change: if not nodes_to_change:
@ -164,5 +164,5 @@ class CuraActions(QObject):
Selection.clear() Selection.clear()
def _openUrl(self, url): def _openUrl(self, url: QUrl) -> None:
QDesktopServices.openUrl(url) QDesktopServices.openUrl(url)