public void Perform(Performable p) { RedoStack.Clear(); UndoStack.Push(p); p.Redo(); OnPropertyChanged("UndoDescription"); OnPropertyChanged("UndoEnabled"); OnPropertyChanged("RedoDescription"); OnPropertyChanged("RedoEnabled"); }
private void RedoExecuted(object sender, ExecutedRoutedEventArgs e) { if (RedoStack.Count > 0) { Performable p = RedoStack.Pop(); UndoStack.Push(p); p.Redo(); OnPropertyChanged("UndoDescription"); OnPropertyChanged("UndoEnabled"); OnPropertyChanged("RedoDescription"); OnPropertyChanged("RedoEnabled"); } }