Fix undo and redo for support blocker

The translate wasn't done via an operation, so it wouldn't go back to the same
state after an undo / redo

Fixes #10648
This commit is contained in:
Jaime van Kessel 2021-10-31 17:21:51 +01:00
parent cd286a006e
commit 366ef4ca06

View file

@ -6,6 +6,7 @@ from PyQt5.QtWidgets import QApplication
from UM.Application import Application from UM.Application import Application
from UM.Math.Vector import Vector from UM.Math.Vector import Vector
from UM.Operations.TranslateOperation import TranslateOperation
from UM.Tool import Tool from UM.Tool import Tool
from UM.Event import Event, MouseEvent from UM.Event import Event, MouseEvent
from UM.Mesh.MeshBuilder import MeshBuilder from UM.Mesh.MeshBuilder import MeshBuilder
@ -120,8 +121,8 @@ class SupportEraser(Tool):
# First add node to the scene at the correct position/scale, before parenting, so the eraser mesh does not get scaled with the parent # First add node to the scene at the correct position/scale, before parenting, so the eraser mesh does not get scaled with the parent
op.addOperation(AddSceneNodeOperation(node, self._controller.getScene().getRoot())) op.addOperation(AddSceneNodeOperation(node, self._controller.getScene().getRoot()))
op.addOperation(SetParentOperation(node, parent)) op.addOperation(SetParentOperation(node, parent))
op.addOperation(TranslateOperation(node, position, set_position = True))
op.push() op.push()
node.setPosition(position, CuraSceneNode.TransformSpace.World)
CuraApplication.getInstance().getController().getScene().sceneChanged.emit(node) CuraApplication.getInstance().getController().getScene().sceneChanged.emit(node)