如何将多个步骤合并为一个撤消/重做?
How to merge multiple steps into one undo / redo?
我用mxGraph做一个编辑器。当用户点击一次按钮时,我需要在图中执行很多步骤(比如移动一些节点的位置,添加或删除一些节点,修改一些节点的属性)。
一般我可以用mxModel.setValue ()
、mxGraph.removeCells ()
完成一次操作,但用户需要多次按ctrl + z
才能恢复图形的原始状态。
如何将任意数量的操作合并为一个操作,并通过一次撤销/重做恢复整个图的状态?
我不知道这是否是您要找的,但是如果您在一个 model.beginUpdate() 和一个 model.endUpdate() 之间所做的一切都属于同一个 "undo" 行动。通过调用 mxUndoManager.undo 一旦你应该能够一次撤消所有这些......
我用mxGraph做一个编辑器。当用户点击一次按钮时,我需要在图中执行很多步骤(比如移动一些节点的位置,添加或删除一些节点,修改一些节点的属性)。
一般我可以用mxModel.setValue ()
、mxGraph.removeCells ()
完成一次操作,但用户需要多次按ctrl + z
才能恢复图形的原始状态。
如何将任意数量的操作合并为一个操作,并通过一次撤销/重做恢复整个图的状态?
我不知道这是否是您要找的,但是如果您在一个 model.beginUpdate() 和一个 model.endUpdate() 之间所做的一切都属于同一个 "undo" 行动。通过调用 mxUndoManager.undo 一旦你应该能够一次撤消所有这些......