382{
384 for (const auto &n : nl)
385 {
387 t << " class=\"";
388 if ((index&1)==0)
389 t << "even";
390 else
391 t << "odd";
392 if (level>=maxLevel && dynamicSections)
393 t << " hidden";
394 else
395 index++;
396 t << "\"";
397 t << "><td class=\"entry\">";
398 bool nodeOpened = level+1<maxLevel;
400 if (n->isDir)
401 {
403 {
404
405 }
407 {
408
409 }
411 {
412 if ((n->def->getLanguage() == SrcLangExt::Slice) || (n->def->getLanguage() == SrcLangExt::Fortran))
413 {
414 t << "<span class=\"icona\"><span class=\"icon\">M</span></span>";
415 }
416 else if ((n->def->getLanguage() == SrcLangExt::Java) || (n->def->getLanguage() == SrcLangExt::VHDL))
417 {
418 t << "<span class=\"icona\"><span class=\"icon\">P</span></span>";
419 }
420 else
421 {
422 t << "<span class=\"icona\"><span class=\"icon\">N</span></span>";
423 }
424 }
426 {
427 t << "<span class=\"icona\"><span class=\"icon\">M</span></span>";
428 }
430 {
432 t << "<span class=\"icona\"><span class=\"icon\">" << icon << "</span></span>";
433 }
434 else if (dynamicSections)
435 {
437 << "<div class=\"folder-icon"
438 << (nodeOpened ? " open" : "")
439 << "\"></div></span>";
440 }
442 t << "</td><td class=\"desc\">";
443 if (n->def)
444 {
446 }
447 t << "</td></tr>\n";
450 }
451 else
452 {
453 const FileDef *srcRef=nullptr;
455 (
toFileDef(n->def))->generateSourceFile())
456 {
458 }
459 if (srcRef)
460 {
463 t << "<a href=\"" << fn << "\">";
464 }
466 {
467
468 }
470 {
471
472 }
474 {
475 if ((n->def->getLanguage() == SrcLangExt::Slice) || (n->def->getLanguage() == SrcLangExt::Fortran))
476 {
477 t << "<span class=\"icona\"><span class=\"icon\">M</span></span>";
478 }
479 else if ((n->def->getLanguage() == SrcLangExt::Java) || (n->def->getLanguage() == SrcLangExt::VHDL))
480 {
481 t << "<span class=\"icona\"><span class=\"icon\">P</span></span>";
482 }
483 else
484 {
485 t << "<span class=\"icona\"><span class=\"icon\">N</span></span>";
486 }
487 }
489 {
490 t << "<span class=\"icona\"><span class=\"icon\">M</span></span>";
491 }
493 {
495 t << "<span class=\"icona\"><span class=\"icon\">" << icon << "</span></span>";
496 }
498 {
499 t << "<span class=\"icona\"><span class=\"icon\">R</span></span>";
500 }
502 {
503 t << "<span class=\"iconfolder\"><div class=\"folder-icon\"></div></span>";
504 }
505 else
506 {
507 t << "<span class=\"icondoc\"><div class=\"doc-icon\"></div></span>";
508 }
509 if (srcRef)
510 {
511 t << "</a>";
512 }
514 t << "</td><td class=\"desc\">";
515 if (n->def)
516 {
518 }
519 t << "</td></tr>\n";
520 }
521 }
522}
virtual DString getSourceFileBase() const =0
ClassDef * toClassDef(Definition *d)
#define Config_getBool(name)
FileDef * toFileDef(Definition *d)
static void generateBriefDoc(TextStream &t, const Definition *def)
static char compoundIcon(const ClassDef *cd)
static void generateIndent(TextStream &t, const FTVNodePtr &n, bool opened)
static DString generateIndentLabel(const FTVNodePtr &n, int level)
void generateTree(TextStream &t, const FTVNodes &nl, int level, int maxLevel, int &index)
void generateLink(TextStream &t, const FTVNodePtr &n)
void addHtmlExtensionIfMissing(DString &fName)