Beispiel #1
0
 private void OnNewParseTree(object sender, ParseTreeChangedEventArgs e)
 {
     if (e.Tree != null && e.Tree.Root != null)
     {
         _tokens = e.Tree.Tokens;
     }
     if (TagsChanged != null)
     {
         TagsChanged(this, new SnapshotSpanEventArgs(new SnapshotSpan(_textBuffer.CurrentSnapshot, 0, _textBuffer.CurrentSnapshot.Length)));
     }
 }
 private void OnNewParseTree(object sender, ParseTreeChangedEventArgs e)
 {
     if (e.Tree != null && e.Tree.Root != null)
     {
         _regions.Clear();
         WalkSyntaxTreeForOutliningRegions(e.Tree.Root, _regions);
     }
     if (TagsChanged != null)
     {
         TagsChanged(this, new SnapshotSpanEventArgs(new SnapshotSpan(_textBuffer.CurrentSnapshot, 0, _textBuffer.CurrentSnapshot.Length)));
     }
 }
        private void OnNewParseTree(object sender, ParseTreeChangedEventArgs e)
        {
            _syntaxErrorTags.Clear();
            _syntaxErrorMessages = e.Tree.ParserMessages;
            foreach (LogMessage syntaxErrorMessage in _syntaxErrorMessages)
            {
                _syntaxErrorTags.Add(new TagSpan <ErrorTag>(new SnapshotSpan(_buffer.CurrentSnapshot, Math.Min(_buffer.CurrentSnapshot.Length, Math.Max(syntaxErrorMessage.Location.Position, 1)) - 1, 1),
                                                            new ErrorTag("syntax error", syntaxErrorMessage.Message)));
            }

            if (TagsChanged != null)
            {
                TagsChanged(this, new SnapshotSpanEventArgs(new SnapshotSpan(_buffer.CurrentSnapshot, new Span(0, _buffer.CurrentSnapshot.Length))));
            }
        }