src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SerializedFormWriterImpl.java
changeset 59294 48b88b9c11eb
parent 54610 a9ab154b1384
equal deleted inserted replaced
59293:5af9fa90cd7b 59294:48b88b9c11eb
    27 
    27 
    28 import java.util.Set;
    28 import java.util.Set;
    29 
    29 
    30 import javax.lang.model.element.TypeElement;
    30 import javax.lang.model.element.TypeElement;
    31 
    31 
       
    32 import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder;
    32 import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
    33 import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
    33 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
    34 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
    34 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
    35 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
    35 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
    36 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
    36 import jdk.javadoc.internal.doclets.formats.html.markup.Navigation;
    37 import jdk.javadoc.internal.doclets.formats.html.markup.Navigation;
    54 public class SerializedFormWriterImpl extends SubWriterHolderWriter
    55 public class SerializedFormWriterImpl extends SubWriterHolderWriter
    55     implements SerializedFormWriter {
    56     implements SerializedFormWriter {
    56 
    57 
    57     Set<TypeElement> visibleClasses;
    58     Set<TypeElement> visibleClasses;
    58 
    59 
    59     /**
       
    60      * HTML tree for main tag.
       
    61      */
       
    62     private HtmlTree mainTree = HtmlTree.MAIN();
       
    63 
       
    64     private final Navigation navBar;
    60     private final Navigation navBar;
    65 
    61 
    66     /**
    62     /**
    67      * @param configuration the configuration data for the doclet
    63      * @param configuration the configuration data for the doclet
    68      */
    64      */
    69     public SerializedFormWriterImpl(HtmlConfiguration configuration) {
    65     public SerializedFormWriterImpl(HtmlConfiguration configuration) {
    70         super(configuration, DocPaths.SERIALIZED_FORM);
    66         super(configuration, DocPaths.SERIALIZED_FORM);
    71         visibleClasses = configuration.getIncludedTypeElements();
    67         visibleClasses = configuration.getIncludedTypeElements();
    72         this.navBar = new Navigation(null, configuration, fixedNavDiv, PageMode.SERIALIZEDFORM, path);
    68         this.navBar = new Navigation(null, configuration, PageMode.SERIALIZEDFORM, path);
    73     }
    69     }
    74 
    70 
    75     /**
    71     /**
    76      * Get the given header.
    72      * Get the given header.
    77      *
    73      *
    78      * @param header the header to write
    74      * @param header the header to write
    79      * @return the body content tree
    75      * @return the body content tree
    80      */
    76      */
    81     public Content getHeader(String header) {
    77     public Content getHeader(String header) {
    82         HtmlTree bodyTree = getBody(getWindowTitle(header));
    78         HtmlTree bodyTree = getBody(getWindowTitle(header));
    83         HtmlTree htmlTree = HtmlTree.HEADER();
    79         Content headerContent = new ContentBuilder();
    84         addTop(htmlTree);
    80         addTop(headerContent);
    85         navBar.setUserHeader(getUserHeaderFooter(true));
    81         navBar.setUserHeader(getUserHeaderFooter(true));
    86         htmlTree.add(navBar.getContent(true));
    82         headerContent.add(navBar.getContent(true));
    87         bodyTree.add(htmlTree);
       
    88         Content h1Content = new StringContent(header);
    83         Content h1Content = new StringContent(header);
    89         Content heading = HtmlTree.HEADING(Headings.PAGE_TITLE_HEADING, true,
    84         Content heading = HtmlTree.HEADING(Headings.PAGE_TITLE_HEADING, true,
    90                 HtmlStyle.title, h1Content);
    85                 HtmlStyle.title, h1Content);
    91         Content div = HtmlTree.DIV(HtmlStyle.header, heading);
    86         Content div = HtmlTree.DIV(HtmlStyle.header, heading);
    92         mainTree.add(div);
    87         bodyContents.setHeader(headerContent)
       
    88                 .addMainContent(div);
    93         return bodyTree;
    89         return bodyTree;
    94     }
    90     }
    95 
    91 
    96     /**
    92     /**
    97      * Get the serialized form summaries header.
    93      * Get the serialized form summaries header.
   214         ul.setStyle(HtmlStyle.blockList);
   210         ul.setStyle(HtmlStyle.blockList);
   215         return ul;
   211         return ul;
   216     }
   212     }
   217 
   213 
   218     /**
   214     /**
   219      * Get the serialized content tree section.
   215      * Add the serialized content tree section.
   220      *
   216      *
   221      * @param serializedTreeContent the serialized content tree to be added
   217      * @param serializedTreeContent the serialized content tree to be added
   222      * @return a div content tree
   218      */
   223      */
   219     public void addSerializedContent(Content serializedTreeContent) {
   224     public Content getSerializedContent(Content serializedTreeContent) {
       
   225         HtmlTree divContent = HtmlTree.DIV(HtmlStyle.serializedFormContainer,
   220         HtmlTree divContent = HtmlTree.DIV(HtmlStyle.serializedFormContainer,
   226                 serializedTreeContent);
   221                 serializedTreeContent);
   227         mainTree.add(divContent);
   222         bodyContents.addMainContent(divContent);
   228         return mainTree;
       
   229     }
   223     }
   230 
   224 
   231     /**
   225     /**
   232      * {@inheritDoc}
   226      * {@inheritDoc}
   233      */
   227      */
   236         serializedSummariesTree.add(HtmlTree.LI(HtmlStyle.blockList, packageSerializedTree));
   230         serializedSummariesTree.add(HtmlTree.LI(HtmlStyle.blockList, packageSerializedTree));
   237     }
   231     }
   238 
   232 
   239     /**
   233     /**
   240      * Add the footer.
   234      * Add the footer.
   241      *
   235      */
   242      * @param serializedTree the serialized tree to be added
   236     public void addFooter() {
   243      */
       
   244     public void addFooter(Content serializedTree) {
       
   245         Content htmlTree = HtmlTree.FOOTER();
   237         Content htmlTree = HtmlTree.FOOTER();
   246         navBar.setUserFooter(getUserHeaderFooter(false));
   238         navBar.setUserFooter(getUserHeaderFooter(false));
   247         htmlTree.add(navBar.getContent(false));
   239         htmlTree.add(navBar.getContent(false));
   248         addBottom(htmlTree);
   240         addBottom(htmlTree);
   249         serializedTree.add(htmlTree);
   241         bodyContents.setFooter(htmlTree);
   250     }
   242     }
   251 
   243 
   252     /**
   244     /**
   253      * {@inheritDoc}
   245      * {@inheritDoc}
   254      */
   246      */
   255     @Override
   247     @Override
   256     public void printDocument(Content serializedTree) throws DocFileIOException {
   248     public void printDocument(Content serializedTree) throws DocFileIOException {
       
   249         serializedTree.add(bodyContents.toContent());
   257         printHtmlDocument(null, "serialized forms", serializedTree);
   250         printHtmlDocument(null, "serialized forms", serializedTree);
   258     }
   251     }
   259 
   252 
   260     /**
   253     /**
   261      * Return an instance of a SerialFieldWriter.
   254      * Return an instance of a SerialFieldWriter.