diff options
author | Martin Smith <martin.smith@digia.com> | 2012-09-24 09:54:42 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2012-09-26 10:12:04 +0200 |
commit | 4b21631f595b80a692d30e3f8960ff8d6fcc5c4a (patch) | |
tree | 65e7add82fe800a14dc6847bce8bde58249eb640 /src/tools/qdoc/ditaxmlgenerator.cpp | |
parent | d8cebcdf67ddebb3bce89a08c7ffab4cc9bf4107 (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.cpp | 19 |
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; |