void _undoService_StackChanged(object sender, StackChangedEventArgs e) { if (e.ClientId != _clientId) { return; } foreach (var historyChange in e.HistoryChanges) { if (historyChange.ChangeType == HistoryEntryChangeType.Added) { History.Add(new HistoryEntry(historyChange.HistoryEntry.Id, historyChange.HistoryEntry.Description)); } else if (historyChange.ChangeType == HistoryEntryChangeType.Removed) { var toBeRemoved = History.First(entry => entry.Id == historyChange.HistoryEntry.Id); History.Remove(toBeRemoved); } } ActiveHistoryEntryId = e.ActiveHistoryEntryId; UpdateStates(); }
private void OnEffectAdded(object sender, StackChangedEventArgs e) { _effects.Add(e.Effect); }
private void RedoStack_StackChanged(object sender, StackChangedEventArgs <IEditorAction> e) { OnCanExecutedChanged(this, null); }
private void OnEffectRemoved(object sender, StackChangedEventArgs e) { _effects.Remove(e.Effect); }