src/share/classes/com/sun/tools/doclets/formats/html/PackageTreeWriter.java

changeset 766
90af8d87741f
parent 554
9d9f26857129
child 798
4868a36f6fd8
     1.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/PackageTreeWriter.java	Tue Nov 30 09:38:48 2010 -0800
     1.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/PackageTreeWriter.java	Wed Dec 01 11:02:38 2010 -0800
     1.3 @@ -29,12 +29,15 @@
     1.4  
     1.5  import com.sun.javadoc.*;
     1.6  import com.sun.tools.doclets.internal.toolkit.util.*;
     1.7 +import com.sun.tools.doclets.formats.html.markup.*;
     1.8 +import com.sun.tools.doclets.internal.toolkit.*;
     1.9  
    1.10  /**
    1.11   * Class to generate Tree page for a package. The name of the file generated is
    1.12   * "package-tree.html" and it is generated in the respective package directory.
    1.13   *
    1.14   * @author Atul M Dambalkar
    1.15 + * @author Bhavesh Patel (Modified)
    1.16   */
    1.17  public class PackageTreeWriter extends AbstractTreeWriter {
    1.18  
    1.19 @@ -107,94 +110,96 @@
    1.20       * Generate a separate tree file for each package.
    1.21       */
    1.22      protected void generatePackageTreeFile() throws IOException {
    1.23 -        printHtmlHeader(packagedoc.name() + " "
    1.24 -            + configuration.getText("doclet.Window_Class_Hierarchy"), null, true);
    1.25 -
    1.26 -        printPackageTreeHeader();
    1.27 -
    1.28 +        Content body = getPackageTreeHeader();
    1.29 +        Content headContent = getResource("doclet.Hierarchy_For_Package",
    1.30 +                Util.getPackageName(packagedoc));
    1.31 +        Content heading = HtmlTree.HEADING(HtmlConstants.TITLE_HEADING, false,
    1.32 +                HtmlStyle.title, headContent);
    1.33 +        Content div = HtmlTree.DIV(HtmlStyle.header, heading);
    1.34          if (configuration.packages.length > 1) {
    1.35 -            printLinkToMainTree();
    1.36 +            addLinkToMainTree(div);
    1.37          }
    1.38 -
    1.39 -        generateTree(classtree.baseclasses(), "doclet.Class_Hierarchy");
    1.40 -        generateTree(classtree.baseinterfaces(), "doclet.Interface_Hierarchy");
    1.41 -        generateTree(classtree.baseAnnotationTypes(), "doclet.Annotation_Type_Hierarchy");
    1.42 -        generateTree(classtree.baseEnums(), "doclet.Enum_Hierarchy");
    1.43 -
    1.44 -        printPackageTreeFooter();
    1.45 -        printBottom();
    1.46 -        printBodyHtmlEnd();
    1.47 +        body.addContent(div);
    1.48 +        HtmlTree divTree = new HtmlTree(HtmlTag.DIV);
    1.49 +        divTree.addStyle(HtmlStyle.contentContainer);
    1.50 +        addTree(classtree.baseclasses(), "doclet.Class_Hierarchy", divTree);
    1.51 +        addTree(classtree.baseinterfaces(), "doclet.Interface_Hierarchy", divTree);
    1.52 +        addTree(classtree.baseAnnotationTypes(), "doclet.Annotation_Type_Hierarchy", divTree);
    1.53 +        addTree(classtree.baseEnums(), "doclet.Enum_Hierarchy", divTree);
    1.54 +        body.addContent(divTree);
    1.55 +        addNavLinks(false, body);
    1.56 +        addBottom(body);
    1.57 +        printHtmlDocument(null, true, body);
    1.58      }
    1.59  
    1.60      /**
    1.61 -     * Print the navigation bar header for the package tree file.
    1.62 +     * Get the package tree header.
    1.63 +     *
    1.64 +     * @return a content tree for the header
    1.65       */
    1.66 -    protected void printPackageTreeHeader() {
    1.67 -        printTop();
    1.68 -        navLinks(true);
    1.69 -        hr();
    1.70 -        center();
    1.71 -        h2(configuration.getText("doclet.Hierarchy_For_Package",
    1.72 -            Util.getPackageName(packagedoc)));
    1.73 -        centerEnd();
    1.74 +    protected Content getPackageTreeHeader() {
    1.75 +        String title = packagedoc.name() + " " +
    1.76 +                configuration.getText("doclet.Window_Class_Hierarchy");
    1.77 +        Content bodyTree = getBody(true, getWindowTitle(title));
    1.78 +        addTop(bodyTree);
    1.79 +        addNavLinks(true, bodyTree);
    1.80 +        return bodyTree;
    1.81      }
    1.82  
    1.83      /**
    1.84 -     * Generate a link to the tree for all the packages.
    1.85 +     * Add a link to the tree for all the packages.
    1.86 +     *
    1.87 +     * @param div the content tree to which the link will be added
    1.88       */
    1.89 -    protected void printLinkToMainTree() {
    1.90 -        dl();
    1.91 -        dt();
    1.92 -        strongText("doclet.Package_Hierarchies");
    1.93 -        dtEnd();
    1.94 -        dd();
    1.95 -        navLinkMainTree(configuration.getText("doclet.All_Packages"));
    1.96 -        ddEnd();
    1.97 -        dlEnd();
    1.98 -        hr();
    1.99 +    protected void addLinkToMainTree(Content div) {
   1.100 +        Content span = HtmlTree.SPAN(HtmlStyle.strong,
   1.101 +                getResource("doclet.Package_Hierarchies"));
   1.102 +        div.addContent(span);
   1.103 +        HtmlTree ul = new HtmlTree (HtmlTag.UL);
   1.104 +        ul.addStyle(HtmlStyle.horizontal);
   1.105 +        ul.addContent(getNavLinkMainTree(configuration.getText("doclet.All_Packages")));
   1.106 +        div.addContent(ul);
   1.107      }
   1.108  
   1.109      /**
   1.110 -     * Print the navigation bar footer for the package tree file.
   1.111 +     * Get link for the previous package tree file.
   1.112 +     *
   1.113 +     * @return a content tree for the link
   1.114       */
   1.115 -    protected void printPackageTreeFooter() {
   1.116 -        hr();
   1.117 -        navLinks(false);
   1.118 -    }
   1.119 -
   1.120 -    /**
   1.121 -     * Link for the previous package tree file.
   1.122 -     */
   1.123 -    protected void navLinkPrevious() {
   1.124 +    protected Content getNavLinkPrevious() {
   1.125          if (prev == null) {
   1.126 -            navLinkPrevious(null);
   1.127 +            return getNavLinkPrevious(null);
   1.128          } else {
   1.129              String path = DirectoryManager.getRelativePath(packagedoc.name(),
   1.130 -                                                           prev.name());
   1.131 -            navLinkPrevious(path + "package-tree.html");
   1.132 +                    prev.name());
   1.133 +            return getNavLinkPrevious(path + "package-tree.html");
   1.134          }
   1.135      }
   1.136  
   1.137      /**
   1.138 -     * Link for the next package tree file.
   1.139 +     * Get link for the next package tree file.
   1.140 +     *
   1.141 +     * @return a content tree for the link
   1.142       */
   1.143 -    protected void navLinkNext() {
   1.144 +    protected Content getNavLinkNext() {
   1.145          if (next == null) {
   1.146 -            navLinkNext(null);
   1.147 +            return getNavLinkNext(null);
   1.148          } else {
   1.149              String path = DirectoryManager.getRelativePath(packagedoc.name(),
   1.150 -                                                           next.name());
   1.151 -            navLinkNext(path + "package-tree.html");
   1.152 +                    next.name());
   1.153 +            return getNavLinkNext(path + "package-tree.html");
   1.154          }
   1.155      }
   1.156  
   1.157      /**
   1.158 -     * Link to the package summary page for the package of this tree.
   1.159 +     * Get link to the package summary page for the package of this tree.
   1.160 +     *
   1.161 +     * @return a content tree for the package link
   1.162       */
   1.163 -    protected void navLinkPackage() {
   1.164 -        navCellStart();
   1.165 -        printHyperLink("package-summary.html", "", configuration.getText("doclet.Package"),
   1.166 -                        true, "NavBarFont1");
   1.167 -        navCellEnd();
   1.168 +    protected Content getNavLinkPackage() {
   1.169 +        Content linkContent = getHyperLink("package-summary.html", "",
   1.170 +                packageLabel);
   1.171 +        Content li = HtmlTree.LI(linkContent);
   1.172 +        return li;
   1.173      }
   1.174  }

mercurial