summaryrefslogtreecommitdiffstats
path: root/src/tools/qdoc/ditaxmlgenerator.cpp
diff options
context:
space:
mode:
authorMartin Smith <martin.smith@digia.com>2012-09-24 09:54:42 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-09-26 10:12:04 +0200
commit4b21631f595b80a692d30e3f8960ff8d6fcc5c4a (patch)
tree65e7add82fe800a14dc6847bce8bde58249eb640 /src/tools/qdoc/ditaxmlgenerator.cpp
parentd8cebcdf67ddebb3bce89a08c7ffab4cc9bf4107 (diff)
qdoc: retrying More refactoring of qdoc data structures
This commit is the second phase of a significant overhaul of qdoc. Two new classes, QDocIndexFiles, and QDocTagFiles, are added to encapsulate the creation and use of the qdoc index files, and the creation of the qdoc tag file. Change-Id: I94651b10628e535ea7b26bd8256037cd819ccea7 Reviewed-by: Martin Smith <martin.smith@digia.com>
Diffstat (limited to 'src/tools/qdoc/ditaxmlgenerator.cpp')
-rw-r--r--src/tools/qdoc/ditaxmlgenerator.cpp19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/tools/qdoc/ditaxmlgenerator.cpp b/src/tools/qdoc/ditaxmlgenerator.cpp
index 10caa436b7..bfd834845a 100644
--- a/src/tools/qdoc/ditaxmlgenerator.cpp
+++ b/src/tools/qdoc/ditaxmlgenerator.cpp
@@ -532,6 +532,7 @@ void DitaXmlGenerator::initializeGenerator(const Config &config)
projectDescription = project + " Reference Documentation";
projectUrl = config.getString(CONFIG_URL);
+ tagFile_ = config.getString(CONFIG_TAGFILE);
outputEncoding = config.getString(CONFIG_OUTPUTENCODING);
if (outputEncoding.isEmpty())
@@ -676,8 +677,15 @@ void DitaXmlGenerator::generateTree()
generateCollisionPages();
QString fileBase = project.toLower().simplified().replace(QLatin1Char(' '), QLatin1Char('-'));
- generateIndex(fileBase, projectUrl, projectDescription);
+ qdb_->generateIndex(outputDir() + QLatin1Char('/') + fileBase + ".index",
+ projectUrl,
+ projectDescription,
+ this);
writeDitaMap();
+ /*
+ Generate the XML tag file, if it was requested.
+ */
+ qdb_->generateTagFile(tagFile_, this);
}
static int countTableColumns(const Atom* t)
@@ -1755,7 +1763,7 @@ int DitaXmlGenerator::generateAtom(const Atom *atom,
columnText = pieces.at(0);
pieces.pop_front();
QString path = pieces.join(' ').trimmed();
- node = qdb_->findNodeForTarget(path, relative, atom);
+ node = qdb_->findNodeForTarget(path, relative);
if (!node)
relative->doc().location().warning(tr("Cannot link to '%1'").arg(path));
}
@@ -3940,13 +3948,6 @@ QString DitaXmlGenerator::getLink(const Atom* atom, const Node* relative, const
return link;
}
-void DitaXmlGenerator::generateIndex(const QString& fileBase,
- const QString& url,
- const QString& title)
-{
- qdb_->generateIndex(outputDir() + QLatin1Char('/') + fileBase + ".index", url, title, this);
-}
-
void DitaXmlGenerator::generateStatus(const Node* node, CodeMarker* marker)
{
Text text;