diff --git a/cura/Arranging/ArrangeObjectsJob.py b/cura/Arranging/ArrangeObjectsJob.py index f529543779..765c3333cb 100644 --- a/cura/Arranging/ArrangeObjectsJob.py +++ b/cura/Arranging/ArrangeObjectsJob.py @@ -88,3 +88,5 @@ class ArrangeObjectsJob(Job): no_full_solution_message = Message(i18n_catalog.i18nc("@info:status", "Unable to find a location within the build volume for all objects"), title = i18n_catalog.i18nc("@info:title", "Can't Find Location")) no_full_solution_message.show() + + self.finished.emit(self) diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py index ff38a24cc6..99fc13265a 100755 --- a/cura/CuraApplication.py +++ b/cura/CuraApplication.py @@ -23,6 +23,7 @@ from UM.Settings.ContainerStack import ContainerStack from UM.Settings.InstanceContainer import InstanceContainer from UM.Settings.Validator import Validator from UM.Message import Message +from UM.Signal import Signal from UM.i18n import i18nCatalog from UM.Workspace.WorkspaceReader import WorkspaceReader from UM.Decorators import deprecated @@ -805,10 +806,13 @@ class CuraApplication(QtApplication): # \param engine The QML engine. def registerObjects(self, engine): super().registerObjects(engine) + engine.rootContext().setContextProperty("Printer", self) engine.rootContext().setContextProperty("CuraApplication", self) + self._print_information = PrintInformation.PrintInformation() engine.rootContext().setContextProperty("PrintInformation", self._print_information) + self._cura_actions = CuraActions.CuraActions(self) engine.rootContext().setContextProperty("CuraActions", self._cura_actions) @@ -1369,10 +1373,6 @@ class CuraApplication(QtApplication): else: Logger.log("w", "Could not find a mesh in reloaded node.") - ## Import a file from disk - def openFile(self, filename): - self._openFile(filename) - def _openFile(self, filename): self.readLocalFile(QUrl.fromLocalFile(filename)) @@ -1521,8 +1521,8 @@ class CuraApplication(QtApplication): # Step is for skipping tests to make it a lot faster. it also makes the outcome somewhat rougher node, _ = arranger.findNodePlacement(node, offset_shape_arr, hull_shape_arr, step = 10) - # This node is deepcopied from some other node which already has a BuildPlateDecorator, but the deepcopy - # of BuildPlateDecorator produces one that's assoicated with build plate -1. So, here we need to check if + # This node is deep copied from some other node which already has a BuildPlateDecorator, but the deepcopy + # of BuildPlateDecorator produces one that's associated with build plate -1. So, here we need to check if # the BuildPlateDecorator exists or not and always set the correct build plate number. build_plate_decorator = node.getDecorator(BuildPlateDecorator) if build_plate_decorator is None: diff --git a/cura/Scene/CuraSceneNode.py b/cura/Scene/CuraSceneNode.py index 9df2931f0b..1bffe4392b 100644 --- a/cura/Scene/CuraSceneNode.py +++ b/cura/Scene/CuraSceneNode.py @@ -9,7 +9,7 @@ from copy import deepcopy class CuraSceneNode(SceneNode): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) - self._outside_buildarea = True + self._outside_buildarea = False def setOutsideBuildArea(self, new_value): self._outside_buildarea = new_value