src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AllPackagesIndexWriter.java
changeset 59294 48b88b9c11eb
parent 54596 86c1da00dd6a
equal deleted inserted replaced
59293:5af9fa90cd7b 59294:48b88b9c11eb
    24  */
    24  */
    25 package jdk.javadoc.internal.doclets.formats.html;
    25 package jdk.javadoc.internal.doclets.formats.html;
    26 
    26 
    27 import javax.lang.model.element.PackageElement;
    27 import javax.lang.model.element.PackageElement;
    28 
    28 
       
    29 import jdk.javadoc.internal.doclets.formats.html.markup.BodyContents;
    29 import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
    30 import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
    30 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
    31 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
    31 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
    32 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
    32 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
    33 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
    33 import jdk.javadoc.internal.doclets.formats.html.markup.Navigation;
    34 import jdk.javadoc.internal.doclets.formats.html.markup.Navigation;
    44  * Generate the file with list of all the packages in this run.
    45  * Generate the file with list of all the packages in this run.
    45  */
    46  */
    46 public class AllPackagesIndexWriter extends HtmlDocletWriter {
    47 public class AllPackagesIndexWriter extends HtmlDocletWriter {
    47 
    48 
    48     /**
    49     /**
    49      * The HTML tree for main tag.
       
    50      */
       
    51     protected HtmlTree mainTree = HtmlTree.MAIN();
       
    52 
       
    53     private final Navigation navBar;
       
    54 
       
    55     /**
       
    56      * Construct AllPackagesIndexWriter object.
    50      * Construct AllPackagesIndexWriter object.
    57      *
    51      *
    58      * @param configuration The current configuration
    52      * @param configuration The current configuration
    59      * @param filename Path to the file which is getting generated.
    53      * @param filename Path to the file which is getting generated.
    60      */
    54      */
    61     public AllPackagesIndexWriter(HtmlConfiguration configuration, DocPath filename) {
    55     public AllPackagesIndexWriter(HtmlConfiguration configuration, DocPath filename) {
    62         super(configuration, filename);
    56         super(configuration, filename);
    63         this.navBar = new Navigation(null, configuration, fixedNavDiv, PageMode.ALLPACKAGES, path);
       
    64     }
    57     }
    65 
    58 
    66     /**
    59     /**
    67      * Create AllPackagesIndexWriter object.
    60      * Create AllPackagesIndexWriter object.
    68      *
    61      *
    81     /**
    74     /**
    82      * Print all the packages in the file.
    75      * Print all the packages in the file.
    83      */
    76      */
    84     protected void buildAllPackagesFile() throws DocFileIOException {
    77     protected void buildAllPackagesFile() throws DocFileIOException {
    85         String label = resources.getText("doclet.All_Packages");
    78         String label = resources.getText("doclet.All_Packages");
    86         HtmlTree bodyTree = getBody(getWindowTitle(label));
    79         Content headerContent = new ContentBuilder();
    87         HtmlTree header = HtmlTree.HEADER();
    80         Navigation navBar = new Navigation(null, configuration, PageMode.ALLPACKAGES, path);
    88         addTop(header);
    81         addTop(headerContent);
    89         navBar.setUserHeader(getUserHeaderFooter(true));
    82         navBar.setUserHeader(getUserHeaderFooter(true));
    90         header.add(navBar.getContent(true));
    83         headerContent.add(navBar.getContent(true));
    91         bodyTree.add(header);
       
    92         HtmlTree div = new HtmlTree(HtmlTag.DIV);
    84         HtmlTree div = new HtmlTree(HtmlTag.DIV);
    93         div.setStyle(HtmlStyle.allPackagesContainer);
    85         div.setStyle(HtmlStyle.allPackagesContainer);
    94         addPackages(div);
    86         addPackages(div);
    95         Content titleContent = contents.allPackagesLabel;
    87         Content titleContent = contents.allPackagesLabel;
    96         Content pHeading = HtmlTree.HEADING(Headings.PAGE_TITLE_HEADING, true,
    88         Content pHeading = HtmlTree.HEADING(Headings.PAGE_TITLE_HEADING, true,
    97                 HtmlStyle.title, titleContent);
    89                 HtmlStyle.title, titleContent);
    98         Content headerDiv = HtmlTree.DIV(HtmlStyle.header, pHeading);
    90         Content headerDiv = HtmlTree.DIV(HtmlStyle.header, pHeading);
    99         mainTree.add(headerDiv);
       
   100         mainTree.add(div);
       
   101         bodyTree.add(mainTree);
       
   102         Content footer = HtmlTree.FOOTER();
    91         Content footer = HtmlTree.FOOTER();
   103         navBar.setUserFooter(getUserHeaderFooter(false));
    92         navBar.setUserFooter(getUserHeaderFooter(false));
   104         footer.add(navBar.getContent(false));
    93         footer.add(navBar.getContent(false));
   105         addBottom(footer);
    94         addBottom(footer);
   106         bodyTree.add(footer);
    95         HtmlTree bodyTree = getBody(getWindowTitle(label));
       
    96         bodyTree.add(new BodyContents()
       
    97                 .setHeader(headerContent)
       
    98                 .addMainContent(headerDiv)
       
    99                 .addMainContent(div)
       
   100                 .setFooter(footer)
       
   101                 .toContent());
   107         printHtmlDocument(null, "package index", bodyTree);
   102         printHtmlDocument(null, "package index", bodyTree);
   108     }
   103     }
   109 
   104 
   110     /**
   105     /**
   111      * Add all the packages to the content tree.
   106      * Add all the packages to the content tree.