protected void OnExecutedHistoryMemento(ExecutedHistoryMementoEventArgs e) { if (ExecutedHistoryMemento != null) { ExecutedHistoryMemento(this, e); } }
private void StepForwardImpl() { HistoryMemento topMemento = redoStack[0]; ToolHistoryMemento asToolHistoryMemento = topMemento as ToolHistoryMemento; if (asToolHistoryMemento != null && asToolHistoryMemento.ToolType != this.documentWorkspace.GetToolType()) { this.documentWorkspace.SetToolFromType(asToolHistoryMemento.ToolType); StepForward(); } else { OnChanging(); ExecutingHistoryMementoEventArgs ehaea1 = new ExecutingHistoryMementoEventArgs(topMemento, true, false); if (asToolHistoryMemento == null && topMemento.SeriesGuid != Guid.Empty) { ehaea1.SuspendTool = true; } OnExecutingHistoryMemento(ehaea1); if (ehaea1.SuspendTool) { this.documentWorkspace.PushNullTool(); } HistoryMemento redoMemento = redoStack[0]; // Possibly useful invariant here: // ehaea1.HistoryMemento.SeriesGuid == ehaea2.HistoryMemento.SeriesGuid == ehaea3.HistoryMemento.SeriesGuid ExecutingHistoryMementoEventArgs ehaea2 = new ExecutingHistoryMementoEventArgs(redoMemento, false, ehaea1.SuspendTool); OnExecutingHistoryMemento(ehaea2); HistoryMemento undoMemento = redoMemento.PerformUndo(); redoStack.RemoveAt(0); undoStack.Add(undoMemento); ExecutedHistoryMementoEventArgs ehaea3 = new ExecutedHistoryMementoEventArgs(undoMemento); OnExecutedHistoryMemento(ehaea3); OnChanged(); OnSteppedForward(); undoMemento.Flush(); if (ehaea1.SuspendTool) { this.documentWorkspace.PopNullTool(); } } if (this.stepGroupDepth == 0) { OnFinishedStepGroup(); } }
protected virtual void OnExecutedHistoryMemento(ExecutedHistoryMementoEventArgs e) { }
private void ExecutedHistoryMemento(object sender, ExecutedHistoryMementoEventArgs e) { OnExecutedHistoryMemento(e); }