summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/config.xml1
-rw-r--r--src/util.cpp36
2 files changed, 26 insertions, 11 deletions
diff --git a/src/config.xml b/src/config.xml
index eed486e..5a0af59 100644
--- a/src/config.xml
+++ b/src/config.xml
@@ -3361,7 +3361,6 @@ remove the intermediate dot files that are used to generate the various graphs.
]]>
</docs>
</option>
-
<option type='obsolete' id='USE_WINDOWS_ENCODING'/>
<option type='obsolete' id='DETAILS_AT_TOP'/>
<option type='obsolete' id='QTHELP_FILE'/>
diff --git a/src/util.cpp b/src/util.cpp
index bcb1390..0049098 100644
--- a/src/util.cpp
+++ b/src/util.cpp
@@ -6353,26 +6353,42 @@ void addRefItem(const QList<ListItemInfo> *sli,
}
}
-void addGroupListToTitle(OutputList &ol,Definition *d)
+bool recursivelyAddGroupListToTitle(OutputList &ol,Definition *d,bool root)
{
GroupList *groups = d->partOfGroups();
if (groups) // write list of group to which this definition belongs
{
- ol.pushGeneratorState();
- ol.disableAllBut(OutputGenerator::Html);
- ol.writeString("<div class=\"ingroups\">");
+ if (root)
+ {
+ ol.pushGeneratorState();
+ ol.disableAllBut(OutputGenerator::Html);
+ ol.writeString("<div class=\"ingroups\">");
+ }
GroupListIterator gli(*groups);
GroupDef *gd;
- bool first=TRUE;
+ bool first=true;
for (gli.toFirst();(gd=gli.current());++gli)
{
- if (!first) { ol.writeString(" &#124; "); } else first=FALSE;
- ol.writeObjectLink(gd->getReference(),
- gd->getOutputFileBase(),0,gd->groupTitle());
+ if (recursivelyAddGroupListToTitle(ol, gd, FALSE))
+ {
+ ol.writeString(" &raquo; ");
+ }
+ if (!first) { ol.writeString(" &#124; "); } else first=FALSE;
+ ol.writeObjectLink(gd->getReference(),gd->getOutputFileBase(),0,gd->groupTitle());
}
- ol.writeString("</div>");
- ol.popGeneratorState();
+ if (root)
+ {
+ ol.writeString("</div>");
+ ol.popGeneratorState();
+ }
+ return true;
}
+ return false;
+}
+
+void addGroupListToTitle(OutputList &ol,Definition *d)
+{
+ recursivelyAddGroupListToTitle(ol,d,TRUE);
}
void filterLatexString(FTextStream &t,const char *str,