/// <summary> /// Generate the nested elements in the table of contents /// </summary> /// <param name="modelClass"> /// The model class. /// </param> /// <param name="containers"> /// The containers. /// </param> /// <param name="sb"> /// The sb. /// </param> private void GenerateNestedToc(Class modelClass, List<Class> containers, StringBuilder sb) { sb.AppendLine(string.Format("<li>{0}<ul class=\"nav nav-pills nav-stacked\">", modelClass.HtmlLinkToTopPageFocused())); if (containers.Count == 1) { foreach (var c in modelClass.Classes) { sb.AppendLine(string.Format("<li>{0}</li>", c.HtmlLinkToPage())); } } for (int i = 1; i < containers.Count; i++) { if (i == containers.Count - 1) { sb.AppendLine(string.Format("<li>{0}<ul class=\"nav nav-pills nav-stacked\">", containers[i].HtmlLinkToPageFocused())); foreach (var c in containers[i].Classes) { sb.AppendLine(string.Format("<li>{0}</li>", c.HtmlLinkToPage())); } } else { sb.AppendLine(string.Format("<li>{0}<ul class=\"nav nav-pills nav-stacked\">", containers[i].HtmlLinkToPage())); } } for (int i = 1; i < containers.Count; i++) { sb.AppendLine(string.Format("</ul></li>")); } sb.AppendLine(string.Format("</ul></li>")); }