21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package jdk.javadoc.internal.doclets.formats.html;
27
28 import java.io.IOException;
29 import java.io.OutputStream;
30 import java.io.Writer;
31 import java.util.Collection;
32 import java.util.List;
33 import java.util.zip.ZipEntry;
34 import java.util.zip.ZipOutputStream;
35
36 import javax.lang.model.element.Element;
37 import javax.lang.model.element.ExecutableElement;
38 import javax.lang.model.element.ModuleElement;
39 import javax.lang.model.element.PackageElement;
40 import javax.lang.model.element.TypeElement;
41 import javax.lang.model.util.SimpleElementVisitor9;
42
43 import com.sun.source.doctree.DocTree;
44 import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
45 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
46 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
47 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
48 import jdk.javadoc.internal.doclets.formats.html.markup.Navigation;
49 import jdk.javadoc.internal.doclets.formats.html.markup.Navigation.PageMode;
50 import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
51 import jdk.javadoc.internal.doclets.toolkit.Content;
52 import jdk.javadoc.internal.doclets.toolkit.util.DocFile;
53 import jdk.javadoc.internal.doclets.toolkit.util.DocFileIOException;
54 import jdk.javadoc.internal.doclets.toolkit.util.DocPath;
55 import jdk.javadoc.internal.doclets.toolkit.util.DocPaths;
56 import jdk.javadoc.internal.doclets.toolkit.util.IndexBuilder;
57
58 /**
59 * Generate Index for all the Member Names with Indexing in
60 * Unicode Order. This class is a base class for {@link SingleIndexWriter} and
61 * {@link SplitIndexWriter}. It uses the functionality from
161 }
162 }
163 if (j >= searchListSize) {
164 while (i < memberListSize) {
165 addDescription(dl, memberlist.get(i));
166 i++;
167 }
168 }
169 contentTree.add(dl);
170 }
171
172 protected void addHeading(Character uc, Content contentTree) {
173 String unicode = uc.toString();
174 contentTree.add(getMarkerAnchorForIndex(unicode));
175 Content headContent = new StringContent(unicode);
176 Content heading = HtmlTree.HEADING(Headings.CONTENT_HEADING, false,
177 HtmlStyle.title, headContent);
178 contentTree.add(heading);
179 }
180
181 protected void addDescription(Content dl, Element element) {
182 SearchIndexItem si = new SearchIndexItem();
183 new SimpleElementVisitor9<Void, Void>() {
184
185 @Override
186 public Void visitModule(ModuleElement e, Void p) {
187 if (configuration.showModules) {
188 addDescription(e, dl, si);
189 configuration.moduleSearchIndex.add(si);
190 }
191 return null;
192 }
193
194 @Override
195 public Void visitPackage(PackageElement e, Void p) {
196 addDescription(e, dl, si);
197 configuration.packageSearchIndex.add(si);
198 return null;
199 }
200
201 @Override
202 public Void visitType(TypeElement e, Void p) {
203 addDescription(e, dl, si);
|
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package jdk.javadoc.internal.doclets.formats.html;
27
28 import java.io.IOException;
29 import java.io.OutputStream;
30 import java.io.Writer;
31 import java.util.Collection;
32 import java.util.List;
33 import java.util.zip.ZipEntry;
34 import java.util.zip.ZipOutputStream;
35
36 import javax.lang.model.element.Element;
37 import javax.lang.model.element.ExecutableElement;
38 import javax.lang.model.element.ModuleElement;
39 import javax.lang.model.element.PackageElement;
40 import javax.lang.model.element.TypeElement;
41 import javax.lang.model.util.SimpleElementVisitor14;
42
43 import com.sun.source.doctree.DocTree;
44 import jdk.javadoc.internal.doclets.formats.html.markup.Entity;
45 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle;
46 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag;
47 import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTree;
48 import jdk.javadoc.internal.doclets.formats.html.markup.Navigation;
49 import jdk.javadoc.internal.doclets.formats.html.markup.Navigation.PageMode;
50 import jdk.javadoc.internal.doclets.formats.html.markup.StringContent;
51 import jdk.javadoc.internal.doclets.toolkit.Content;
52 import jdk.javadoc.internal.doclets.toolkit.util.DocFile;
53 import jdk.javadoc.internal.doclets.toolkit.util.DocFileIOException;
54 import jdk.javadoc.internal.doclets.toolkit.util.DocPath;
55 import jdk.javadoc.internal.doclets.toolkit.util.DocPaths;
56 import jdk.javadoc.internal.doclets.toolkit.util.IndexBuilder;
57
58 /**
59 * Generate Index for all the Member Names with Indexing in
60 * Unicode Order. This class is a base class for {@link SingleIndexWriter} and
61 * {@link SplitIndexWriter}. It uses the functionality from
161 }
162 }
163 if (j >= searchListSize) {
164 while (i < memberListSize) {
165 addDescription(dl, memberlist.get(i));
166 i++;
167 }
168 }
169 contentTree.add(dl);
170 }
171
172 protected void addHeading(Character uc, Content contentTree) {
173 String unicode = uc.toString();
174 contentTree.add(getMarkerAnchorForIndex(unicode));
175 Content headContent = new StringContent(unicode);
176 Content heading = HtmlTree.HEADING(Headings.CONTENT_HEADING, false,
177 HtmlStyle.title, headContent);
178 contentTree.add(heading);
179 }
180
181 @SuppressWarnings("preview")
182 protected void addDescription(Content dl, Element element) {
183 SearchIndexItem si = new SearchIndexItem();
184 new SimpleElementVisitor14<Void, Void>() {
185
186 @Override
187 public Void visitModule(ModuleElement e, Void p) {
188 if (configuration.showModules) {
189 addDescription(e, dl, si);
190 configuration.moduleSearchIndex.add(si);
191 }
192 return null;
193 }
194
195 @Override
196 public Void visitPackage(PackageElement e, Void p) {
197 addDescription(e, dl, si);
198 configuration.packageSearchIndex.add(si);
199 return null;
200 }
201
202 @Override
203 public Void visitType(TypeElement e, Void p) {
204 addDescription(e, dl, si);
|