public CSharpColorizer([NotNull] RichText richText, [NotNull] PresenterOptions options, [NotNull] PresentedInfo presentedInfo, [NotNull] TextStyleHighlighterManager textStyleHighlighterManager, [NotNull] CodeAnnotationsCache codeAnnotationsCache) { Debug.Assert(codeAnnotationsCache != null, "codeAnnotationsCache != null"); _richText = richText; _options = options; _presentedInfo = presentedInfo; _textStyleHighlighterManager = textStyleHighlighterManager; _codeAnnotationsCache = codeAnnotationsCache; }
public RichText TryPresent([NotNull] DeclaredElementInstance declaredElementInstance, [NotNull] PresenterOptions options, [NotNull] PsiLanguageType languageType, bool useReSharperColors, [NotNull] out PresentedInfo presentedInfo) { var richText = new RichText(); IColorizer colorizer = TryCreateColorizer(richText, languageType, useReSharperColors); if (colorizer == null) { presentedInfo = new PresentedInfo(); return null; } presentedInfo = colorizer.AppendDeclaredElement(declaredElementInstance.Element, declaredElementInstance.Substitution, options); return richText; }
public RichText TryPresent([NotNull] DeclaredElementInstance declaredElementInstance, [NotNull] PresenterOptions options, [NotNull] PsiLanguageType languageType, bool useReSharperColors, [NotNull] out PresentedInfo presentedInfo) { var richText = new RichText(); IColorizer colorizer = TryCreateColorizer(richText, languageType, useReSharperColors); if (colorizer == null) { presentedInfo = new PresentedInfo(); return(null); } presentedInfo = colorizer.AppendDeclaredElement(declaredElementInstance.Element, declaredElementInstance.Substitution, options); return(richText); }
public RichText TryPresent([NotNull] DeclaredElementInstance declaredElementInstance, [NotNull] PresenterOptions options, [NotNull] PsiLanguageType languageType, [CanBeNull] string nameHighlightingAttributeId, [NotNull] out PresentedInfo presentedInfo) { var richText = new RichText(); presentedInfo = new PresentedInfo(); IColorizer colorizer = TryCreateColorizer(richText, options, languageType, presentedInfo); if (colorizer == null) { return(null); } colorizer.AppendDeclaredElement(declaredElementInstance.Element, declaredElementInstance.Substitution, nameHighlightingAttributeId); return(richText); }
/// <summary> /// Presents a given <see cref="DeclaredElementInstance"/> using a colorizer. /// </summary> /// <param name="declaredElementInstance">The declared element instance.</param> /// <param name="options">The options to use to present the element.</param> /// <param name="languageType">The type of language used to present the element.</param> /// <param name="highlighterIdProvider">An object determining which highlightings to use.</param> /// <param name="contextualNode">The tree node where the element is presented.</param> /// <param name="presentedInfo">When the method returns, a <see cref="PresentedInfo"/> containing range information about the presented element.</param> /// <returns>A <see cref="RichText"/> representing <paramref name="declaredElementInstance"/>.</returns> public RichText?TryPresent( DeclaredElementInstance declaredElementInstance, PresenterOptions options, PsiLanguageType languageType, HighlighterIdProvider highlighterIdProvider, ITreeNode?contextualNode, out PresentedInfo presentedInfo) { var richText = new RichText(); if (TryCreateColorizer(richText, languageType, highlighterIdProvider) is { } colorizer) { presentedInfo = colorizer.AppendDeclaredElement(declaredElementInstance.Element, declaredElementInstance.Substitution, options, contextualNode); return(richText); } presentedInfo = new PresentedInfo(); return(null); }
public RichText TryPresent( [NotNull] DeclaredElementInstance declaredElementInstance, [NotNull] PresenterOptions options, [NotNull] PsiLanguageType languageType, [NotNull] HighlighterIdProvider highlighterIdProvider, [CanBeNull] ITreeNode contextualNode, [NotNull] out PresentedInfo presentedInfo) { var richText = new RichText(); IColorizer colorizer = TryCreateColorizer(richText, languageType, highlighterIdProvider); if (colorizer == null) { presentedInfo = new PresentedInfo(); return(null); } presentedInfo = colorizer.AppendDeclaredElement(declaredElementInstance.Element, declaredElementInstance.Substitution, options, contextualNode); return(richText); }
public Context([NotNull] PresenterOptions options, [CanBeNull] PresentedInfo presentedInfo) { Options = options; PresentedInfo = presentedInfo; }
private IColorizer TryCreateColorizer([NotNull] RichText richText, [NotNull] PresenterOptions options, [NotNull] PsiLanguageType languageType, [NotNull] PresentedInfo presentedInfo) { // TODO: remove constructor parameters and resolve as a language service if (languageType.Is <CSharpLanguage>()) { return(new CSharpColorizer(richText, options, presentedInfo, _textStyleHighlighterManager, _codeAnnotationsCache)); } return(null); }