private static void WriteImageWithTopicLink(this MamlWriter writer, TopicManager topicManager, ArtItem artItem, XmlSchemaType type) { var topic = topicManager.GetTopic(type); if (topic != null) { writer.WriteArtItemWithTopicLink(artItem, topic); } else { writer.WriteArtItemWithText(artItem, type.QualifiedName.Name); } }
private static void WriteFacet(this MamlWriter writer, int level, SimpleTypeStructureNode node, string facetType) { var facetValue = ((XmlSchemaFacet)node.Node).Value; writer.StartTableRowEntry(); writer.StartParagraph(); //writer.WriteHtmlIndent(level); writer.WriteArtItemWithText(ArtItem.Facet, facetType, level); writer.EndParagraph(); writer.EndTableRowEntry(); writer.WriteRowEntry(facetValue); }
private static void WriteName(this MamlWriter writer, ChildEntry entry, TopicManager topicManager, int index) { switch (entry.ChildType) { case ChildType.Element: case ChildType.ElementExtension: var element = (XmlSchemaElement)entry.Particle; var isExtension = (entry.ChildType == ChildType.ElementExtension); writer.WriteElementLink(topicManager, element, isExtension, index); break; case ChildType.Any: writer.WriteArtItemWithText(ArtItem.AnyElement, "Any", index); break; case ChildType.All: writer.WriteArtItemWithText(ArtItem.All, "All", index); break; case ChildType.Choice: writer.WriteArtItemWithText(ArtItem.Choice, "Choice", index); break; case ChildType.Sequence: writer.WriteArtItemWithText(ArtItem.Sequence, "Sequence", index); break; default: throw ExceptionBuilder.UnhandledCaseLabel(entry.ChildType); } }
private static void WriteElementLink(this MamlWriter writer, TopicManager topicManager, XmlSchemaElement element, bool isExtension, int index) { var artItem = element.RefName.IsEmpty && !isExtension ? ArtItem.Element : ArtItem.ElementRef; var topic = topicManager.GetTopic(element); if (topic != null) { writer.WriteArtItemWithTopicLink(artItem, topic, index); } else { writer.WriteArtItemWithText(artItem, element.QualifiedName.Name, index); } }
private static void WriteAttributeTopicLink(this MamlWriter writer, TopicManager topicManager, XmlSchemaAttribute attribute, bool isExtension, int indent) { var artItem = attribute.RefName.IsEmpty && !isExtension ? ArtItem.Attribute : ArtItem.AttributeRef; var topic = topicManager.GetTopic(attribute); if (topic != null) { writer.WriteArtItemWithTopicLink(artItem, topic, indent); } else { writer.WriteArtItemWithText(artItem, attribute.QualifiedName.Name, indent); } }
protected override void Visit(XmlSchemaSimpleType type) { if (type.QualifiedName.IsEmpty) { Traverse(type.Content); } else { var topic = _context.TopicManager.GetTopic(type); if (topic != null) { _writer.WriteArtItemWithTopicLink(ArtItem.SimpleType, topic); } else { _writer.WriteArtItemWithText(ArtItem.SimpleType, type.QualifiedName.Name); } } }
public static void WriteAttributeTable(this MamlWriter writer, Context context, AttributeEntries attributeEntries) { if (attributeEntries.Attributes.Count == 0 && attributeEntries.AnyAttribute == null) { return; } writer.StartTable(); writer.StartTableHeader(); writer.StartTableRow(); writer.WriteRowEntry("Name"); writer.WriteRowEntry("Type"); writer.WriteRowEntry("Required"); writer.WriteRowEntry("Description"); writer.EndTableRow(); writer.EndTableHeader(); var sortedAttributes = from a in attributeEntries.Attributes orderby a.QualifiedName.Name select a; foreach (var attribute in sortedAttributes) { writer.StartTableRow(); writer.StartTableRowEntry(); writer.StartParagraph(); writer.WriteAttributeTopicLink(context.TopicManager, attribute, false, 0); writer.EndParagraph(); writer.EndTableRowEntry(); writer.StartTableRowEntry(); writer.StartParagraph(); writer.WriteType(context, attribute.AttributeSchemaType); writer.EndParagraph(); writer.EndTableRowEntry(); writer.StartTableRowEntry(); writer.StartParagraph(); writer.WriteRequiredText(attribute.Use); writer.EndParagraph(); writer.EndTableRowEntry(); writer.StartTableRowEntry(); writer.StartParagraph(); writer.WriteSummaryForObject(context, attribute); writer.EndParagraph(); writer.EndTableRowEntry(); writer.EndTableRow(); } if (attributeEntries.AnyAttribute != null) { writer.StartTableRow(); writer.StartTableRowEntry(); writer.StartParagraph(); writer.WriteArtItemWithText(ArtItem.AnyAttribute, "Any"); writer.EndParagraph(); writer.EndTableRowEntry(); writer.StartTableRowEntry(); writer.WriteParagraph(String.Empty); writer.EndTableRowEntry(); writer.StartTableRowEntry(); writer.WriteParagraph(String.Empty); writer.EndTableRowEntry(); writer.StartTableRowEntry(); writer.StartParagraph(); writer.WriteSummaryForObject(context, attributeEntries.AnyAttribute); writer.EndParagraph(); writer.EndTableRowEntry(); writer.EndTableRow(); } var sortedExtensionAttributes = from a in attributeEntries.ExtensionAttributes orderby a.QualifiedName.Name select a; foreach (var attribute in sortedExtensionAttributes) { writer.StartTableRow(); writer.StartTableRowEntry(); writer.StartParagraph(); //writer.WriteHtmlIndent(1); writer.WriteAttributeTopicLink(context.TopicManager, attribute, true, 1); writer.EndParagraph(); writer.EndTableRowEntry(); writer.StartTableRowEntry(); writer.StartParagraph(); writer.WriteType(context, attribute.AttributeSchemaType); writer.EndParagraph(); writer.EndTableRowEntry(); writer.StartTableRowEntry(); writer.StartParagraph(); writer.WriteRequiredText(attribute.Use); writer.EndParagraph(); writer.EndTableRowEntry(); writer.StartTableRowEntry(); writer.StartParagraph(); writer.WriteSummaryForObject(context, attribute); writer.EndParagraph(); writer.EndTableRowEntry(); writer.EndTableRow(); } writer.EndTable(); }