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

changeset 233
5240b1120530
parent 184
905e151a185a
child 554
9d9f26857129
equal deleted inserted replaced
232:1fbc1cc6e260 233:5240b1120530
23 * have any questions. 23 * have any questions.
24 */ 24 */
25 25
26 package com.sun.tools.doclets.formats.html; 26 package com.sun.tools.doclets.formats.html;
27 27
28 import java.util.*;
29
30 import com.sun.javadoc.*;
28 import com.sun.tools.doclets.internal.toolkit.*; 31 import com.sun.tools.doclets.internal.toolkit.*;
29 import com.sun.tools.doclets.internal.toolkit.util.*; 32 import com.sun.tools.doclets.internal.toolkit.util.*;
30 import com.sun.tools.doclets.internal.toolkit.builders.*; 33 import com.sun.tools.doclets.internal.toolkit.builders.*;
31 import com.sun.javadoc.*;
32
33 import java.util.*;
34 import com.sun.tools.doclets.internal.toolkit.taglets.*; 34 import com.sun.tools.doclets.internal.toolkit.taglets.*;
35 35
36 /** 36 /**
37 * Generate the Class Information Page. 37 * Generate the Class Information Page.
38 * @see com.sun.javadoc.ClassDoc 38 * @see com.sun.javadoc.ClassDoc
169 /** 169 /**
170 * {@inheritDoc} 170 * {@inheritDoc}
171 */ 171 */
172 public void writeClassSignature(String modifiers) { 172 public void writeClassSignature(String modifiers) {
173 boolean isInterface = classDoc.isInterface(); 173 boolean isInterface = classDoc.isInterface();
174 dl();
175 dt();
176 preNoNewLine(); 174 preNoNewLine();
177 writeAnnotationInfo(classDoc); 175 writeAnnotationInfo(classDoc);
178 print(modifiers); 176 print(modifiers);
179 LinkInfoImpl linkInfo = new LinkInfoImpl( 177 LinkInfoImpl linkInfo = new LinkInfoImpl(
180 LinkInfoImpl.CONTEXT_CLASS_SIGNATURE, classDoc, false); 178 LinkInfoImpl.CONTEXT_CLASS_SIGNATURE, classDoc, false);
189 } 187 }
190 if (!isInterface) { 188 if (!isInterface) {
191 Type superclass = Util.getFirstVisibleSuperClass(classDoc, 189 Type superclass = Util.getFirstVisibleSuperClass(classDoc,
192 configuration()); 190 configuration());
193 if (superclass != null) { 191 if (superclass != null) {
194 dt(); 192 println();
195 print("extends "); 193 print("extends ");
196 printLink(new LinkInfoImpl( 194 printLink(new LinkInfoImpl(
197 LinkInfoImpl.CONTEXT_CLASS_SIGNATURE_PARENT_NAME, 195 LinkInfoImpl.CONTEXT_CLASS_SIGNATURE_PARENT_NAME,
198 superclass)); 196 superclass));
199 } 197 }
206 if (! (classDoc.isPublic() || 204 if (! (classDoc.isPublic() ||
207 Util.isLinkable(classDoc, configuration()))) { 205 Util.isLinkable(classDoc, configuration()))) {
208 continue; 206 continue;
209 } 207 }
210 if (counter == 0) { 208 if (counter == 0) {
211 dt(); 209 println();
212 print(isInterface? "extends " : "implements "); 210 print(isInterface? "extends " : "implements ");
213 } else { 211 } else {
214 print(", "); 212 print(", ");
215 } 213 }
216 printLink(new LinkInfoImpl( 214 printLink(new LinkInfoImpl(
217 LinkInfoImpl.CONTEXT_CLASS_SIGNATURE_PARENT_NAME, 215 LinkInfoImpl.CONTEXT_CLASS_SIGNATURE_PARENT_NAME,
218 implIntfacs[i])); 216 implIntfacs[i]));
219 counter++; 217 counter++;
220 } 218 }
221 } 219 }
222 dlEnd();
223 preEnd(); 220 preEnd();
224 p(); 221 p();
225 } 222 }
226 223
227 /** 224 /**
340 dl(); 337 dl();
341 dt(); 338 dt();
342 TagletOutput output = (new ParamTaglet()).getTagletOutput(classDoc, 339 TagletOutput output = (new ParamTaglet()).getTagletOutput(classDoc,
343 getTagletWriterInstance(false)); 340 getTagletWriterInstance(false));
344 print(output.toString()); 341 print(output.toString());
342 dtEnd();
345 dlEnd(); 343 dlEnd();
346 } 344 }
347 } 345 }
348 346
349 /** 347 /**
358 List<ClassDoc> subclasses = classtree.subs(classDoc, false); 356 List<ClassDoc> subclasses = classtree.subs(classDoc, false);
359 if (subclasses.size() > 0) { 357 if (subclasses.size() > 0) {
360 dl(); 358 dl();
361 dt(); 359 dt();
362 strongText("doclet.Subclasses"); 360 strongText("doclet.Subclasses");
361 dtEnd();
363 writeClassLinks(LinkInfoImpl.CONTEXT_SUBCLASSES, 362 writeClassLinks(LinkInfoImpl.CONTEXT_SUBCLASSES,
364 subclasses); 363 subclasses);
364 dlEnd();
365 } 365 }
366 } 366 }
367 } 367 }
368 368
369 /** 369 /**
374 List<ClassDoc> subInterfaces = classtree.allSubs(classDoc, false); 374 List<ClassDoc> subInterfaces = classtree.allSubs(classDoc, false);
375 if (subInterfaces.size() > 0) { 375 if (subInterfaces.size() > 0) {
376 dl(); 376 dl();
377 dt(); 377 dt();
378 strongText("doclet.Subinterfaces"); 378 strongText("doclet.Subinterfaces");
379 dtEnd();
379 writeClassLinks(LinkInfoImpl.CONTEXT_SUBINTERFACES, 380 writeClassLinks(LinkInfoImpl.CONTEXT_SUBINTERFACES,
380 subInterfaces); 381 subInterfaces);
382 dlEnd();
381 } 383 }
382 } 384 }
383 } 385 }
384 386
385 /** 387 /**
396 List<ClassDoc> implcl = classtree.implementingclasses(classDoc); 398 List<ClassDoc> implcl = classtree.implementingclasses(classDoc);
397 if (implcl.size() > 0) { 399 if (implcl.size() > 0) {
398 dl(); 400 dl();
399 dt(); 401 dt();
400 strongText("doclet.Implementing_Classes"); 402 strongText("doclet.Implementing_Classes");
403 dtEnd();
401 writeClassLinks(LinkInfoImpl.CONTEXT_IMPLEMENTED_CLASSES, 404 writeClassLinks(LinkInfoImpl.CONTEXT_IMPLEMENTED_CLASSES,
402 implcl); 405 implcl);
406 dlEnd();
403 } 407 }
404 } 408 }
405 409
406 /** 410 /**
407 * {@inheritDoc} 411 * {@inheritDoc}
412 List<Type> interfaceArray = Util.getAllInterfaces(classDoc, configuration); 416 List<Type> interfaceArray = Util.getAllInterfaces(classDoc, configuration);
413 if (classDoc.isClass() && interfaceArray.size() > 0) { 417 if (classDoc.isClass() && interfaceArray.size() > 0) {
414 dl(); 418 dl();
415 dt(); 419 dt();
416 strongText("doclet.All_Implemented_Interfaces"); 420 strongText("doclet.All_Implemented_Interfaces");
421 dtEnd();
417 writeClassLinks(LinkInfoImpl.CONTEXT_IMPLEMENTED_INTERFACES, 422 writeClassLinks(LinkInfoImpl.CONTEXT_IMPLEMENTED_INTERFACES,
418 interfaceArray); 423 interfaceArray);
424 dlEnd();
419 } 425 }
420 } 426 }
421 427
422 /** 428 /**
423 * {@inheritDoc} 429 * {@inheritDoc}
428 List<Type> interfaceArray = Util.getAllInterfaces(classDoc, configuration); 434 List<Type> interfaceArray = Util.getAllInterfaces(classDoc, configuration);
429 if (classDoc.isInterface() && interfaceArray.size() > 0) { 435 if (classDoc.isInterface() && interfaceArray.size() > 0) {
430 dl(); 436 dl();
431 dt(); 437 dt();
432 strongText("doclet.All_Superinterfaces"); 438 strongText("doclet.All_Superinterfaces");
439 dtEnd();
433 writeClassLinks(LinkInfoImpl.CONTEXT_SUPER_INTERFACES, 440 writeClassLinks(LinkInfoImpl.CONTEXT_SUPER_INTERFACES,
434 interfaceArray); 441 interfaceArray);
442 dlEnd();
435 } 443 }
436 } 444 }
437 445
438 /** 446 /**
439 * Generate links to the given classes. 447 * Generate links to the given classes.
453 } else { 461 } else {
454 printLink(new LinkInfoImpl(context, (Type)(typeList[i]))); 462 printLink(new LinkInfoImpl(context, (Type)(typeList[i])));
455 } 463 }
456 } 464 }
457 ddEnd(); 465 ddEnd();
458 dlEnd();
459 } 466 }
460 467
461 protected void navLinkTree() { 468 protected void navLinkTree() {
462 navCellStart(); 469 navCellStart();
463 printHyperLink("package-tree.html", "", 470 printHyperLink("package-tree.html", "",
572 if (outerClass.isInterface()) { 579 if (outerClass.isInterface()) {
573 strongText("doclet.Enclosing_Interface"); 580 strongText("doclet.Enclosing_Interface");
574 } else { 581 } else {
575 strongText("doclet.Enclosing_Class"); 582 strongText("doclet.Enclosing_Class");
576 } 583 }
584 dtEnd();
577 dd(); 585 dd();
578 printLink(new LinkInfoImpl(LinkInfoImpl.CONTEXT_CLASS, outerClass, 586 printLink(new LinkInfoImpl(LinkInfoImpl.CONTEXT_CLASS, outerClass,
579 false)); 587 false));
580 ddEnd(); 588 ddEnd();
581 dlEnd(); 589 dlEnd();

mercurial