summaryrefslogtreecommitdiffstats
path: root/src/tools
diff options
context:
space:
mode:
authorMartin Smith <martin.smith@nokia.com>2012-05-16 10:47:28 +0200
committerQt by Nokia <qt-info@nokia.com>2012-05-16 19:37:44 +0200
commit6eae3e1da3ebaf8023f85c62f2fdd177fa39e208 (patch)
tree99b2c9a60dd02f6ded971bdd2bd22c70b091a0d3 /src/tools
parent348c3966a02fd3abd5b172859ae5be04c548cf8a (diff)
qdoc: Include QML type name in method quid
A case was found where a method inherited from a QML type marked abstract had the same name as a method in the inheriting class, and these two methods received the same quid. This was fixed by including the QML type name in the guid for QML methods. Change-Id: I110eb254b3c6be014cb67fdc5b57b5aa2f575220 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/qdoc/node.cpp10
-rw-r--r--src/tools/qdoc/node.h2
2 files changed, 6 insertions, 6 deletions
diff --git a/src/tools/qdoc/node.cpp b/src/tools/qdoc/node.cpp
index 7c1be44c20..bb70200e7d 100644
--- a/src/tools/qdoc/node.cpp
+++ b/src/tools/qdoc/node.cpp
@@ -527,9 +527,9 @@ QString Node::fileBase() const
*/
QString Node::guid() const
{
- if (uuid.isEmpty())
- uuid = idForNode();
- return uuid;
+ if (uuid_.isEmpty())
+ uuid_ = idForNode();
+ return uuid_;
}
#if 0
@@ -2724,7 +2724,7 @@ QString Node::idForNode() const
str = "namespace-member-" + func->name();
else if (parent_->type() == Fake) {
if (parent_->subType() == QmlClass)
- str = "qml-method-" + func->name();
+ str = "qml-method-" + parent_->name().toLower() + "-" + func->name();
else
qDebug() << "qdoc internal error: Node subtype not handled:"
<< parent_->subType() << func->name();
@@ -2801,7 +2801,7 @@ QString Node::idForNode() const
break;
case Node::QmlMethod:
func = static_cast<const FunctionNode*>(this);
- str = "qml-method-" + func->name();
+ str = "qml-method-" + parent_->name().toLower() + "-" + func->name();
if (func->overloadNumber() != 1)
str += QLatin1Char('-') + QString::number(func->overloadNumber());
break;
diff --git a/src/tools/qdoc/node.h b/src/tools/qdoc/node.h
index 0b8758d92f..a7d5f4a891 100644
--- a/src/tools/qdoc/node.h
+++ b/src/tools/qdoc/node.h
@@ -288,7 +288,7 @@ private:
QString url_;
QString sinc;
QString templateStuff_;
- mutable QString uuid;
+ mutable QString uuid_;
QString outSubDir_;
QString qmlModuleName_;
QString qmlModuleVersionMajor_;