diff options
author | Martin Smith <[email protected]> | 2012-05-16 10:47:28 +0200 |
---|---|---|
committer | Qt by Nokia <[email protected]> | 2012-05-16 19:37:44 +0200 |
commit | 6eae3e1da3ebaf8023f85c62f2fdd177fa39e208 (patch) | |
tree | 99b2c9a60dd02f6ded971bdd2bd22c70b091a0d3 /src/tools/qdoc/node.cpp | |
parent | 348c3966a02fd3abd5b172859ae5be04c548cf8a (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 <[email protected]>
Diffstat (limited to 'src/tools/qdoc/node.cpp')
-rw-r--r-- | src/tools/qdoc/node.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/tools/qdoc/node.cpp b/src/tools/qdoc/node.cpp index 7c1be44c20f..bb70200e7d2 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; |