private void SaveMembersToHTML(Type t, ElemKind kind) { string name = HelpUtils.get_type_name(t); string _name = name; switch (kind) { case ElemKind.Property : _name += "Members$Properties.html"; break; case ElemKind.Method : _name += "Members$Methods.html"; break; case ElemKind.Constructor : _name += "Members$Constructors.html"; break; case ElemKind.Field : _name += "Members$Fields.html"; break; case ElemKind.Event : _name += "Members$Events.html"; break; case ElemKind.ClassConstant : _name += "Members$ClassConstants.html"; break; default : _name += "Members.html"; break; } StreamWriter sw = new StreamWriter(Path.Combine(output_dir,_name),false,System.Text.Encoding.GetEncoding(1251)); if (kind == ElemKind.None) elems.Add(new ItemInfo(name+"Members.html",HelpUtils.get_localization("CLASS")+" "+name)); WriteBanner(sw); sw.WriteLine("<div id=\"TitleRow\">"); if (t.IsEnum) sw.WriteLine("<h1 class=\"dtH1\">"+HelpUtils.get_localization("TYPE_MEMBERS")+" "+name+"</h1>"); else if (t.IsValueType) sw.WriteLine("<h1 class=\"dtH1\">"+HelpUtils.get_localization("RECORD_MEMBERS")+" "+name+"</h1>"); else if (t.IsInterface) sw.WriteLine("<h1 class=\"dtH1\">"+HelpUtils.get_localization("INTERFACE_MEMBERS")+" "+name+"</h1>"); else if (t.IsClass) sw.WriteLine("<h1 class=\"dtH1\">"+HelpUtils.get_localization("CLASS_MEMBERS")+" "+name+"</h1>"); sw.WriteLine("</div></div>"); sw.WriteLine("<div id=\"nstext\">"); sw.WriteLine("<p><a href=\""+name+".html"+"\">"+ HelpUtils.get_localization("PREVIEW")+" "+t.Name+"</a></p>"); ConstructorInfo[] constrs = GetNonPrivateConstructors(t); if (constrs.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Constructor)) { sw.WriteLine("<h4 class=\"dtH4\">"+HelpUtils.get_localization("CONSTRUCTORS")+"</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); sw.WriteLine("<td width=\"50%\">"); sw.WriteLine("<img src=\"pubmethod.gif\" />"); if (constrs.Length == 1) sw.WriteLine("<a href=\""+HelpUtils.get_meth_name(constrs[0])+".html\">Create</a>"); else sw.WriteLine("<a href=\""+HelpUtils.get_meth_name(constrs[0])+"$overloads"+".html\">Create</a>"); sw.WriteLine("</td>"); sw.Write("<td width=\"50%\">"); if (constrs.Length == 1) sw.Write(HelpUtils.get_summary(HelpUtils.GetDocumentation(constrs[0]))); else sw.Write(HelpUtils.get_localization("OVERLOADED_CONSTRUCTOR")+" "+t.Name); sw.WriteLine("</td>"); sw.WriteLine("</tr></table></div>"); } PropertyInfo[] props = GetProperties(t, field_access_level.fal_public); if (props.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Property)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("PUBLIC_PROPERTIES") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (PropertyInfo prop in props) { if (!HelpUtils.can_write(prop)) continue; sw.Write("<tr VALIGN=\"top\"><td width=\"50%\"><img src=\"pubproperty.gif\"></img>"); if (prop.GetGetMethod() != null && prop.GetGetMethod().IsStatic) sw.Write("<img src=\"static.gif\"></img>"); sw.Write("<a href=\"" + HelpUtils.get_prop_name(prop) + ".html\">" + prop.Name + "</a>"); sw.Write("</td>"); sw.Write("<td width=\"50%\">"); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(prop)); sw.Write(doc); if (prop.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(prop.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } MethodInfo[] meths = GetMethods(t, field_access_level.fal_public); if (meths.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Method)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("PUBLIC_METHODS") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (MethodInfo meth in meths) { if (!HelpUtils.can_write(meth)) continue; int ind = GetMethodIndex(meth, t); if (is_overload(meth, t) && ind > 1) continue; sw.Write("<tr VALIGN=\"top\"><td width=\"50%\"><img src=\"pubmethod.gif\"></img>"); if (meth.IsStatic) sw.Write("<img src=\"static.gif\"></img>"); if (is_overload(meth, t)) sw.Write("<a href=\"" + HelpUtils.get_meth_name(meth) + ".html\">" + meth.Name + "</a>"); else { sw.Write("<a href=\"" + HelpUtils.get_meth_name(meth) + "$overloads" + ".html\">" + meth.Name + "</a>"); } sw.Write("</td>"); sw.Write("<td width=\"50%\">"); if (is_overload(meth, t)) sw.Write(HelpUtils.get_localization("OVERLOADED") + " "); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(meth)); sw.Write(doc); if (meth.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(meth.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } FieldInfo[] fields = GetFields(t, field_access_level.fal_public); if (fields.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Field)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("PUBLIC_FIELDS") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (FieldInfo fld in fields) { if (!HelpUtils.can_write(fld)) continue; sw.Write("<tr VALIGN=\"top\"><td width=\"50%\"><img src=\"pubfield.gif\"></img>"); if (fld.IsStatic) sw.Write("<img src=\"static.gif\"></img>"); sw.Write("<a href=\"" + HelpUtils.get_field_name(fld) + ".html\">" + fld.Name + "</a>"); sw.Write("</td>"); sw.Write("<td width=\"50%\">"); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(fld)); sw.Write(doc); if (fld.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(fld.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } EventInfo[] events = GetEvents(t, field_access_level.fal_public); if (events.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Event)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("PUBLIC_EVENTS") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (EventInfo e in events) { if (!HelpUtils.can_write(e)) continue; sw.Write("<tr valign=\"top\"><td width=\"50%\"><img src=\"pubevent.gif\"></img>"); if (e.GetAddMethod().IsStatic) sw.Write("<img src=\"static.gif\"></img>"); sw.Write("<a href=\"" + HelpUtils.get_event_name(e) + ".html\">" + e.Name + "</a>"); sw.Write("</td>"); sw.Write("<td width=\"50%\">"); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(e)); sw.Write(doc); if (e.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(e.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } //internal props = GetProperties(t, field_access_level.fal_internal); if (props.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Property)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("INTERNAL_PROPERTIES") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (PropertyInfo prop in props) { if (!HelpUtils.can_write(prop)) continue; sw.Write("<tr VALIGN=\"top\"><td width=\"50%\"><img src=\"intproperty.gif\"></img>"); if (prop.GetGetMethod() != null && prop.GetGetMethod().IsStatic) sw.Write("<img src=\"static.gif\"></img>"); sw.Write("<a href=\"" + HelpUtils.get_prop_name(prop) + ".html\">" + prop.Name + "</a>"); sw.Write("</td>"); sw.Write("<td width=\"50%\">"); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(prop)); sw.Write(doc); if (prop.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(prop.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } meths = GetMethods(t, field_access_level.fal_internal); if (meths.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Method)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("INTERNAL_METHODS") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (MethodInfo meth in meths) { if (!HelpUtils.can_write(meth)) continue; int ind = GetMethodIndex(meth, t); if (is_overload(meth, t) && ind > 1) continue; sw.Write("<tr VALIGN=\"top\"><td width=\"50%\"><img src=\"intmethod.gif\"></img>"); if (meth.IsStatic) sw.Write("<img src=\"static.gif\"></img>"); if (!is_overload(meth, t)) sw.Write("<a href=\"" + HelpUtils.get_meth_name(meth) + ".html\">" + meth.Name + "</a>"); else { sw.Write("<a href=\"" + HelpUtils.get_meth_name(meth) + "$overloads" + ".html\">" + meth.Name + "</a>"); } sw.Write("</td>"); sw.Write("<td width=\"50%\">"); if (is_overload(meth, t)) sw.Write(HelpUtils.get_localization("OVERLOADED") + " "); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(meth)); sw.Write(doc); if (meth.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(meth.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } fields = GetFields(t, field_access_level.fal_internal); if (fields.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Field)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("INTERNAL_FIELDS") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (FieldInfo fld in fields) { if (!HelpUtils.can_write(fld)) continue; sw.Write("<tr VALIGN=\"top\"><td width=\"50%\"><img src=\"intfield.gif\"></img>"); if (fld.IsStatic) sw.Write("<img src=\"static.gif\"></img>"); sw.Write("<a href=\"" + HelpUtils.get_field_name(fld) + ".html\">" + fld.Name + "</a>"); sw.Write("</td>"); sw.Write("<td width=\"50%\">"); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(fld)); sw.Write(doc); if (fld.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(fld.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } events = GetEvents(t, field_access_level.fal_internal); if (events.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Event)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("INTERNAL_EVENTS") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (EventInfo e in events) { if (!HelpUtils.can_write(e)) continue; sw.Write("<tr VALIGN=\"top\"><td width=\"50%\"><img src=\"intevent.gif\"></img>"); if (e.GetAddMethod().IsStatic) sw.Write("<img src=\"static.gif\"></img>"); sw.Write("<a href=\"" + HelpUtils.get_event_name(e) + ".html\">" + e.Name + "</a>"); sw.Write("</td>"); sw.Write("<td width=\"50%\">"); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(e)); sw.Write(doc); if (e.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(e.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } //protected props = GetProperties(t, field_access_level.fal_protected); if (props.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Property)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("PROTECTED_FIELDS") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (PropertyInfo prop in props) { if (!HelpUtils.can_write(prop)) continue; sw.Write("<tr VALIGN=\"top\"><td width=\"50%\"><img src=\"protproperty.gif\"></img>"); if (prop.GetGetMethod(true).IsStatic) sw.Write("<img src=\"static.gif\"></img>"); sw.Write("<a href=\"" + HelpUtils.get_prop_name(prop) + ".html\">" + prop.Name + "</a>"); sw.Write("</td>"); sw.Write("<td width=\"50%\">"); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(prop)); sw.Write(doc); if (prop.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(prop.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } meths = GetMethods(t, field_access_level.fal_protected); if (meths.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Method)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("PROTECTED_METHODS") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (MethodInfo meth in meths) { if (!HelpUtils.can_write(meth)) continue; int ind = GetMethodIndex(meth, t); if (is_overload(meth, t) && ind > 1) continue; sw.Write("<tr VALIGN=\"top\"><td width=\"50%\"><img src=\"protmethod.gif\"></img>"); if (meth.IsStatic) sw.Write("<img src=\"static.gif\"></img>"); if (!is_overload(meth, t)) sw.Write("<a href=\"" + HelpUtils.get_meth_name(meth) + ".html\">" + meth.Name + "</a>"); else { sw.Write("<a href=\"" + HelpUtils.get_meth_name(meth) + "$overloads" + ".html\">" + meth.Name + "</a>"); } sw.Write("</td>"); sw.Write("<td width=\"50%\">"); if (is_overload(meth, t)) sw.Write(HelpUtils.get_localization("OVERLOADED") + " "); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(meth)); sw.Write(doc); if (meth.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(meth.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } fields = GetFields(t, field_access_level.fal_protected); if (fields.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Field)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("PROTECTED_FIELDS") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (FieldInfo fld in fields) { if (!HelpUtils.can_write(fld)) continue; sw.Write("<tr VALIGN=\"top\"><td width=\"50%\"><img src=\"protfield.gif\"></img>"); if (fld.IsStatic) sw.Write("<img src=\"static.gif\"></img>"); sw.Write("<a href=\"" + HelpUtils.get_field_name(fld) + ".html\">" + fld.Name + "</a>"); sw.Write("</td>"); sw.Write("<td width=\"50%\">"); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(fld)); sw.Write(doc); if (fld.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(fld.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } events = GetEvents(t, field_access_level.fal_protected); if (events.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Event)) { sw.WriteLine("<h4 class=\"dtH4\">" + HelpUtils.get_localization("PROTECTED_EVENTS") + "</h4>"); sw.WriteLine("<div class=\"tablediv\">"); sw.WriteLine("<table class=\"dtTABLE\" cellspacing=\"2\">"); WriteNameDescriptionHeaderForTable(sw); foreach (EventInfo e in events) { if (!HelpUtils.can_write(e)) continue; sw.Write("<tr VALIGN=\"top\"><td width=\"50%\"><img src=\"protevent.gif\"></img>"); if (e.GetAddMethod(true).IsStatic) sw.Write("<img src=\"static.gif\"></img>"); sw.Write("<a href=\"" + HelpUtils.get_event_name(e) + ".html\">" + e.Name + "</a>"); sw.Write("</td>"); sw.Write("<td width=\"50%\">"); string doc = HelpUtils.get_summary(HelpUtils.GetDocumentation(e)); sw.Write(doc); if (e.DeclaringType != t) sw.Write((doc == HelpUtils.HTMLSpace ? "(" : " (") + HelpUtils.get_localization("INHERITED_FROM") + " " + HelpUtils.get_type_html_text(e.DeclaringType) + ")"); sw.WriteLine("</td></tr>"); } sw.WriteLine("</table>"); sw.WriteLine("</div>"); } sw.WriteLine("</div></body></html>"); sw.Close(); }
private void SaveUnitMembers(Assembly a, ElemKind kind) { string _unit_name = unit_name; switch (kind) { case ElemKind.Class : _unit_name += "$Classes"; break; case ElemKind.EnumRecord : _unit_name += "$Records"; break; case ElemKind.Type : _unit_name += "$Types"; break; case ElemKind.Variable : _unit_name += "$Variables"; break; case ElemKind.Subroutine : _unit_name += "$Subroutines"; break; case ElemKind.Const : _unit_name += "$Constants"; break; case ElemKind.Interface : _unit_name += "$Interfaces"; break; } string _full_unit_name = Path.Combine(output_dir,_unit_name+".html"); StreamWriter sw = new StreamWriter(_full_unit_name,false,System.Text.Encoding.GetEncoding(1251)); WriteBanner(sw); if (kind == ElemKind.None) elems.Add(new ItemInfo(unit_name+".html",HelpUtils.get_localization("UNIT")+" "+unit_name)); sw.WriteLine("<div id=\"TitleRow\">"); sw.WriteLine("<h1 class=\"dtH1\">"+HelpUtils.get_localization("UNIT")+" "+unit_name+"</h1>"); sw.WriteLine("</div></div>"); if (kind == ElemKind.None) { sw.WriteLine("<div id=\"nstext\">"); if (!string.IsNullOrEmpty(unit_desc) && unit_desc != Convert.ToString((char)0xA0)) sw.WriteLine("<h4 class=\"dtH4\">"+HelpUtils.get_localization("DESCRIPTION")+"</h4>"); if (!string.IsNullOrEmpty(unit_desc) && unit_desc != Convert.ToString((char)0xA0)) sw.WriteLine("<p>"+unit_desc+"</p>"); sw.WriteLine("</div>"); } //klassy Type[] _classes = GetClasses(a); if (_classes.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Class)) { WriteTableHeader(sw, HelpUtils.get_localization("CLASSES")); WriteNameDescriptionHeaderForTable(sw); foreach (Type t in _classes) { if (!HelpUtils.can_write(t)) continue; sw.WriteLine("<tr valign=\"top\">"); sw.WriteLine("<td width=\"50%\">"); sw.WriteLine("<img src=\"pubclass.gif\" />"); sw.WriteLine("<a href=\"" + HelpUtils.get_type_name(t) + ".html" + "\">" + HelpUtils.build_name_with_possible_generic(t, true) + "</a>"); sw.WriteLine("</td>"); sw.WriteLine("<td width=\"50%\">" + HelpUtils.get_summary(HelpUtils.GetDocumentation(t)) + "</td>"); sw.WriteLine("</tr>"); } WriteFooterTable(sw); } Type[] _interfaces = GetInterfaces(a); if (_interfaces.Length > 0 && (kind == ElemKind.None || kind == ElemKind.Interface)) { WriteTableHeader(sw, HelpUtils.get_localization("INTERFACES")); WriteNameDescriptionHeaderForTable(sw); foreach (Type t in _interfaces) { if (!HelpUtils.can_write(t)) continue; sw.WriteLine("<tr valign=\"top\">"); sw.WriteLine("<td width=\"50%\">"); sw.WriteLine("<img src=\"pubinterface.gif\" />"); sw.WriteLine("<a href=\"" + HelpUtils.get_type_name(t) + ".html" + "\">" + HelpUtils.build_name_with_possible_generic(t, true) + "</a>"); sw.WriteLine("</td>"); sw.WriteLine("<td width=\"50%\">" + HelpUtils.get_summary(HelpUtils.GetDocumentation(t)) + "</td>"); sw.WriteLine("</tr>"); } WriteFooterTable(sw); } Type[] _enum_recs = GetEnumsRecords(a); if (_enum_recs.Length > 0 && (kind == ElemKind.None || kind == ElemKind.EnumRecord)) { WriteTableHeader(sw, HelpUtils.get_localization("ENUMS_RECORDS")); WriteNameDescriptionHeaderForTable(sw); foreach (Type t in _enum_recs) { if (!HelpUtils.can_write(t)) continue; sw.WriteLine("<tr valign=\"top\">"); sw.WriteLine("<td width=\"50%\">"); if (t.IsEnum) sw.WriteLine("<img src=\"pubenum.gif\" />"); else if (t.IsValueType) sw.WriteLine("<img src=\"pubstructure.gif\" />"); sw.WriteLine("<a href=\"" + HelpUtils.get_type_name(t) + ".html" + "\">" + HelpUtils.build_name_with_possible_generic(t, true) + "</a>"); sw.WriteLine("</td>"); sw.WriteLine("<td width=\"50%\">" + HelpUtils.get_summary(HelpUtils.GetDocumentation(t)) + "</td>"); sw.WriteLine("</tr>"); } WriteFooterTable(sw); } sw.WriteLine("</body>"); sw.WriteLine("</html>"); sw.Close(); }