public void Do(UndoRedoMementoBase action) { lock (SyncObject) { RedoStack.Clear(); UndoStack.Push(action); } }
public void Redo() { lock (SyncObject) { if (CanRedo) { UndoRedoMementoBase action = RedoStack.Pop(); UndoStack.Push(action); action.PerformRedo(Owner); } } }