summaryrefslogtreecommitdiffstats
path: root/src/groupdef.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/groupdef.cpp')
-rw-r--r--src/groupdef.cpp83
1 files changed, 79 insertions, 4 deletions
diff --git a/src/groupdef.cpp b/src/groupdef.cpp
index a39ec53..b3af64c 100644
--- a/src/groupdef.cpp
+++ b/src/groupdef.cpp
@@ -687,6 +687,32 @@ void GroupDef::writeDocumentation(OutputList &ol)
}
}
+ writeMemberDocumentation(ol);
+
+ if (!Config_getString("GENERATE_TAGFILE").isEmpty())
+ {
+ writeDocAnchorsToTagFile();
+ Doxygen::tagFile << " </compound>" << endl;
+ }
+
+ endFile(ol);
+ ol.popGeneratorState();
+
+ if (Config_getBool("SEPARATE_MEMBER_PAGES"))
+ {
+ allMemberList->sort();
+ writeMemberPages(ol);
+ }
+
+}
+
+void GroupDef::writeMemberDocumentation(OutputList &ol)
+{
+ if (Config_getBool("SEPARATE_MEMBER_PAGES"))
+ {
+ ol.disable(OutputGenerator::Html);
+ }
+
docDefineMembers.writeDocumentation(ol,name(),this,
theTranslator->trDefineDocumentation());
@@ -705,16 +731,65 @@ void GroupDef::writeDocumentation(OutputList &ol)
docVarMembers.writeDocumentation(ol,name(),this,
theTranslator->trVariableDocumentation());
- if (!Config_getString("GENERATE_TAGFILE").isEmpty())
+ if (Config_getBool("SEPARATE_MEMBER_PAGES"))
{
- writeDocAnchorsToTagFile();
- Doxygen::tagFile << " </compound>" << endl;
+ ol.enable(OutputGenerator::Html);
}
+}
+
+void GroupDef::writeMemberPages(OutputList &ol)
+{
+ ol.pushGeneratorState();
+ ol.disableAllBut(OutputGenerator::Html);
+
+ docDefineMembers.writeDocumentationPage(ol,name(),this);
+ docProtoMembers.writeDocumentationPage(ol,name(),this);
+ docTypedefMembers.writeDocumentationPage(ol,name(),this);
+ docEnumMembers.writeDocumentationPage(ol,name(),this);
+ docFuncMembers.writeDocumentationPage(ol,name(),this);
+ docVarMembers.writeDocumentationPage(ol,name(),this);
- endFile(ol);
ol.popGeneratorState();
}
+void GroupDef::writeQuickMemberLinks(OutputList &ol,MemberDef *currentMd) const
+{
+ ol.writeString(" <div class=\"navtab\">\n");
+ ol.writeString(" <table>\n");
+
+ MemberListIterator mli(*allMemberList);
+ MemberDef *md;
+ for (mli.toFirst();(md=mli.current());++mli)
+ {
+ if (md->getGroupDef()==this && md->isLinkable())
+ {
+ ol.writeString(" <tr><td class=\"navtab\">");
+ if (md->isLinkableInProject())
+ {
+ if (md==currentMd) // selected item => highlight
+ {
+ ol.writeString("<a class=\"qindexHL\" ");
+ }
+ else
+ {
+ ol.writeString("<a class=\"qindex\" ");
+ }
+ ol.writeString("href=\"");
+ ol.writeString(md->getOutputFileBase()+Doxygen::htmlFileExtension+"#"+md->anchor());
+ ol.writeString("\">");
+ ol.writeString(md->localName());
+ ol.writeString("</a>");
+ }
+ ol.writeString("</td></tr>\n");
+ }
+ }
+
+ ol.writeString(" </table>\n");
+ ol.writeString(" </div>\n");
+}
+
+
+
//---- helper functions ------------------------------------------------------
void addClassToGroups(Entry *root,ClassDef *cd)