public override void Do() { IREditorDocument document = REditorDocument.TryFromTextBuffer(TextBuffer); if (document != null) { document.BeginMassiveChange(); } }
public MassiveChange(ITextView textView, ITextBuffer textBuffer, ICoreShell shell, string description) { _textBuffer = textBuffer; var undoManagerProvider = shell.GetService <ITextBufferUndoManagerProvider>(); var undoManager = undoManagerProvider.GetTextBufferUndoManager(textView.TextBuffer); ITextUndoTransaction innerTransaction = undoManager.TextBufferUndoHistory.CreateTransaction(description); _transaction = new TextUndoTransactionThatRollsBackProperly(innerTransaction); _transaction.AddUndo(new StartMassiveChangeUndoUnit(_textBuffer)); IREditorDocument document = REditorDocument.TryFromTextBuffer(_textBuffer); document?.BeginMassiveChange(); }
public MassiveChange(ITextView textView, ITextBuffer textBuffer, string description) { _textBuffer = textBuffer; var undoManagerProvider = EditorShell.Current.ExportProvider.GetExport <ITextBufferUndoManagerProvider>().Value; var undoManager = undoManagerProvider.GetTextBufferUndoManager(textView.TextBuffer); ITextUndoTransaction innerTransaction = undoManager.TextBufferUndoHistory.CreateTransaction(description); _transaction = new TextUndoTransactionThatRollsBackProperly(innerTransaction); _transaction.AddUndo(new StartMassiveChangeUndoUnit(_textBuffer)); IREditorDocument document = REditorDocument.TryFromTextBuffer(_textBuffer); if (document != null) { document.BeginMassiveChange(); } }