src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstantsSummaryWriterImpl.java
changeset 59294 48b88b9c11eb
parent 54610 a9ab154b1384
equal deleted inserted replaced
59293:5af9fa90cd7b 59294:48b88b9c11eb
    31 import javax.lang.model.element.Modifier;
    31 import javax.lang.model.element.Modifier;
    32 import javax.lang.model.element.PackageElement;
    32 import javax.lang.model.element.PackageElement;
    33 import javax.lang.model.element.TypeElement;
    33 import javax.lang.model.element.TypeElement;
    34 import javax.lang.model.element.VariableElement;
    34 import javax.lang.model.element.VariableElement;
    35 
    35 
       
    36 import jdk.javadoc.internal.doclets.formats.html.markup.BodyContents;
    36 import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
    37 import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
    37 import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
    38 import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
    38 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
    39 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
    39 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
    40 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
    40 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
    41 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
    74     private TypeElement currentTypeElement;
    75     private TypeElement currentTypeElement;
    75 
    76 
    76     private final TableHeader constantsTableHeader;
    77     private final TableHeader constantsTableHeader;
    77 
    78 
    78     /**
    79     /**
    79      * The HTML tree for main tag.
       
    80      */
       
    81     private final HtmlTree mainTree = HtmlTree.MAIN();
       
    82 
       
    83     /**
       
    84      * The HTML tree for constant values summary.
    80      * The HTML tree for constant values summary.
    85      */
    81      */
    86     private HtmlTree summaryTree;
    82     private HtmlTree summaryTree;
    87 
    83 
    88     private final Navigation navBar;
    84     private final Navigation navBar;
       
    85 
       
    86     private final BodyContents bodyContents = new BodyContents();
    89 
    87 
    90     /**
    88     /**
    91      * Construct a ConstantsSummaryWriter.
    89      * Construct a ConstantsSummaryWriter.
    92      * @param configuration the configuration used in this run
    90      * @param configuration the configuration used in this run
    93      *        of the standard doclet.
    91      *        of the standard doclet.
    95     public ConstantsSummaryWriterImpl(HtmlConfiguration configuration) {
    93     public ConstantsSummaryWriterImpl(HtmlConfiguration configuration) {
    96         super(configuration, DocPaths.CONSTANT_VALUES);
    94         super(configuration, DocPaths.CONSTANT_VALUES);
    97         this.configuration = configuration;
    95         this.configuration = configuration;
    98         constantsTableHeader = new TableHeader(
    96         constantsTableHeader = new TableHeader(
    99                 contents.modifierAndTypeLabel, contents.constantFieldLabel, contents.valueLabel);
    97                 contents.modifierAndTypeLabel, contents.constantFieldLabel, contents.valueLabel);
   100         this.navBar = new Navigation(null, configuration, fixedNavDiv, PageMode.CONSTANTVALUES, path);
    98         this.navBar = new Navigation(null, configuration, PageMode.CONSTANTVALUES, path);
   101     }
    99     }
   102 
   100 
   103     /**
   101     /**
   104      * {@inheritDoc}
   102      * {@inheritDoc}
   105      */
   103      */
   106     @Override
   104     @Override
   107     public Content getHeader() {
   105     public Content getHeader() {
   108         String label = resources.getText("doclet.Constants_Summary");
   106         String label = resources.getText("doclet.Constants_Summary");
   109         HtmlTree bodyTree = getBody(getWindowTitle(label));
   107         HtmlTree bodyTree = getBody(getWindowTitle(label));
   110         HtmlTree htmlTree = HtmlTree.HEADER();
   108         Content headerContent = new ContentBuilder();
   111         addTop(htmlTree);
   109         addTop(headerContent);
   112         navBar.setUserHeader(getUserHeaderFooter(true));
   110         navBar.setUserHeader(getUserHeaderFooter(true));
   113         htmlTree.add(navBar.getContent(true));
   111         headerContent.add(navBar.getContent(true));
   114         bodyTree.add(htmlTree);
   112         bodyContents.setHeader(headerContent);
   115         return bodyTree;
   113         return bodyTree;
   116     }
   114     }
   117 
   115 
   118     /**
   116     /**
   119      * {@inheritDoc}
   117      * {@inheritDoc}
   148 
   146 
   149     /**
   147     /**
   150      * {@inheritDoc}
   148      * {@inheritDoc}
   151      */
   149      */
   152     @Override
   150     @Override
   153     public void addContentsList(Content contentTree, Content contentListTree) {
   151     public void addContentsList(Content contentListTree) {
   154         Content titleContent = contents.constantsSummaryTitle;
   152         Content titleContent = contents.constantsSummaryTitle;
   155         Content pHeading = HtmlTree.HEADING(Headings.PAGE_TITLE_HEADING, true,
   153         Content pHeading = HtmlTree.HEADING(Headings.PAGE_TITLE_HEADING, true,
   156                 HtmlStyle.title, titleContent);
   154                 HtmlStyle.title, titleContent);
   157         Content div = HtmlTree.DIV(HtmlStyle.header, pHeading);
   155         Content div = HtmlTree.DIV(HtmlStyle.header, pHeading);
   158         Content headingContent = contents.contentsHeading;
   156         Content headingContent = contents.contentsHeading;
   159         Content heading = HtmlTree.HEADING(Headings.CONTENT_HEADING, true,
   157         Content heading = HtmlTree.HEADING(Headings.CONTENT_HEADING, true,
   160                 headingContent);
   158                 headingContent);
   161         HtmlTree section = HtmlTree.SECTION(HtmlStyle.packages, heading);
   159         HtmlTree section = HtmlTree.SECTION(HtmlStyle.packages, heading);
   162         section.add(contentListTree);
   160         section.add(contentListTree);
   163         div.add(section);
   161         div.add(section);
   164         mainTree.add(div);
   162         bodyContents.addMainContent(div);
   165     }
   163     }
   166 
   164 
   167     /**
   165     /**
   168      * {@inheritDoc}
   166      * {@inheritDoc}
   169      */
   167      */
   301 
   299 
   302     /**
   300     /**
   303      * {@inheritDoc}
   301      * {@inheritDoc}
   304      */
   302      */
   305     @Override
   303     @Override
   306     public void addConstantSummaries(Content contentTree, Content summariesTree) {
   304     public void addConstantSummaries(Content summariesTree) {
   307         if (summaryTree != null) {
   305         if (summaryTree != null) {
   308             summariesTree.add(summaryTree);
   306             summariesTree.add(summaryTree);
   309         }
   307         }
   310         mainTree.add(summariesTree);
   308         bodyContents.addMainContent(summariesTree);
   311         contentTree.add(mainTree);
   309     }
   312     }
   310 
   313 
   311     /**
   314     /**
   312      * {@inheritDoc}
   315      * {@inheritDoc}
   313      */
   316      */
   314     @Override
   317     @Override
   315     public void addFooter() {
   318     public void addFooter(Content contentTree) {
       
   319         Content htmlTree = HtmlTree.FOOTER();
   316         Content htmlTree = HtmlTree.FOOTER();
   320         navBar.setUserFooter(getUserHeaderFooter(false));
   317         navBar.setUserFooter(getUserHeaderFooter(false));
   321         htmlTree.add(navBar.getContent(false));
   318         htmlTree.add(navBar.getContent(false));
   322         addBottom(htmlTree);
   319         addBottom(htmlTree);
   323         contentTree.add(htmlTree);
   320         bodyContents.setFooter(htmlTree);
   324     }
   321     }
   325 
   322 
   326     /**
   323     /**
   327      * {@inheritDoc}
   324      * {@inheritDoc}
   328      */
   325      */
   329     @Override
   326     @Override
   330     public void printDocument(Content contentTree) throws DocFileIOException {
   327     public void printDocument(Content contentTree) throws DocFileIOException {
       
   328         contentTree.add(bodyContents.toContent());
   331         printHtmlDocument(null, "summary of constants", contentTree);
   329         printHtmlDocument(null, "summary of constants", contentTree);
   332     }
   330     }
   333 }
   331 }