summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/tools/qdoc/codeparser.cpp11
-rw-r--r--src/tools/qdoc/cppcodeparser.h1
-rw-r--r--src/tools/qdoc/htmlgenerator.cpp24
-rw-r--r--src/tools/qdoc/node.h7
4 files changed, 36 insertions, 7 deletions
diff --git a/src/tools/qdoc/codeparser.cpp b/src/tools/qdoc/codeparser.cpp
index 97a3d20263..1be67894cc 100644
--- a/src/tools/qdoc/codeparser.cpp
+++ b/src/tools/qdoc/codeparser.cpp
@@ -65,6 +65,7 @@ QT_BEGIN_NAMESPACE
#define COMMAND_PAGEKEYWORDS Doc::alias(QLatin1String("pagekeywords"))
#define COMMAND_PRELIMINARY Doc::alias(QLatin1String("preliminary"))
#define COMMAND_INPUBLICGROUP Doc::alias(QLatin1String("inpublicgroup"))
+#define COMMAND_QTVARIABLE Doc::alias(QLatin1String("qtvariable"))
#define COMMAND_REENTRANT Doc::alias(QLatin1String("reentrant"))
#define COMMAND_SINCE Doc::alias(QLatin1String("since"))
#define COMMAND_SUBTITLE Doc::alias(QLatin1String("subtitle"))
@@ -218,6 +219,7 @@ const QSet<QString>& CodeParser::commonMetaCommands()
<< COMMAND_PAGEKEYWORDS
<< COMMAND_PRELIMINARY
<< COMMAND_INPUBLICGROUP
+ << COMMAND_QTVARIABLE
<< COMMAND_REENTRANT
<< COMMAND_SINCE
<< COMMAND_SUBTITLE
@@ -321,6 +323,15 @@ void CodeParser::processCommonMetaCommand(const Location& location,
else
location.warning(tr("Ignored '\\%1'").arg(COMMAND_TITLE));
}
+ else if (command == COMMAND_QTVARIABLE) {
+ if (node->subType() == Node::Module) {
+ DocNode *dn = static_cast<DocNode *>(node);
+ dn->setQtVariable(arg.first);
+ }
+ else
+ location.warning(tr("Command '\\%1' found outside of '\\module'. It can only be used within a module page.")
+ .arg(COMMAND_QTVARIABLE));
+ }
}
/*!
diff --git a/src/tools/qdoc/cppcodeparser.h b/src/tools/qdoc/cppcodeparser.h
index d23cc25d33..5ab72f7f54 100644
--- a/src/tools/qdoc/cppcodeparser.h
+++ b/src/tools/qdoc/cppcodeparser.h
@@ -241,6 +241,7 @@ protected:
#define COMMAND_LICENSENAME Doc::alias("licensename")
#define COMMAND_LICENSEDESCRIPTION Doc::alias("licensedescription")
#define COMMAND_RELEASEDATE Doc::alias("releasedate")
+#define COMMAND_QTVARIABLE Doc::alias("qtvariable")
QT_END_NAMESPACE
diff --git a/src/tools/qdoc/htmlgenerator.cpp b/src/tools/qdoc/htmlgenerator.cpp
index b307d9c19b..54861f4e02 100644
--- a/src/tools/qdoc/htmlgenerator.cpp
+++ b/src/tools/qdoc/htmlgenerator.cpp
@@ -1835,11 +1835,12 @@ void HtmlGenerator::generateRequisites(InnerNode *inner, CodeMarker *marker)
QMap<QString, Text> requisites;
Text text;
- const QString headerText = "Header:";
- const QString sinceText = "Since:";
- const QString inheritedBytext = "Inherited By:";
- const QString inheritsText = "Inherits:";
- const QString instantiatedByText = "Instantiated By:";
+ const QString headerText = "Header";
+ const QString sinceText = "Since";
+ const QString inheritedBytext = "Inherited By";
+ const QString inheritsText = "Inherits";
+ const QString instantiatedByText = "Instantiated By";
+ const QString qtVariableText = "qmake";
//add the includes to the map
if (!inner->includes().isEmpty()) {
@@ -1856,6 +1857,7 @@ void HtmlGenerator::generateRequisites(InnerNode *inner, CodeMarker *marker)
//The order of the requisites matter
QStringList requisiteorder;
requisiteorder << headerText
+ << qtVariableText
<< sinceText
<< instantiatedByText
<< inheritsText
@@ -1932,6 +1934,16 @@ void HtmlGenerator::generateRequisites(InnerNode *inner, CodeMarker *marker)
requisites.insert(inheritedBytext, text);
}
+ //add the QT variable to the map
+ DocNode * moduleNode = qdb_->findModule(classe->moduleName());
+ if (moduleNode || !moduleNode->qtVariable().isEmpty()) {
+ text.clear();
+ text << Atom(Atom::FormattingLeft, ATOM_FORMATTING_TELETYPE)
+ << "QT += " + moduleNode->qtVariable()
+ << Atom(Atom::FormattingRight, ATOM_FORMATTING_TELETYPE);
+ requisites.insert(qtVariableText, text);
+ }
+
}
if (!requisites.isEmpty()) {
@@ -1944,7 +1956,7 @@ void HtmlGenerator::generateRequisites(InnerNode *inner, CodeMarker *marker)
if (requisites.contains(*i)) {
out() << "<tr>"
<< "<td class=\"memItemLeft rightAlign topAlign\"> "
- << *i
+ << *i << ":"
<< "</td><td class=\"memItemRight bottomAlign\"> ";
if (*i == headerText)
diff --git a/src/tools/qdoc/node.h b/src/tools/qdoc/node.h
index 5a71a2f9c4..9c8950d185 100644
--- a/src/tools/qdoc/node.h
+++ b/src/tools/qdoc/node.h
@@ -455,7 +455,7 @@ public:
virtual bool isClass() const { return true; }
virtual bool isWrapper() const { return wrapper_; }
virtual QString obsoleteLink() const { return obsoleteLink_; }
- virtual void setObsoleteLink(const QString& t) { obsoleteLink_ = t; };
+ virtual void setObsoleteLink(const QString& t) { obsoleteLink_ = t; }
virtual void setWrapper() { wrapper_ = true; }
void addBaseClass(Access access,
@@ -497,9 +497,11 @@ public:
PageType ptype);
virtual ~DocNode() { }
+ void setQtVariable(const QString &variable) { qtVariable_ = variable; }
void setTitle(const QString &title) { title_ = title; }
void setSubTitle(const QString &subTitle) { subtitle_ = subTitle; }
+ QString qtVariable() const { return qtVariable_; }
SubType subType() const { return nodeSubtype_; }
virtual QString title() const;
virtual QString fullTitle() const;
@@ -513,6 +515,9 @@ protected:
SubType nodeSubtype_;
QString title_;
QString subtitle_;
+
+private:
+ QString qtVariable_;
};
class NameCollisionNode : public DocNode