summaryrefslogtreecommitdiffstats
path: root/tools/qdoc3/config.cpp
diff options
context:
space:
mode:
authorOlivier Goffart <olivier.goffart@nokia.com>2011-04-07 13:13:08 (GMT)
committerOlivier Goffart <olivier.goffart@nokia.com>2011-04-07 13:14:27 (GMT)
commit7c8980ee041e874a6c430f01b2daff4955517b03 (patch)
treeaa19249a7fb469176fb22adfa9a1b702ae3be6c0 /tools/qdoc3/config.cpp
parent8031eada2f81963865390b4d899631b09d4ca6f3 (diff)
parenta05f73499a187c67a394893e2cc74516ccbc46f5 (diff)
downloadQt-7c8980ee041e874a6c430f01b2daff4955517b03.zip
Qt-7c8980ee041e874a6c430f01b2daff4955517b03.tar.gz
Qt-7c8980ee041e874a6c430f01b2daff4955517b03.tar.bz2
Merge remote-tracking branch 'origin/4.7' into qt-master-from-4.7
Conflicts: src/gui/text/qfontengine_mac.mm tests/auto/qdiriterator/tst_qdiriterator.cpp
Diffstat (limited to 'tools/qdoc3/config.cpp')
-rw-r--r--tools/qdoc3/config.cpp28
1 files changed, 26 insertions, 2 deletions
diff --git a/tools/qdoc3/config.cpp b/tools/qdoc3/config.cpp
index 08a8187..838f6ac 100644
--- a/tools/qdoc3/config.cpp
+++ b/tools/qdoc3/config.cpp
@@ -329,13 +329,16 @@ QList<QRegExp> Config::getRegExpList(const QString& var) const
}
/*!
- This function is slower than it could be.
+ This function is slower than it could be. What it does is
+ find all the keys that begin with \a var + dot and return
+ the matching keys in a set, stripped of the matching prefix
+ and dot.
*/
QSet<QString> Config::subVars(const QString& var) const
{
QSet<QString> result;
QString varDot = var + QLatin1Char('.');
- QMap<QString, QString>::ConstIterator v = stringValueMap.begin();
+ QStringMultiMap::ConstIterator v = stringValueMap.begin();
while (v != stringValueMap.end()) {
if (v.key().startsWith(varDot)) {
QString subVar = v.key().mid(varDot.length());
@@ -350,6 +353,27 @@ QSet<QString> Config::subVars(const QString& var) const
}
/*!
+ Same as subVars(), but in this case we return a string map
+ with the matching keys (stripped of the prefix \a var and
+ mapped to their values. The pairs are inserted into \a t
+ */
+void Config::subVarsAndValues(const QString& var, QStringMultiMap& t) const
+{
+ QString varDot = var + QLatin1Char('.');
+ QStringMultiMap::ConstIterator v = stringValueMap.begin();
+ while (v != stringValueMap.end()) {
+ if (v.key().startsWith(varDot)) {
+ QString subVar = v.key().mid(varDot.length());
+ int dot = subVar.indexOf(QLatin1Char('.'));
+ if (dot != -1)
+ subVar.truncate(dot);
+ t.insert(subVar,v.value());
+ }
+ ++v;
+ }
+}
+
+/*!
Builds and returns a list of file pathnames for the file
type specified by \a filesVar (e.g. "headers" or "sources").
The files are found in the directories specified by