public DocumentSpanEntry( TableDataSourceFindReferencesContext context, RoslynDefinitionBucket definitionBucket, DocumentSpan documentSpan, bool isDefinitionLocation, SourceText sourceText, ClassifiedSpansAndHighlightSpan classifiedSpans) : base(definitionBucket) { _context = context; _documentSpan = documentSpan; _isDefinitionLocation = isDefinitionLocation; _sourceText = sourceText; _classifiedSpans = classifiedSpans; }
public DocumentSpanEntry( TableDataSourceFindReferencesContext context, VisualStudioWorkspaceImpl workspace, RoslynDefinitionBucket definitionBucket, DocumentSpan documentSpan, bool isDefinitionLocation, Guid projectGuid, SourceText sourceText, ClassifiedSpansAndHighlightSpan classifiedSpans) : base(definitionBucket) { _context = context; _workspace = workspace; _documentSpan = documentSpan; _isDefinitionLocation = isDefinitionLocation; _boxedProjectGuid = projectGuid; _sourceText = sourceText; _classifiedSpans = classifiedSpans; }
private static IList <System.Windows.Documents.Inline> GetHighlightedInlines( StreamingFindReferencesPresenter presenter, SourceText sourceText, ClassifiedSpansAndHighlightSpan classifiedSpansAndHighlight, bool isDefinition) { var propertyId = isDefinition ? DefinitionHighlightTag.TagId : ReferenceHighlightTag.TagId; var properties = presenter._formatMapService .GetEditorFormatMap("text") .GetProperties(propertyId); var highlightBrush = properties["Background"] as Brush; var classifiedSpans = classifiedSpansAndHighlight.ClassifiedSpans; var classifiedTexts = classifiedSpans.SelectAsArray( cs => new ClassifiedText(cs.ClassificationType, sourceText.ToString(cs.TextSpan))); var inlines = classifiedTexts.ToInlines( presenter._typeMap, runCallback: (run, classifiedText, position) => { if (highlightBrush != null) { if (position == classifiedSpansAndHighlight.HighlightSpan.Start) { run.SetValue( System.Windows.Documents.TextElement.BackgroundProperty, highlightBrush); } } }); return(inlines); }
private static IList<System.Windows.Documents.Inline> GetHighlightedInlines( StreamingFindReferencesPresenter presenter, SourceText sourceText, ClassifiedSpansAndHighlightSpan classifiedSpansAndHighlight, bool isDefinition) { var propertyId = isDefinition ? DefinitionHighlightTag.TagId : ReferenceHighlightTag.TagId; var properties = presenter._formatMapService .GetEditorFormatMap("text") .GetProperties(propertyId); var highlightBrush = properties["Background"] as Brush; var classifiedSpans = classifiedSpansAndHighlight.ClassifiedSpans; var classifiedTexts = classifiedSpans.SelectAsArray( cs => new ClassifiedText(cs.ClassificationType, sourceText.ToString(cs.TextSpan))); var inlines = classifiedTexts.ToInlines( presenter._typeMap, runCallback: (run, classifiedText, position) => { if (highlightBrush != null) { if (position == classifiedSpansAndHighlight.HighlightSpan.Start) { run.SetValue( System.Windows.Documents.TextElement.BackgroundProperty, highlightBrush); } } }); return inlines; }