Пример #1
0
 public void Undo(UndoStack stack)
 {
     Debug.Assert(stack.state == UndoStack.StatePlayback);
     stack.RegisterAffectedDocument(document);
     stack.state = UndoStack.StatePlaybackModifyDocument;
     this.Undo();
     stack.state = UndoStack.StatePlayback;
 }
Пример #2
0
        /// <summary>
        /// Create a new text document with the specified initial text.
        /// </summary>
        public TextDocument(IEnumerable<char> initialText)
        {
            if (initialText == null)
                throw new ArgumentNullException("initialText");
            rope = new Rope<char>(initialText);
            lineTree = new DocumentLineTree(this);
            lineManager = new LineManager(lineTree, this);
            lineTrackers.CollectionChanged += delegate {
                lineManager.UpdateListOfLineTrackers();
            };

            anchorTree = new TextAnchorTree(this);
            undoStack = new UndoStack();
            FireChangeEvents();
        }
Пример #3
0
 public void Undo(UndoStack stack)
 {
     for (int i = 0; i < undolist.Length; ++i) {
         stack.RunUndo(undolist[i]);
     }
 }
Пример #4
0
 public void Redo(UndoStack stack)
 {
     for (int i = undolist.Length - 1; i >= 0; --i) {
         stack.RunRedo(undolist[i]);
     }
 }