internal BraceMatchingPresenter(IWpfTextView textView, ITextMarkerProviderFactory textMarkerProviderFactory)
 {
     this.textView = textView;
     this.braceMatcher = new PyBraceMatchProvider();
     this.textView.Caret.PositionChanged += new EventHandler<CaretPositionChangedEventArgs>(Caret_PositionChanged);
     this.textMarkerProviderFactory = textMarkerProviderFactory;
 }
Example #2
0
 internal BraceMatchingPresenter(IWpfTextView textView, ITextMarkerProviderFactory textMarkerProviderFactory)
 {
     this.textView     = textView;
     this.braceMatcher = new PyBraceMatchProvider();
     this.textView.Caret.PositionChanged += new EventHandler <CaretPositionChangedEventArgs>(Caret_PositionChanged);
     this.textMarkerProviderFactory       = textMarkerProviderFactory;
 }
 internal BraceMatchingPresenter(IWpfTextView textView, IList <IBraceMatcherProvider> braceMatcherProviders, ITextMarkerProviderFactory tagger)
 {
     this.braceMatchers = braceMatcherProviders.Select <IBraceMatcherProvider, IBraceMatcher>(prov => prov.GetBraceMatcher(textView.TextSnapshot));
     this.textView      = textView;
     this.textView.Caret.PositionChanged += new EventHandler <CaretPositionChangedEventArgs>(Caret_PositionChanged);
     this.tagger = tagger;
 }
Example #4
0
        private void CreateTracking(IWpfTextView textView, ITextSnapshot textSnapshot, Span span)
        {
            if (m_trackingSpan != null)
            {
                return;
            }

            m_textView = textView;

            if (m_tagger == null)
            {
                IComponentModel            componentModel            = (IComponentModel)m_serviceProvider.GetService(typeof(SComponentModel));
                ITextMarkerProviderFactory textMarkerProviderFactory = componentModel.GetService <ITextMarkerProviderFactory>();

                // Get a SimpleTagger over the buffer to color
                m_tagger = textMarkerProviderFactory.GetTextMarkerTagger(m_textView.TextBuffer);
            }

            // Add the marker
            if (m_tagger != null)
            {
                // The list of colors for TextMarkerTag are defined in Platform\Text\Impl\TextMarkerAdornment\TextMarkerProviderFactory.cs
                m_trackingSpan = textSnapshot.CreateTrackingSpan(span, SpanTrackingMode.EdgeExclusive);
            }
        }
Example #5
0
 TextMarkerServiceTaggerProvider(ITextMarkerProviderFactory textMarkerProviderFactory) => this.textMarkerProviderFactory = textMarkerProviderFactory;