public void print(IDocumentGenerator dg, int sectionLevel)
 {
     if (Title != null)
     {
         dg.BeginSectionTitle(sectionLevel, Title, null);
         dg.EndSectionTitle();
         sectionLevel = sectionLevel + 1;
     }
     try
     {
         foreach (var para in Paragraphs)
         {
             para.print(dg, sectionLevel);
         }
         foreach (var sect in Sections)
         {
             sect.print(dg, sectionLevel);
         }
     }
     finally
     {
         if (Title != null)
         {
             sectionLevel = sectionLevel - 1;
         }
     }
 }
 public override void print(IDocumentGenerator dg, int sectionLevel)
 {
     if (Commands.Count > 0)
     {
         dg.BeginSectionTitle(sectionLevel, "", null);
         foreach (var c in Commands)
         {
             c.print(dg, sectionLevel);
         }
         dg.EndSectionTitle();
     }
 }
 public override void print(IDocumentGenerator dg, int sectionLevel)
 {
     if (Title != null)
     {
         dg.BeginSectionTitle(sectionLevel, Title, null);
         dg.EndSectionTitle();
     }
     else
     {
         switch (SimpleSectKind)
         {
             case DocSimpleSectKind.See:
             case DocSimpleSectKind.Return:
             case DocSimpleSectKind.Author:
             case DocSimpleSectKind.Authors:
             case DocSimpleSectKind.Version:
             case DocSimpleSectKind.Since:
             case DocSimpleSectKind.Date:
             case DocSimpleSectKind.Note:
             case DocSimpleSectKind.Warning:
             case DocSimpleSectKind.Pre:
             case DocSimpleSectKind.Post:
             case DocSimpleSectKind.Copyright:
             case DocSimpleSectKind.Invariant:
             case DocSimpleSectKind.Remark:
             case DocSimpleSectKind.Attention:
             case DocSimpleSectKind.Par:
             case DocSimpleSectKind.Rcs:
                 dg.BeginSectionTitle(sectionLevel, SimpleSectKind.ToString(), null);
                 dg.EndSectionTitle();
                 break;
             default:
                 Console.WriteLine("WARNING: unsupported simple section kind: DocSimpleSectKind." + SimpleSectKind);
                 break;
         }
     }
     sectionLevel++;
     try
     {
         foreach (var item in Items)
         {
             item.print(dg, sectionLevel);
         }
     }
     finally
     {
         sectionLevel--;
     }
 }