summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Smith <martin.smith@qt.io>2018-12-21 11:52:09 +0100
committerMartin Smith <martin.smith@qt.io>2019-01-02 07:38:35 +0000
commit78de5016bb7f86face1644402b414135163d4418 (patch)
tree91b987ab9e631964570c5bd35fc346f5780cbaae
parent20a8bd5be2799df2a0ca533c68c609b8f716bf0c (diff)
downloadqttools-78de5016bb7f86face1644402b414135163d4418.tar.gz
qdoc: Don't include overridden functions in all-members list
When an override function is documented, it should appear in the class's all-members list, but the overridden function in the base class should not appear there. This update implements that. Change-Id: Iadc8188d84bc8697aa4a5ec24b7574f1389f27f5 Task-number: QTBUG-72723 Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
-rw-r--r--src/qdoc/sections.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/qdoc/sections.cpp b/src/qdoc/sections.cpp
index 49bb73721..4913f66a5 100644
--- a/src/qdoc/sections.cpp
+++ b/src/qdoc/sections.cpp
@@ -200,8 +200,12 @@ void Section::insert(Node *node)
if (node->isObsolete()) {
obsoleteMemberMap_.insertMulti(key, node);
} else {
- if (!inherited || style_ == AllMembers)
+ if (!inherited)
memberMap_.insertMulti(key, node);
+ else if (style_ == AllMembers) {
+ if (!memberMap_.contains(key))
+ memberMap_.insertMulti(key, node);
+ }
if (inherited && (node->parent()->isClass() || node->parent()->isNamespace())) {
if (inheritedMembers_.isEmpty() || inheritedMembers_.last().first != node->parent()) {
QPair<Aggregate *, int> p(node->parent(), 0);