summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2014-08-04 19:02:07 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2014-08-04 19:02:07 (GMT)
commit7a1196384f9124f872befea1249eaf9bb99924b5 (patch)
tree3b47008eb1cd22f610d357048b71539ec1a15682
parentc5c763056535216ccce4bed4892358bf5c8d1fd5 (diff)
parentc7c7d73c184ee2eebf65e83044cf1e325751cffa (diff)
downloadDoxygen-7a1196384f9124f872befea1249eaf9bb99924b5.zip
Doxygen-7a1196384f9124f872befea1249eaf9bb99924b5.tar.gz
Doxygen-7a1196384f9124f872befea1249eaf9bb99924b5.tar.bz2
Merge branch 'NimbusKit-feature-groupbreadcrumbs'
-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,