Пример #1
0
            public void NewRequest()
            {
                Create("cat dog");
                var span = _textBuffer.GetSpan(0, 3);

                Assert.Equal(span, TaggerUtil.AdjustRequestedSpan(null, span));
            }
Пример #2
0
            public BasicTest()
            {
                _textBuffer = CreateTextBuffer();

                var classificationType = VimEditorHost.ClassificationTypeRegistryService.GetOrCreateClassificationType("classifier test");

                _source     = new TextBasicTaggerSource <IClassificationTag>(new ClassificationTag(classificationType));
                _classifier = TaggerUtil.CreateBasicClassifierRaw(_source);
            }
Пример #3
0
            public void BiggerAtStart()
            {
                Create("cat dog");
                var span1       = _textBuffer.GetSpan(3, 1);
                var span2       = _textBuffer.GetSpan(0, 1);
                var overarching = span1.CreateOverarching(span2);

                Assert.Equal(overarching, TaggerUtil.AdjustRequestedSpan(span1, span2));
            }
        IClassifier IClassifierProvider.GetClassifier(ITextBuffer textBuffer)
        {
            var classificationType = _classificationTypeRegistryService.GetClassificationType(DirectoryFormatDefinition.Name);
            Func <IBasicTaggerSource <IClassificationTag> > func = () => new DirectoryTaggerSource(textBuffer, classificationType);

            return(TaggerUtil.CreateBasicClassifier(
                       textBuffer.Properties,
                       s_key,
                       func.ToFSharpFunc()));
        }
Пример #5
0
            public void BackwardEditSpan()
            {
                Create("cat dog");
                var oldSpan = _textBuffer.GetSpan(0, 1);
                var oldAll  = _textBuffer.CurrentSnapshot.GetExtent();

                _textBuffer.Insert(4, "fish ");
                var newSpan = _textBuffer.GetSpan(4, 4);

                Assert.Equal(oldAll, TaggerUtil.AdjustRequestedSpan(newSpan, oldSpan));
            }
Пример #6
0
            public void ForwardEditSpan()
            {
                Create("cat dog");
                var span1 = _textBuffer.GetSpan(0, 1);

                _textBuffer.Insert(4, "fish ");
                var span2       = _textBuffer.GetSpan(4, 4);
                var overarching = _textBuffer.GetSpan(0, 8);

                Assert.Equal(overarching, TaggerUtil.AdjustRequestedSpan(span1, span2));
            }
Пример #7
0
        ITagger <T> IViewTaggerProvider.CreateTagger <T>(ITextView textView, ITextBuffer textBuffer)
        {
            if (textView.TextBuffer != textBuffer || !_vim.ShouldCreateVimBuffer(textView))
            {
                return(null);
            }

            Func <IBasicTaggerSource <IntraTextAdornmentTag> > func = () => CreateCharDisplayTaggerSource(textView);

            return(TaggerUtil.CreateBasicTagger(
                       textView.Properties,
                       _key,
                       func.ToFSharpFunc()) as ITagger <T>);
        }
Пример #8
0
 private void Create(params string[] lines)
 {
     _textView          = CreateTextView(lines);
     _textBuffer        = _textView.TextBuffer;
     _visualBuffer      = _textView.TextViewModel.VisualBuffer;
     _adhocOutliner     = TaggerUtil.GetOrCreateOutliner(_textView.TextBuffer);
     _outliningeManager = OutliningManagerService.GetOutliningManager(_textView);
     _statusUtil        = new Mock <IStatusUtil>(MockBehavior.Strict);
     _foldData          = FoldManagerFactory.GetFoldData(_textView.TextBuffer);
     _foldManagerRaw    = new FoldManager(
         _textView,
         _foldData,
         _statusUtil.Object,
         FSharpOption.Create(OutliningManagerService.GetOutliningManager(_textView)));
     _foldManager = _foldManagerRaw;
 }
Пример #9
0
        ITagger <T> IViewTaggerProvider.CreateTagger <T>(ITextView textView, ITextBuffer textBuffer)
        {
            if (textView.TextBuffer != textBuffer)
            {
                return(null);
            }

            if (!_vim.TryGetOrCreateVimBufferForHost(textView, out IVimBuffer vimBuffer))
            {
                return(null);
            }
            var vimBufferData = vimBuffer.VimBufferData;

            Func <IBasicTaggerSource <MarkGlyphTag> > func =
                () => CreateMarkGlyphTaggerSource(vimBufferData);

            return(TaggerUtil.CreateBasicTagger(
                       textView.Properties,
                       _key,
                       func.ToFSharpFunc()) as ITagger <T>);
        }
Пример #10
0
        ITagger <T> ITaggerProvider.CreateTagger <T>(ITextBuffer textBuffer)
        {
            var tagger = TaggerUtil.CreateOutlinerTagger(textBuffer);

            return((ITagger <T>)(object) tagger);
        }