/[classpath]/gjdoc/src/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.java
ViewVC logotype

Diff of /gjdoc/src/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.3 by julian, Fri Dec 3 20:43:46 2004 UTC revision 1.4 by julian, Tue Dec 7 15:00:01 2004 UTC
# Line 295  public class HtmlDoclet Line 295  public class HtmlDoclet
295              output.endCell();              output.endCell();
296    
297              output.beginCell(CssClass.PACKAGE_SUMMARY_RIGHT);              output.beginCell(CssClass.PACKAGE_SUMMARY_RIGHT);
298              printTags(output, classDoc.firstSentenceTags());              printTags(output, classDoc.firstSentenceTags(), true);
299              output.endCell();              output.endCell();
300              output.endRow();              output.endRow();
301           }           }
# Line 316  public class HtmlDoclet Line 316  public class HtmlDoclet
316        output.div(CssClass.PACKAGE_TITLE, "Package " + packageDoc.name());        output.div(CssClass.PACKAGE_TITLE, "Package " + packageDoc.name());
317    
318        output.beginDiv(CssClass.PACKAGE_DESCRIPTION_TOP);        output.beginDiv(CssClass.PACKAGE_DESCRIPTION_TOP);
319        printTags(output, packageDoc.firstSentenceTags());        printTags(output, packageDoc.firstSentenceTags(), true);
320        output.endDiv(CssClass.PACKAGE_DESCRIPTION_TOP);        output.endDiv(CssClass.PACKAGE_DESCRIPTION_TOP);
321                
322        printPackagePageClasses(output, packageDoc.interfaces(),        printPackagePageClasses(output, packageDoc.interfaces(),
# Line 330  public class HtmlDoclet Line 330  public class HtmlDoclet
330    
331        output.anchorName("description");        output.anchorName("description");
332        output.beginDiv(CssClass.PACKAGE_DESCRIPTION_FULL);        output.beginDiv(CssClass.PACKAGE_DESCRIPTION_FULL);
333        printTags(output, packageDoc.inlineTags());        printTags(output, packageDoc.inlineTags(), false);
334        output.endDiv(CssClass.PACKAGE_DESCRIPTION_FULL);        output.endDiv(CssClass.PACKAGE_DESCRIPTION_FULL);
335    
336        printNavBarBottom(output, "package");        printNavBarBottom(output, "package");
# Line 581  public class HtmlDoclet Line 581  public class HtmlDoclet
581           printType(output, containingClass);           printType(output, containingClass);
582        }        }
583        output.beginDiv(CssClass.INDEX_ENTRY_DESCRIPTION);        output.beginDiv(CssClass.INDEX_ENTRY_DESCRIPTION);
584        printTags(output, entry.firstSentenceTags());        printTags(output, entry.firstSentenceTags(), true);
585        output.endDiv(CssClass.INDEX_ENTRY_DESCRIPTION);        output.endDiv(CssClass.INDEX_ENTRY_DESCRIPTION);
586        output.endDiv(CssClass.INDEX_ENTRY);        output.endDiv(CssClass.INDEX_ENTRY);
587     }     }
# Line 827  public class HtmlDoclet Line 827  public class HtmlDoclet
827                 output.endAnchor();                 output.endAnchor();
828              }              }
829              output.beginDiv(CssClass.DEPRECATION_SUMMARY_DESCRIPTION);              output.beginDiv(CssClass.DEPRECATION_SUMMARY_DESCRIPTION);
830              printTags(output, doc.tags("deprecated")[0].firstSentenceTags());              printTags(output, doc.tags("deprecated")[0].firstSentenceTags(), true);
831              output.endDiv(CssClass.DEPRECATION_SUMMARY_DESCRIPTION);              output.endDiv(CssClass.DEPRECATION_SUMMARY_DESCRIPTION);
832    
833              output.endCell();              output.endCell();
# Line 991  public class HtmlDoclet Line 991  public class HtmlDoclet
991    
992        /*        /*
993        output.beginDiv(CssClass.PACKAGE_DESCRIPTION_TOP);        output.beginDiv(CssClass.PACKAGE_DESCRIPTION_TOP);
994        printTags(output, packageDoc.firstSentenceTags());        printTags(output, packageDoc.firstSentenceTags(), true);
995        output.endDiv(CssClass.PACKAGE_DESCRIPTION_TOP);        output.endDiv(CssClass.PACKAGE_DESCRIPTION_TOP);
996        */        */
997    
# Line 1025  public class HtmlDoclet Line 1025  public class HtmlDoclet
1025        /*        /*
1026        output.anchorName("description");        output.anchorName("description");
1027        output.beginDiv(CssClass.PACKAGE_DESCRIPTION_FULL);        output.beginDiv(CssClass.PACKAGE_DESCRIPTION_FULL);
1028        printTags(output, packageDoc.inlineTags());        printTags(output, packageDoc.inlineTags(), false);
1029        output.endDiv(CssClass.PACKAGE_DESCRIPTION_FULL);        output.endDiv(CssClass.PACKAGE_DESCRIPTION_FULL);
1030        */        */
1031    
# Line 1051  public class HtmlDoclet Line 1051  public class HtmlDoclet
1051           output.endCell();           output.endCell();
1052    
1053           output.beginCell(CssClass.OVERVIEW_SUMMARY_RIGHT);           output.beginCell(CssClass.OVERVIEW_SUMMARY_RIGHT);
1054           printTags(output, packageDoc.firstSentenceTags());           printTags(output, packageDoc.firstSentenceTags(), true);
1055           output.endCell();           output.endCell();
1056           output.endRow();           output.endRow();
1057        }        }
# Line 1223  public class HtmlDoclet Line 1223  public class HtmlDoclet
1223        output.hr();        output.hr();
1224    
1225        output.beginDiv(CssClass.CLASS_DESCRIPTION);        output.beginDiv(CssClass.CLASS_DESCRIPTION);
1226        printTags(output, classDoc.inlineTags());        printTags(output, classDoc.inlineTags(), false);
1227        output.endDiv(CssClass.CLASS_DESCRIPTION);        output.endDiv(CssClass.CLASS_DESCRIPTION);
1228    
1229        printTaglets(output, classDoc.tags(), TagletContext.TYPE);        printTaglets(output, classDoc.tags(), TagletContext.TYPE);
# Line 1279  public class HtmlDoclet Line 1279  public class HtmlDoclet
1279        }        }
1280     }     }
1281    
1282       private void collectSpecifiedByRecursive(Set specifyingInterfaces,
1283                                                ClassDoc classDoc,
1284                                                MethodDoc methodDoc)
1285       {
1286          ClassDoc[] interfaces = classDoc.interfaces();
1287          for (int i=0; i<interfaces.length; ++i) {
1288             MethodDoc[] methods = interfaces[i].methods();
1289             for (int j=0; j<methods.length; ++j) {
1290                if (methods[j].name().equals(methodDoc.name())
1291                    && methods[j].signature().equals(methodDoc.signature())) {
1292                   specifyingInterfaces.add(interfaces[i]);
1293                }
1294             }
1295             collectSpecifiedByRecursive(specifyingInterfaces,
1296                                         interfaces[i],
1297                                         methodDoc);
1298          }
1299       }
1300    
1301     private void printMemberDetails(HtmlPage output,     private void printMemberDetails(HtmlPage output,
1302                                     ProgramElementDoc[] memberDocs, String header)                                     ProgramElementDoc[] memberDocs, String header)
1303     {     {
# Line 1325  public class HtmlDoclet Line 1344  public class HtmlDoclet
1344              output.endDiv(CssClass.MEMBER_DETAIL_SYNOPSIS);              output.endDiv(CssClass.MEMBER_DETAIL_SYNOPSIS);
1345    
1346              output.beginDiv(CssClass.MEMBER_DETAIL_DESCRIPTION);              output.beginDiv(CssClass.MEMBER_DETAIL_DESCRIPTION);
1347              printTags(output, memberDoc.inlineTags());              printTags(output, memberDoc.inlineTags(), false);
1348              output.endDiv(CssClass.MEMBER_DETAIL_DESCRIPTION);              output.endDiv(CssClass.MEMBER_DETAIL_DESCRIPTION);
1349    
1350              if (memberDoc.isConstructor() || memberDoc.isMethod()) {              if (memberDoc.isConstructor() || memberDoc.isMethod()) {
1351    
1352                   if (memberDoc.isMethod()) {
1353                      Set specifyingInterfaces = new LinkedHashSet();
1354                      for (ClassDoc cd = memberDoc.containingClass();
1355                           null != cd; cd = cd.superclass()) {
1356                         collectSpecifiedByRecursive(specifyingInterfaces,
1357                                                     cd,
1358                                                     (MethodDoc)memberDoc);
1359                      }
1360    
1361                      if (!specifyingInterfaces.isEmpty()) {
1362                         output.beginDiv(CssClass.MEMBER_DETAIL_SPECIFIED_BY_LIST);
1363                         output.div(CssClass.MEMBER_DETAIL_SPECIFIED_BY_HEADER, "Specified by:");
1364                         Iterator it = specifyingInterfaces.iterator();
1365                         while (it.hasNext()) {
1366                            ClassDoc specifyingInterface = (ClassDoc)it.next();
1367                            output.beginDiv(CssClass.MEMBER_DETAIL_SPECIFIED_BY_ITEM);
1368                            output.print(memberDoc.name() + " in interface ");
1369                            printType(output, specifyingInterface);
1370                            output.endDiv(CssClass.MEMBER_DETAIL_SPECIFIED_BY_ITEM);
1371                         }
1372                         output.endDiv(CssClass.MEMBER_DETAIL_SPECIFIED_BY_LIST);
1373                      }
1374                   }
1375    
1376                 ExecutableMemberDoc execMemberDoc                 ExecutableMemberDoc execMemberDoc
1377                    = (ExecutableMemberDoc)memberDoc;                    = (ExecutableMemberDoc)memberDoc;
1378    
# Line 1352  public class HtmlDoclet Line 1395  public class HtmlDoclet
1395                       output.print(parameter.name());                       output.print(parameter.name());
1396                       if (null != paramTag) {                       if (null != paramTag) {
1397                          output.print(" - ");                          output.print(" - ");
1398                          printTags(output, paramTag.inlineTags());                          printTags(output, paramTag.inlineTags(), false);
1399                       }                       }
1400                       output.endDiv(CssClass.MEMBER_DETAIL_PARAMETER_ITEM);                       output.endDiv(CssClass.MEMBER_DETAIL_PARAMETER_ITEM);
1401                    }                    }
1402                    output.endDiv(CssClass.MEMBER_DETAIL_PARAMETER_LIST);                    output.endDiv(CssClass.MEMBER_DETAIL_PARAMETER_LIST);
1403                 }                 }
1404    
1405                   if (execMemberDoc.isMethod()
1406                       && !"void".equals(((MethodDoc)execMemberDoc).returnType().typeName())) {
1407    
1408                      Tag[] returnTags = execMemberDoc.tags("@return");
1409                      if (returnTags.length > 0) {
1410                         output.beginDiv(CssClass.MEMBER_DETAIL_RETURN_LIST);
1411                         output.div(CssClass.MEMBER_DETAIL_RETURN_HEADER, "Returns:");
1412                         output.beginDiv(CssClass.MEMBER_DETAIL_RETURN_ITEM);
1413    
1414                         printTags(output, returnTags, false);
1415    
1416                         output.endDiv(CssClass.MEMBER_DETAIL_RETURN_ITEM);
1417                         output.endDiv(CssClass.MEMBER_DETAIL_RETURN_LIST);
1418                      }
1419                   }
1420    
1421                 ClassDoc[] thrownExceptions = execMemberDoc.thrownExceptions();                 ClassDoc[] thrownExceptions = execMemberDoc.thrownExceptions();
1422                 if (thrownExceptions.length > 0) {                 if (thrownExceptions.length > 0) {
1423                    output.beginDiv(CssClass.MEMBER_DETAIL_THROWN_LIST);                    output.beginDiv(CssClass.MEMBER_DETAIL_THROWN_LIST);
# Line 1379  public class HtmlDoclet Line 1438  public class HtmlDoclet
1438                       printType(output, exception);                       printType(output, exception);
1439                       if (null != throwsTag) {                       if (null != throwsTag) {
1440                          output.print(" - ");                          output.print(" - ");
1441                          printTags(output, throwsTag.inlineTags());                          printTags(output, throwsTag.inlineTags(), false);
1442                       }                       }
1443                       output.endDiv(CssClass.MEMBER_DETAIL_THROWN_ITEM);                       output.endDiv(CssClass.MEMBER_DETAIL_THROWN_ITEM);
1444                    }                    }
# Line 1458  public class HtmlDoclet Line 1517  public class HtmlDoclet
1517              output.beginCell();              output.beginCell();
1518              output.endCell();              output.endCell();
1519              output.beginCell();              output.beginCell();
1520              printTags(output, memberDoc.firstSentenceTags());              printTags(output, memberDoc.firstSentenceTags(), true);
1521              output.endCell();              output.endCell();
1522              output.endRow();              output.endRow();
1523           }           }
# Line 1466  public class HtmlDoclet Line 1525  public class HtmlDoclet
1525        }        }
1526     }     }
1527    
1528     private void printTag(HtmlPage output, Tag tag)     private void printTag(HtmlPage output, Tag tag, boolean firstSentence)
1529     {     {
1530        if ("Text".equals(tag.name())) {        if ("Text".equals(tag.name())) {
1531           output.print(tag.text());           output.print(tag.text());
# Line 1511  public class HtmlDoclet Line 1570  public class HtmlDoclet
1570              output.print(label);              output.print(label);
1571           }           }
1572        }        }
1573          else if (firstSentence) {
1574             printTags(output, tag.firstSentenceTags(), true);
1575          }
1576          else {
1577             printTags(output, tag.inlineTags(), false);
1578          }
1579     }     }
1580    
1581     private void printTags(HtmlPage output, Tag[] tags)     private void printTags(HtmlPage output, Tag[] tags, boolean firstSentence)
1582     {     {
1583        for (int i=0; i<tags.length; ++i) {        for (int i=0; i<tags.length; ++i) {
1584           printTag(output, tags[i]);           printTag(output, tags[i], firstSentence);
1585        }        }
1586     }     }
1587    

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26