private void redoToolStripMenuItem_Click(object sender, EventArgs e) { IUndoRedoHandler undoRedoHandler = GetHandler <IUndoRedoHandler>(); if (undoRedoHandler != null) { undoRedoHandler.Redo(); } }
public Persister(PersisterSettings settings) { Settings = settings; ValidateSettings(); _undoRedoHandler = new UndoRedoHandler <T>(Settings.MaxHistorySteps); _undoRedoHandler.CanRedoChanged += UndoRedoHandler_CanRedoChanged; _undoRedoHandler.CanUndoChanged += UndoRedoHandler_CanUndoChanged; _serializer = new ObjectToFileSerializer(); InitializeAutoSave(); }
private void UpdateMenuStates() { closeToolStripMenuItem.Enabled = sandDockManager.ActiveTabbedDocument != null; IUndoRedoHandler undoRedoHandler = GetHandler <IUndoRedoHandler>(); undoToolStripMenuItem.Enabled = undoRedoHandler != null && undoRedoHandler.CanUndo(); redoToolStripMenuItem.Enabled = undoRedoHandler != null && undoRedoHandler.CanRedo(); undoToolStripButton.Enabled = undoRedoHandler != null && undoRedoHandler.CanUndo(); redoToolStripButton.Enabled = undoRedoHandler != null && undoRedoHandler.CanRedo(); IClipboardHandler clipboardHandler = GetHandler <IClipboardHandler>(); cutToolStripMenuItem.Enabled = clipboardHandler != null && clipboardHandler.HasSelection && !clipboardHandler.IsReadOnly; copyToolStripMenuItem.Enabled = clipboardHandler != null && clipboardHandler.HasSelection; pasteToolStripMenuItem.Enabled = clipboardHandler != null && !clipboardHandler.IsReadOnly; deleteToolStripMenuItem.Enabled = clipboardHandler != null && clipboardHandler.HasSelection && !clipboardHandler.IsReadOnly; selectAllToolStripMenuItem.Enabled = clipboardHandler != null; cutToolStripButton.Enabled = clipboardHandler != null && clipboardHandler.HasSelection && !clipboardHandler.IsReadOnly; copyToolStripButton.Enabled = clipboardHandler != null && clipboardHandler.HasSelection; pasteToolStripButton.Enabled = clipboardHandler != null && !clipboardHandler.IsReadOnly; IQueryHandler queryHandler = GetHandler <IQueryHandler>(); importTestDefinitionToolStripMenuItem.Enabled = queryHandler != null; exportTestDefinitionToolStripMenuItem.Enabled = queryHandler != null; executeToolStripMenuItem.Enabled = queryHandler != null; explainToolStripMenuItem.Enabled = queryHandler != null; executeToolStripButton.Enabled = queryHandler != null; explainQueryToolStripButton.Enabled = queryHandler != null; saveResultsToolStripButton.Enabled = queryHandler != null; IIntelliSenseHandler intelliSenseHandler = GetHandler <IIntelliSenseHandler>(); listMembersToolStripMenuItem.Enabled = intelliSenseHandler != null; parameterInfoToolStripMenuItem.Enabled = intelliSenseHandler != null; completeWordToolStripMenuItem.Enabled = intelliSenseHandler != null; }
/// <summary> /// Register a new undo command along with an undo handler. /// The undo handler is used to perform the actual undo or redo operation later when requested. /// </summary> /// <param name = "cmd">New command to add to the manager.</param> /// <param name = "undoHandler">Undo handler to perform the actual undo/redo operation.</param> private void AddUndoCommand(IUndoRedo cmd, IUndoRedoHandler undoHandler) { if (cmd == null) { throw new NullReferenceException("The cmd sent to AddUndoCommand should not be null."); } if (this._maxUndoLevel == 0) { return; } if (this._undoList.Count == this._maxUndoLevel) { this._undoList.RemoveAt(0); } // Insert the new undoable command into the undo list. this._undoList.Add(new UndoRedoInfo(cmd, undoHandler)); // Clear the redo stack. this.ClearRedo(); }
public UndoRedoInfo(IUndoRedo undoable, IUndoRedoHandler doHandler) { this.UndoRedoObject = undoable; this.UndoRedoHandler = doHandler; }