summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoralbert-github <albert.tests@gmail.com>2015-01-06 20:03:38 (GMT)
committeralbert-github <albert.tests@gmail.com>2015-01-06 20:03:38 (GMT)
commit8c97e0cd63bcf942ee5b43c9471055a4ea27551c (patch)
tree2a62f41f438a46c9dc3fadae4479a814a4ee6ae2
parentab33e931873b2ccf5de8692a5cdc82feee7080d2 (diff)
downloadDoxygen-8c97e0cd63bcf942ee5b43c9471055a4ea27551c.zip
Doxygen-8c97e0cd63bcf942ee5b43c9471055a4ea27551c.tar.gz
Doxygen-8c97e0cd63bcf942ee5b43c9471055a4ea27551c.tar.bz2
Bug 742445 - Wrong icons in TOC of CHM help
It was not checked if a page / section had subsections or not it was always assumed they were present (definition.cpp). For pages it was only checked if it had subpages and not section (index.cpp).
-rw-r--r--src/definition.cpp6
-rw-r--r--src/index.cpp4
2 files changed, 7 insertions, 3 deletions
diff --git a/src/definition.cpp b/src/definition.cpp
index 8014a37..0ef55d4 100644
--- a/src/definition.cpp
+++ b/src/definition.cpp
@@ -495,7 +495,11 @@ void Definition::addSectionsToIndex()
}
QCString title = si->title;
if (title.isEmpty()) title = si->label;
- Doxygen::indexList->addContentsItem(TRUE,title,
+ // determine if there is a next level inside this item
+ ++li;
+ bool isDir = ((li.current()) ? (int)(li.current()->type > nextLevel):FALSE);
+ --li;
+ Doxygen::indexList->addContentsItem(isDir,title,
getReference(),
getOutputFileBase(),
si->label,
diff --git a/src/index.cpp b/src/index.cpp
index 9f7542f..9ded1ab 100644
--- a/src/index.cpp
+++ b/src/index.cpp
@@ -3116,14 +3116,14 @@ static void writePages(PageDef *pd,FTVHelp *ftv)
{
//printf("*** adding %s\n",pageTitle.data());
ftv->addContentsItem(
- hasSubPages,pageTitle,
+ hasSubPages || hasSections,pageTitle,
pd->getReference(),pd->getOutputFileBase(),
0,hasSubPages,TRUE,pd);
}
if (addToIndex && pd!=Doxygen::mainPage)
{
Doxygen::indexList->addContentsItem(
- hasSubPages,pageTitle,
+ hasSubPages || hasSections,pageTitle,
pd->getReference(),pd->getOutputFileBase(),
0,hasSubPages,TRUE);
}