summaryrefslogtreecommitdiffstats
path: root/src/index.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/index.cpp')
-rw-r--r--src/index.cpp75
1 files changed, 68 insertions, 7 deletions
diff --git a/src/index.cpp b/src/index.cpp
index 324b42b..8e878cd 100644
--- a/src/index.cpp
+++ b/src/index.cpp
@@ -2637,12 +2637,55 @@ void writeGraphInfo(OutputList &ol)
ol.popGeneratorState();
}
+void writeGroupIndexItem(GroupDef *gd,MemberList *ml,const QCString &title,
+ HtmlHelp *htmlHelp,FTVHelp *ftvHelp)
+{
+ if (ml && ml->count()>0)
+ {
+ bool first=TRUE;
+ MemberDef *md=ml->first();
+ while (md)
+ {
+ if (md->isDetailedSectionVisible(TRUE,FALSE))
+ {
+ if (first)
+ {
+ first=FALSE;
+ if (htmlHelp)
+ {
+ htmlHelp->addContentsItem(TRUE, convertToHtml(title), gd->getOutputFileBase(),0);
+ htmlHelp->incContentsDepth();
+ }
+ if (ftvHelp)
+ {
+
+ ftvHelp->addContentsItem(TRUE, gd->getReference(), gd->getOutputFileBase(), 0, title);
+ ftvHelp->incContentsDepth();
+ }
+ }
+ if (htmlHelp)
+ {
+ htmlHelp->addContentsItem(FALSE,md->name(),md->getOutputFileBase(),md->anchor());
+ }
+ if (ftvHelp)
+ {
+ ftvHelp->addContentsItem(FALSE,md->getReference(),md->getOutputFileBase(),md->anchor(),md->name());
+ }
+ }
+ md=ml->next();
+ }
+
+ if (htmlHelp && !first) htmlHelp->decContentsDepth();
+ if (ftvHelp && !first) ftvHelp->decContentsDepth();
+
+ }
+}
+
//----------------------------------------------------------------------------
/*!
* write groups as hierarchical trees
* \author KPW
*/
-
void writeGroupTreeNode(OutputList &ol, GroupDef *gd,int level)
{
HtmlHelp *htmlHelp=0;
@@ -2680,12 +2723,15 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,int level)
int numSubItems = 0;
if ( Config_getBool("TOC_EXPAND"))
{
- numSubItems += gd->docDefineMembers.count();
- numSubItems += gd->docTypedefMembers.count();
- numSubItems += gd->docEnumMembers.count();
- numSubItems += gd->docFuncMembers.count();
- numSubItems += gd->docVarMembers.count();
- numSubItems += gd->docProtoMembers.count();
+ QListIterator<MemberList> mli(gd->getMemberLists());
+ MemberList *ml;
+ for (mli.toFirst();(ml=mli.current());++mli)
+ {
+ if (ml->listType()&MemberList::documentationLists)
+ {
+ numSubItems += ml->count();
+ }
+ }
numSubItems += gd->namespaceSDict->count();
numSubItems += gd->classSDict->count();
numSubItems += gd->fileList->count();
@@ -2759,6 +2805,20 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,int level)
if (Config_getBool("TOC_EXPAND"))
{
+ writeGroupIndexItem(gd,gd->getMemberList(MemberList::docDefineMembers),
+ theTranslator->trDefines(),htmlHelp,ftvHelp);
+ writeGroupIndexItem(gd,gd->getMemberList(MemberList::docTypedefMembers),
+ theTranslator->trTypedefs(),htmlHelp,ftvHelp);
+ writeGroupIndexItem(gd,gd->getMemberList(MemberList::docEnumMembers),
+ theTranslator->trEnumerations(),htmlHelp,ftvHelp);
+ writeGroupIndexItem(gd,gd->getMemberList(MemberList::docFuncMembers),
+ theTranslator->trFunctions(),htmlHelp,ftvHelp);
+ writeGroupIndexItem(gd,gd->getMemberList(MemberList::docVarMembers),
+ theTranslator->trVariables(),htmlHelp,ftvHelp);
+ writeGroupIndexItem(gd,gd->getMemberList(MemberList::docProtoMembers),
+ theTranslator->trFuncProtos(),htmlHelp,ftvHelp);
+#if 0
+
// write members
struct MemInfo
{
@@ -2821,6 +2881,7 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,int level)
}
}
+#endif
// write namespaces
NamespaceSDict *namespaceSDict=gd->namespaceSDict;