private static ClassifiedTextRunStyle GetClassifiedTextRunStyle(TaggedTextStyle style) { var result = ClassifiedTextRunStyle.Plain; if ((style & TaggedTextStyle.Emphasis) == TaggedTextStyle.Emphasis) { result |= ClassifiedTextRunStyle.Italic; } if ((style & TaggedTextStyle.Strong) == TaggedTextStyle.Strong) { result |= ClassifiedTextRunStyle.Bold; } if ((style & TaggedTextStyle.Underline) == TaggedTextStyle.Underline) { result |= ClassifiedTextRunStyle.Underline; } if ((style & TaggedTextStyle.Code) == TaggedTextStyle.Code) { result |= ClassifiedTextRunStyle.UseClassificationFont; } return(result); }
internal TaggedText(string tag, string text, TaggedTextStyle style, string navigationTarget, string navigationHint) { Tag = tag ?? throw new ArgumentNullException(nameof(tag)); Text = text ?? throw new ArgumentNullException(nameof(text)); Style = style; NavigationTarget = navigationTarget; NavigationHint = navigationHint; }
public static ImmutableArray <TaggedText> ToTaggedText( this IEnumerable <SymbolDisplayPart> displayParts, TaggedTextStyle style, Func <ISymbol, string> getNavigationHint = null, bool includeNavigationHints = true) { if (displayParts == null) { return(ImmutableArray <TaggedText> .Empty); } getNavigationHint ??= static symbol => symbol?.ToDisplayString(SymbolDisplayFormat.MinimallyQualifiedFormat);
public static ImmutableArray <TaggedText> ToTaggedText( this IEnumerable <SymbolDisplayPart> displayParts, TaggedTextStyle style, Func <ISymbol, string> getNavigationHint = null) { if (displayParts == null) { return(ImmutableArray <TaggedText> .Empty); } getNavigationHint ??= GetNavigationHint; return(displayParts.SelectAsArray(d => new TaggedText( SymbolDisplayPartKindTags.GetTag(d.Kind), d.ToString(), style, GetNavigationTarget(d.Symbol), getNavigationHint(d.Symbol))));