summaryrefslogtreecommitdiffstats
path: root/src/tools/qdoc/node.h
diff options
context:
space:
mode:
authorMartin Smith <martin.smith@digia.com>2012-11-27 14:07:27 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-11-27 15:54:45 +0100
commit3e33d29a86a99c4dc068e640b23551a7a6e9ab90 (patch)
tree0a02df617f904911643c02d53335645cf23594d5 /src/tools/qdoc/node.h
parent11a38b63bd34b632e335a38f2e671bea0d6a9564 (diff)
qdoc: Listing group members across modules
This is a first attempt at fixing the problem, but it probably is not the entire solution. The problem requires adding attributes to the index files and then reusing them when the index files are read. The same problem will be affecting the module lists themselves, but that is not fixed in this update. Task-number: QTBUG-28036 Change-Id: I8593d5b9446e51a5204b6c71f8c4f2b63f445972 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Diffstat (limited to 'src/tools/qdoc/node.h')
-rw-r--r--src/tools/qdoc/node.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/tools/qdoc/node.h b/src/tools/qdoc/node.h
index 05133cab0c..f93e777d84 100644
--- a/src/tools/qdoc/node.h
+++ b/src/tools/qdoc/node.h
@@ -62,7 +62,7 @@ class QmlClassNode;
class QDocDatabase;
typedef QList<Node*> NodeList;
-typedef QMap<QString, const Node*> NodeMap;
+typedef QMap<QString, Node*> NodeMap;
typedef QMultiMap<QString, Node*> NodeMultiMap;
typedef QMultiMap<QString, const ExampleNode*> ExampleNodeMap;
typedef QList<QPair<QString,QString> > ImportList;
@@ -180,6 +180,8 @@ public:
void setParent(InnerNode* n) { parent_ = n; }
void setIndexNodeFlag() { indexNodeFlag_ = true; }
virtual void setOutputFileName(const QString& ) { }
+ void markSeen() { seen_ = true; }
+ void markNotSeen() { seen_ = false; }
virtual bool isInnerNode() const = 0;
virtual bool isLeaf() const { return false; }
@@ -193,6 +195,8 @@ public:
virtual bool isQmlPropertyGroup() const { return false; }
virtual bool isCollisionNode() const { return false; }
virtual bool isAttached() const { return false; }
+ virtual bool isGroup() const { return false; }
+ virtual void addMember(Node* ) { }
virtual bool hasMembers() const { return false; }
virtual bool hasNamespaces() const { return false; }
virtual bool hasClasses() const { return false; }
@@ -203,6 +207,7 @@ public:
virtual void getMemberClasses(NodeMap& ) { }
bool isInternal() const;
bool isIndexNode() const { return indexNodeFlag_; }
+ bool wasSeen() const { return seen_; }
Type type() const { return nodeType_; }
virtual SubType subType() const { return NoSubType; }
InnerNode* parent() const { return parent_; }
@@ -271,6 +276,7 @@ private:
PageType pageType_;
Status status_;
bool indexNodeFlag_;
+ bool seen_;
InnerNode* parent_;
InnerNode* relatesTo_;
@@ -326,7 +332,7 @@ public:
const NodeList & childNodes() const { return children_; }
const NodeList & relatedNodes() const { return related_; }
- void addMember(Node* node) { members_.append(node); }
+ virtual void addMember(Node* node) { members_.append(node); }
const NodeList& members() const { return members_; }
virtual bool hasMembers() const;
virtual bool hasNamespaces() const;
@@ -475,6 +481,7 @@ public:
virtual QString imageFileName() const { return QString(); }
virtual QString nameForLists() const { return title(); }
virtual void setImageFileName(const QString& ) { }
+ virtual bool isGroup() const { return (subType() == Node::Group); }
virtual bool isQmlPropertyGroup() const { return (nodeSubtype_ == QmlPropertyGroup); }
virtual bool hasProperty(const QString& ) const;