summaryrefslogtreecommitdiff
path: root/src/qdoc/docbookgenerator.cpp
diff options
context:
space:
mode:
authorTopi Reinio <topi.reinio@qt.io>2020-01-03 23:10:47 +0100
committerTopi Reinio <topi.reinio@qt.io>2020-01-13 10:30:34 +0100
commitccdbf30b6ac9180ead6fc22c858b6fac112d493c (patch)
tree684348bac8eae2acffe5c78545a608bbee9c62a9 /src/qdoc/docbookgenerator.cpp
parentade15563a6c7613b58201e6e05e3f67fde3f6056 (diff)
downloadqttools-ccdbf30b6ac9180ead6fc22c858b6fac112d493c.tar.gz
qdoc: Make Config a singleton
There is no need to pass a pointer to Config throughout the API; the only instance of it is created in main() so we can turn it into a singleton. Having access to Config without API changes makes implementation of configurable features easier. Change-Id: Ida47e067865082dfe036a7a97f7f1ffc736db346 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Diffstat (limited to 'src/qdoc/docbookgenerator.cpp')
-rw-r--r--src/qdoc/docbookgenerator.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/qdoc/docbookgenerator.cpp b/src/qdoc/docbookgenerator.cpp
index 0a87b0c3a..3c92b9705 100644
--- a/src/qdoc/docbookgenerator.cpp
+++ b/src/qdoc/docbookgenerator.cpp
@@ -36,6 +36,7 @@
#include <QtCore/qversionnumber.h>
#include "codemarker.h"
+#include "config.h"
#include "generator.h"
#include "docbookgenerator.h"
#include "node.h"
@@ -96,12 +97,13 @@ static void writeAnchor(QXmlStreamWriter &writer, QString id)
/*!
Initializes the DocBook output generator's data structures
- from the configuration class \a config.
+ from the configuration (Config).
*/
-void DocBookGenerator::initializeGenerator(const Config &config)
+void DocBookGenerator::initializeGenerator()
{
// Excerpts from HtmlGenerator::initializeGenerator.
- Generator::initializeGenerator(config);
+ Generator::initializeGenerator();
+ Config &config = Config::instance();
project = config.getString(CONFIG_PROJECT);
@@ -2132,7 +2134,7 @@ void DocBookGenerator::generateRequiredLinks(QXmlStreamWriter &writer, const Nod
return;
const auto en = static_cast<const ExampleNode *>(node);
- QString exampleUrl = config()->getString(CONFIG_URL + Config::dot + CONFIG_EXAMPLES);
+ QString exampleUrl = Config::instance().getString(CONFIG_URL + Config::dot + CONFIG_EXAMPLES);
if (exampleUrl.isEmpty()) {
if (!en->noAutoList()) {
@@ -2173,7 +2175,7 @@ void DocBookGenerator::generateLinkToExample(QXmlStreamWriter &writer, const Exa
// Construct a path to the example; <install path>/<example name>
QStringList path = QStringList()
- << config()->getString(CONFIG_EXAMPLESINSTALLPATH) << en->name();
+ << Config::instance().getString(CONFIG_EXAMPLESINSTALLPATH) << en->name();
path.removeAll({});
writer.writeStartElement(dbNamespace, "para");