public void Render( HtmlTextWriter writer, TypeSignature signature, TypeRenderOption options) { Render(writer, signature, options, false); }
public void Render( HtmlTextWriter writer, TypeSignature signature, TypeRenderOption options) { Render(writer, signature, options, false); }
public override void VisitSee(SeeComment comment, CommentRendererContext context) { var identity = comment.Member; var member = context.ApiContext.Resolver.FindType(comment.Member); if (member != null) { var signature = member.Definition.GetTypeSignature(context.ApiContext.UrlResolver); const TypeRenderOption options = TypeRenderOption.Link | TypeRenderOption.Name; var result = context.ApiContext.SignatureRenderer.Render(context.ApiContext.Language, signature, options); context.Builder.AppendRaw(result); } else { // TODO: We need to find the link to external types. Save this for later. context.Builder.AppendRaw("<i>"); var name = context.ApiContext.Language.GetAlias(identity); if (name == null) { var index = identity.IndexOf(':'); context.Builder.AppendEncoded(index != 0 ? identity.Substring(index + 1) : "???"); } else { context.Builder.AppendEncoded("????"); } context.Builder.AppendRaw("</i>"); } }
public IHtmlString Render( TypeSignature signature, TypeRenderOption options) { var builder = new HtmlTextWriter(new StringWriter()); Render(builder, signature, options, false); return MvcHtmlString.Create(builder.InnerWriter.ToString()); }
public IHtmlString Render( TypeSignature signature, TypeRenderOption options) { var builder = new HtmlTextWriter(new StringWriter()); Render(builder, signature, options, false); return(MvcHtmlString.Create(builder.InnerWriter.ToString())); }
public string Render( ILanguageProvider language, TypeSignature signature, TypeRenderOption options) { var builder = new EncodedStringBuilder(); Render(builder, language, signature, options, false); return(builder.ToString()); }
private void Render( HtmlTextWriter writer, TypeSignature signature, TypeRenderOption options, bool isWritingLink) { var needToCloseLink = false; var documentedType = _model.FindType(signature.Identity); // Writing link? if ((options & TypeRenderOption.Link) == TypeRenderOption.Link) { if (!isWritingLink && documentedType != null) { if (signature.Url != null) { isWritingLink = needToCloseLink = true; writer.AddAttribute(HtmlTextWriterAttribute.Href, signature.Url); writer.RenderBeginTag(HtmlTextWriterTag.A); } } } // Write type namespace? if ((options & TypeRenderOption.Namespace) == TypeRenderOption.Namespace) { writer.WriteEncodedText(signature.Namespace.Name); } // Write type name? if ((options & TypeRenderOption.Name) == TypeRenderOption.Name) { if ((options & TypeRenderOption.Namespace) == TypeRenderOption.Namespace) { writer.WriteEncodedText(".\u200B"); } var alias = _language.GetAlias(signature.Identity); var name = alias ?? signature.Name; writer.WriteEncodedText(name); if (signature.GenericArguments.Count != 0) { // Write generic arguments. writer.WriteEncodedText("<"); var result = new List<string>(); foreach (var argument in signature.GenericArguments) { result.Add(argument); } writer.WriteEncodedText(string.Join(", \u200B", result)); writer.WriteEncodedText(">"); } else if (signature.GenericParameters.Count != 0) { // Write generic parameters. writer.Write("<"); var result = new List<string>(); var parameterIndex = 0; foreach (var parameter in signature.GenericParameters) { parameterIndex++; Render(writer, parameter, options, isWritingLink); if (parameterIndex != signature.GenericParameters.Count) { writer.WriteEncodedText(",\u200B"); writer.WriteEncodedText(" "); } } writer.WriteEncodedText(string.Join(", \u200B", result)); writer.Write(">"); } } // Writing link? if ((options & TypeRenderOption.Link) == TypeRenderOption.Link) { if (needToCloseLink) { writer.RenderEndTag(); } } }
private void Render( EncodedStringBuilder builder, ILanguageProvider language, TypeSignature signature, TypeRenderOption options, bool isWritingLink) { var needToCloseLink = false; var documentedType = _model.FindType(signature.Identity); // Writing link? if ((options & TypeRenderOption.Link) == TypeRenderOption.Link) { if (!isWritingLink && documentedType != null) { if (signature.Url != null) { isWritingLink = needToCloseLink = true; builder.AppendRaw("<a href=\"{0}\">", signature.Url); } } } // Write type namespace? if ((options & TypeRenderOption.Namespace) == TypeRenderOption.Namespace) { builder.AppendEncoded(signature.Namespace.Name); if ((options & TypeRenderOption.Namespace) == TypeRenderOption.Namespace) { builder.AppendEncoded("."); } } // Write type name? if ((options & TypeRenderOption.Name) == TypeRenderOption.Name) { var alias = language.GetAlias(signature.Identity); var name = alias ?? signature.Name; builder.AppendEncoded(name); } if (signature.GenericArguments.Count != 0) { // Write generic arguments. builder.AppendEncoded("<"); var result = new List <string>(); foreach (var argument in signature.GenericArguments) { result.Add(argument); } builder.AppendEncoded(string.Join(", ", result)); builder.AppendEncoded(">"); } else if (signature.GenericParameters.Count != 0) { // Write generic parameters. builder.AppendEncoded("<"); var result = new List <string>(); foreach (var parameter in signature.GenericParameters) { Render(builder, language, parameter, options, isWritingLink); } builder.AppendEncoded(string.Join(", ", result)); builder.AppendEncoded(">"); } // Writing link? if ((options & TypeRenderOption.Link) == TypeRenderOption.Link) { if (needToCloseLink) { builder.AppendRaw("</a>"); } } }
public string Render(ILanguageProvider language, TypeSignature signature, TypeRenderOption options) { return(_typeRenderer.Render(language, signature, options)); }
public IHtmlString Render(TypeSignature type, TypeRenderOption option) { return(_typeRenderer.Render(type, option)); }
public void Render(HtmlTextWriter writer, TypeSignature type, TypeRenderOption option) { _typeRenderer.Render(writer, type, option); }
private void Render( HtmlTextWriter writer, TypeSignature signature, TypeRenderOption options, bool isWritingLink) { var needToCloseLink = false; var documentedType = _model.FindType(signature.Identity); // Writing link? if ((options & TypeRenderOption.Link) == TypeRenderOption.Link) { if (!isWritingLink && documentedType != null) { if (signature.Url != null) { isWritingLink = needToCloseLink = true; writer.AddAttribute(HtmlTextWriterAttribute.Href, signature.Url); writer.RenderBeginTag(HtmlTextWriterTag.A); } } } // Write type namespace? if ((options & TypeRenderOption.Namespace) == TypeRenderOption.Namespace) { writer.WriteEncodedText(signature.Namespace.Name); } // Write type name? if ((options & TypeRenderOption.Name) == TypeRenderOption.Name) { if ((options & TypeRenderOption.Namespace) == TypeRenderOption.Namespace) { writer.WriteEncodedText(".\u200B"); } var alias = _language.GetAlias(signature.Identity); var name = alias ?? signature.Name; writer.WriteEncodedText(name); if (signature.GenericArguments.Count != 0) { // Write generic arguments. writer.WriteEncodedText("<"); var result = new List <string>(); foreach (var argument in signature.GenericArguments) { result.Add(argument); } writer.WriteEncodedText(string.Join(", \u200B", result)); writer.WriteEncodedText(">"); } else if (signature.GenericParameters.Count != 0) { // Write generic parameters. writer.WriteEncodedText("<"); var result = new List <string>(); var parameterIndex = 0; foreach (var parameter in signature.GenericParameters) { parameterIndex++; Render(writer, parameter, options, isWritingLink); if (parameterIndex != signature.GenericParameters.Count) { writer.WriteEncodedText(",\u200B"); writer.WriteEncodedText(" "); } } writer.WriteEncodedText(string.Join(", \u200B", result)); writer.WriteEncodedText(">"); } } // Writing link? if ((options & TypeRenderOption.Link) == TypeRenderOption.Link) { if (needToCloseLink) { writer.RenderEndTag(); } } }
public IHtmlString Render(TypeSignature type, TypeRenderOption option) { return _typeRenderer.Render(type, option); }
public void Render(HtmlTextWriter writer, TypeSignature type, TypeRenderOption option) { _typeRenderer.Render(writer, type, option); }