static XElement BuildNsSection(TypeDom.TypeKindEnum kind, TypeDom[] types) { if (!types.Any()) { return(null); } XElement tbody; var ret = Section( Names[kind + "_s"], x("table", a("class", "doc_table"), tbody = x("tbody")) ); tbody.Add(BuildRow(new XElement[0], x("span", Names[Strings.Name]), Names[Strings.Description].ToSpan(), "th")); foreach (var type in types) { tbody.Add(BuildRow( Enumerable.Repeat(GetImage(Navigation.GetIconCss((kind + (type.Type.IsPublic ? "Pub" : "Prot")).To <MemberIconsEnum>()), Names[kind.ToString()], Navigation.EmptyImage, Names[kind.ToString()]), 1), BuildTypeUrl(type.Type, false), XMLUtils.GetTagInnerXml(type.DocInfo, "summary", Navigation, false) )); } return(ret); }
private static IEnumerable <XElement> GetMemberIcons(MemberDom member) { MemberIconsEnum?memberType = null; var memberName = ""; if (member is ConstructorDom) { memberType = member.IsPublic ? MemberIconsEnum.MethodPub : MemberIconsEnum.MethodProt; memberName = "Method"; } if (member is MethodDom method) { if (method.IsOperator) { memberType = member.IsPublic ? MemberIconsEnum.OperatorPub : MemberIconsEnum.OperatorProt; memberName = "Operator"; } else if (method.IsExtention) { if (!member.IsPublic) { throw new InvalidOperationException(); } memberType = MemberIconsEnum.MethodExtPub; memberName = "Extention"; } else { memberType = member.IsPublic ? MemberIconsEnum.MethodPub : MemberIconsEnum.MethodProt; memberName = "Method"; } } else if (member is PropertyDom) { memberType = member.IsPublic ? MemberIconsEnum.PropertyPub : MemberIconsEnum.PropertyProt; memberName = "Property"; } else if (member is FieldDom) { memberType = member.IsPublic ? MemberIconsEnum.FieldPub : MemberIconsEnum.FieldProt; memberName = "Field"; } else if (member is EventDom) { memberType = member.IsPublic ? MemberIconsEnum.EventPub : MemberIconsEnum.EventProt; memberName = "Event"; } memberName += member.IsPublic ? "Pub" : "Prot"; if (memberType != null) { yield return(GetImage(Navigation.GetIconCss(memberType.Value), Names[memberName], Navigation.EmptyImage, Names[memberName])); } if (member.IsStatic) { yield return(GetImage(Navigation.GetIconCss(MemberIconsEnum.Static), Names[Strings.StaticMember], Navigation.EmptyImage, Names[Strings.StaticMember])); } }