langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConfigurationImpl.java
changeset 40500 f293dbb81a53
parent 40303 96a1226aca18
child 40508 74ef30d16fb9
--- a/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConfigurationImpl.java	Mon Aug 15 13:42:34 2016 -0700
+++ b/langtools/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConfigurationImpl.java	Mon Aug 15 18:00:36 2016 -0700
@@ -198,6 +198,12 @@
     public boolean createoverview = false;
 
     /**
+     * Specifies whether or not frames should be generated.
+     * Defaults to true; can be set by --frames; can be set to false by --no-frames; last one wins.
+     */
+    public boolean frames = true;
+
+    /**
      * This is the HTML version of the generated pages. HTML 4.01 is the default output version.
      */
     public HtmlVersion htmlVersion = HtmlVersion.HTML4;
@@ -414,18 +420,18 @@
      * package to document. It will be a class page(first in the sorted order),
      * if only classes are provided on the command line.
      *
-     * @param root Root of the program structure.
+     * @param docEnv Root of the program structure.
      */
-    protected void setTopFile(DocletEnvironment root) {
-        if (!checkForDeprecation(root)) {
+    protected void setTopFile(DocletEnvironment docEnv) {
+        if (!checkForDeprecation(docEnv)) {
             return;
         }
         if (createoverview) {
-            topFile = DocPaths.OVERVIEW_SUMMARY;
+            topFile = DocPaths.overviewSummary(frames);
         } else {
             if (packages.size() == 1 && packages.first().isUnnamed()) {
-                if (!root.getIncludedClasses().isEmpty()) {
-                    List<TypeElement> classes = new ArrayList<>(root.getIncludedClasses());
+                if (!docEnv.getIncludedClasses().isEmpty()) {
+                    List<TypeElement> classes = new ArrayList<>(docEnv.getIncludedClasses());
                     TypeElement te = getValidClass(classes);
                     topFile = DocPath.forClass(utils, te);
                 }
@@ -727,6 +733,22 @@
                     return true;
                 }
             },
+            new Option(this, "--frames") {
+                @Override
+                public boolean process(String opt,  ListIterator<String> args) {
+                    optionsProcessed.add(this);
+                    frames = true;
+                    return true;
+                }
+            },
+            new Option(this, "--no-frames") {
+                @Override
+                public boolean process(String opt,  ListIterator<String> args) {
+                    optionsProcessed.add(this);
+                    frames = false;
+                    return true;
+                }
+            },
             new Hidden(this, "-packagesheader", 1) {
                 @Override
                 public boolean process(String opt,  ListIterator<String> args) {