private bool HasFeatureOutlines()
        {
            var view     = TextEditor.GetCurrentView();
            var outlines = SelectionOutliningManager.Get(view.TextBuffer);

            return(outlines != null && outlines.HasUserOutlines());
        }
        private void AddOutlining(ITextBuffer buffer, SnapshotSpan span)
        {
            var outlines = SelectionOutliningManager.Get(buffer);

            if (outlines != null)
            {
                outlines.CreateRegionsAround(span);
            }
        }
Пример #3
0
        public void CreateRegionsAround_SelectionAtStartOfDocument()
        {
            var textBuffer = GetCSharpTextBuffer("Outlining1.txt");
            var snapshot   = textBuffer.CurrentSnapshot;
            var outlining  = SelectionOutliningManager.Get(textBuffer);

            var selectionSpan = GetSpanFromLines(snapshot, 0, 15);

            outlining.CreateRegionsAround(selectionSpan);

            // validate GetTags() gives us two spans
            var allDocument = new NormalizedSnapshotSpanCollection(snapshot.GetSpan());
            var tags        = outlining.GetTags(allDocument).ToList();

            var span1 = GetSpanFromLines(snapshot, 16, snapshot.LineCount - 1);

            Assert.Equal(span1, tags.First());
        }
Пример #4
0
        public void GetTagsReturnsRegionsAdded()
        {
            var textBuffer = GetCSharpTextBuffer("Outlining1.txt");
            var snapshot   = textBuffer.CurrentSnapshot;
            var manager    = SelectionOutliningManager.Get(textBuffer);

            var span1 = GetSpanFromLines(snapshot, 10, 15);
            var span2 = GetSpanFromLines(snapshot, 25, 30);

            manager.Add(span1);
            manager.Add(span2);

            // validate GetTags() gives us both spans
            var allDocument = new NormalizedSnapshotSpanCollection(snapshot.GetSpan());
            var tags        = manager.GetTags(allDocument).ToList();

            Assert.Equal(span1, tags.First());
            Assert.Equal(span2, tags.Last());
        }
Пример #5
0
        public void RaisesTagsChangedEvent()
        {
            var textBuffer = GetCSharpTextBuffer("Outlining1.txt");
            var snapshot   = textBuffer.CurrentSnapshot;
            var outlining  = SelectionOutliningManager.Get(textBuffer);
            var manager    = SelectionOutliningManager.GetManager(textBuffer);

            var          tagger            = manager.GetOutliningTagger();
            SnapshotSpan?spanRaisedByEvent = null;

            tagger.TagsChanged += (sender, e) => {
                spanRaisedByEvent = e.Span;
            };

            var span1 = GetSpanFromLines(snapshot, 10, 15);

            outlining.Add(span1);
            Assert.True(spanRaisedByEvent.HasValue, "The TagsChanged event was not raised");
            Assert.Equal(span1, spanRaisedByEvent.Value);
        }
Пример #6
0
        private bool HasFeatureOutlines(ITextView view)
        {
            var outlines = SelectionOutliningManager.Get(view.TextBuffer);

            return(outlines != null && outlines.HasUserOutlines());
        }