summaryrefslogtreecommitdiffstats
path: root/src/tools/qdoc/node.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/qdoc/node.h')
-rw-r--r--src/tools/qdoc/node.h476
1 files changed, 235 insertions, 241 deletions
diff --git a/src/tools/qdoc/node.h b/src/tools/qdoc/node.h
index e25bbd7a4a..8e25aac9c1 100644
--- a/src/tools/qdoc/node.h
+++ b/src/tools/qdoc/node.h
@@ -1,7 +1,7 @@
/****************************************************************************
**
-** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
+** Copyright (C) 2015 The Qt Company Ltd.
+** Contact: http://www.qt.io/licensing/
**
** This file is part of the tools applications of the Qt Toolkit.
**
@@ -10,9 +10,9 @@
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see http://www.qt.io/terms-conditions. For further
+** information use the contact form at http://www.qt.io/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, this file may be used under the terms of the GNU Lesser
@@ -23,8 +23,8 @@
** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
+** As a special exception, The Qt Company gives you certain additional
+** rights. These rights are described in The Qt Company LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** $QT_END_LICENSE$
@@ -51,11 +51,10 @@ class ClassNode;
class InnerNode;
class ExampleNode;
class TypedefNode;
-class QmlClassNode;
+class QmlTypeNode;
class QDocDatabase;
class FunctionNode;
class PropertyNode;
-class QmlModuleNode;
class CollectionNode;
class QmlPropertyNode;
@@ -107,7 +106,7 @@ public:
LastSubtype
};
- enum Genus { DontCare, CPP, QML };
+ enum Genus { DontCare, CPP, JS, QML, DOC };
enum Access { Public, Protected, Private };
@@ -170,36 +169,45 @@ public:
const QString& fileNameBase() const { return fileNameBase_; }
bool hasFileNameBase() const { return !fileNameBase_.isEmpty(); }
void setFileNameBase(const QString& t) { fileNameBase_ = t; }
+ Node::Genus genus() const { return (Genus) genus_; }
+ void setGenus(Genus t) { genus_ = (unsigned char) t; }
- void setAccess(Access access) { access_ = access; }
+ void setAccess(Access access) { access_ = (unsigned char) access; }
void setLocation(const Location& location) { loc_ = location; }
void setDoc(const Doc& doc, bool replace = false);
void setStatus(Status status) {
- if (status_ == Obsolete && status == Deprecated)
+ if (status_ == (unsigned char) Obsolete && status == Deprecated)
return;
- status_ = status;
+ status_ = (unsigned char) status;
}
- void setThreadSafeness(ThreadSafeness safeness) { safeness_ = safeness; }
+ void setThreadSafeness(ThreadSafeness safeness) { safeness_ = (unsigned char) safeness; }
void setSince(const QString &since);
void setRelates(InnerNode* pseudoParent);
- void setModuleName(const QString &name) { moduleName_ = name; }
+ void setPhysicalModuleName(const QString &name) { physicalModuleName_ = name; }
void setUrl(const QString& url) { url_ = url; }
void setTemplateStuff(const QString &templateStuff) { templateStuff_ = templateStuff; }
void setReconstitutedBrief(const QString &t) { reconstitutedBrief_ = t; }
- void setPageType(PageType t) { pageType_ = t; }
+ void setPageType(PageType t) { pageType_ = (unsigned char) t; }
void setPageType(const QString& t);
void setParent(InnerNode* n) { parent_ = n; }
void setIndexNodeFlag() { indexNodeFlag_ = true; }
virtual void setOutputFileName(const QString& ) { }
+ bool isQmlNode() const { return genus() == QML; }
+ bool isJsNode() const { return genus() == JS; }
+ bool isCppNode() const { return genus() == CPP; }
+
virtual bool isInnerNode() const = 0;
- virtual bool isDocNode() const { return false; }
virtual bool isCollectionNode() const { return false; }
+ virtual bool isDocumentNode() const { return false; }
virtual bool isGroup() const { return false; }
virtual bool isModule() const { return false; }
virtual bool isQmlModule() const { return false; }
+ virtual bool isJsModule() const { return false; }
virtual bool isQmlType() const { return false; }
+ virtual bool isJsType() const { return false; }
virtual bool isQmlBasicType() const { return false; }
+ virtual bool isJsBasicType() const { return false; }
virtual bool isExample() const { return false; }
virtual bool isExampleFile() const { return false; }
virtual bool isHeaderFile() const { return false; }
@@ -208,11 +216,19 @@ public:
virtual bool isFunction() const { return false; }
virtual bool isNamespace() const { return false; }
virtual bool isClass() const { return false; }
- virtual bool isQmlNode() const { return false; }
- virtual bool isCppNode() const { return false; }
virtual bool isQtQuickNode() const { return false; }
virtual bool isAbstract() const { return false; }
+ virtual bool isProperty() const { return false; }
+ virtual bool isQmlProperty() const { return false; }
+ virtual bool isJsProperty() const { return false; }
virtual bool isQmlPropertyGroup() const { return false; }
+ virtual bool isJsPropertyGroup() const { return false; }
+ virtual bool isQmlSignal() const { return false; }
+ virtual bool isJsSignal() const { return false; }
+ virtual bool isQmlSignalHandler() const { return false; }
+ virtual bool isJsSignalHandler() const { return false; }
+ virtual bool isQmlMethod() const { return false; }
+ virtual bool isJsMethod() const { return false; }
virtual bool isAttached() const { return false; }
virtual bool isAlias() const { return false; }
virtual bool isWrapper() const;
@@ -225,7 +241,6 @@ public:
virtual bool hasClasses() const { return false; }
virtual void setAbstract(bool ) { }
virtual void setWrapper() { }
- virtual Node::Genus genus() const { return DontCare; }
virtual QString title() const { return name(); }
virtual QString fullTitle() const { return name(); }
virtual QString subTitle() const { return QString(); }
@@ -245,14 +260,14 @@ public:
virtual Tree* tree() const;
virtual void findChildren(const QString& , NodeList& nodes) const { nodes.clear(); }
bool isIndexNode() const { return indexNodeFlag_; }
- Type type() const { return nodeType_; }
+ Type type() const { return (Type) nodeType_; }
virtual SubType subType() const { return NoSubType; }
bool match(const NodeTypeList& types) const;
InnerNode* parent() const { return parent_; }
const Node* root() const;
InnerNode* relates() const { return relatesTo_; }
const QString& name() const { return name_; }
- QString moduleName() const;
+ QString physicalModuleName() const;
QString url() const { return url_; }
virtual QString nameForLists() const { return name_; }
virtual QString outputFileName() const { return QString(); }
@@ -264,21 +279,21 @@ public:
const QMap<LinkType, QPair<QString,QString> >& links() const { return linkMap_; }
void setLink(LinkType linkType, const QString &link, const QString &desc);
- Access access() const { return access_; }
- bool isPrivate() const { return access_ == Private; }
+ Access access() const { return (Access) access_; }
+ bool isPrivate() const { return (Access) access_ == Private; }
QString accessString() const;
const Location& location() const { return loc_; }
const Doc& doc() const { return doc_; }
bool hasDoc() const { return !doc_.isEmpty(); }
- Status status() const { return status_; }
+ Status status() const { return (Status) status_; }
Status inheritedStatus() const;
- bool isObsolete() const { return (status_ == Obsolete); }
+ bool isObsolete() const { return (status_ == (unsigned char) Obsolete); }
ThreadSafeness threadSafeness() const;
ThreadSafeness inheritedThreadSafeness() const;
QString since() const { return since_; }
QString templateStuff() const { return templateStuff_; }
const QString& reconstitutedBrief() const { return reconstitutedBrief_; }
- PageType pageType() const { return pageType_; }
+ PageType pageType() const { return (PageType) pageType_; }
QString pageTypeString() const;
QString nodeTypeString() const;
QString nodeSubtypeString() const;
@@ -290,30 +305,31 @@ public:
QString extractClassName(const QString &string) const;
virtual QString qmlTypeName() const { return name_; }
virtual QString qmlFullBaseName() const { return QString(); }
- virtual QString qmlModuleName() const { return QString(); }
- virtual QString qmlModuleVersion() const { return QString(); }
- virtual QString qmlModuleIdentifier() const { return QString(); }
- virtual void setQmlModuleInfo(const QString& ) { }
- virtual QmlModuleNode* qmlModule() const { return 0; }
- virtual void setQmlModule(QmlModuleNode* ) { }
+ virtual QString logicalModuleName() const { return QString(); }
+ virtual QString logicalModuleVersion() const { return QString(); }
+ virtual QString logicalModuleIdentifier() const { return QString(); }
+ virtual void setLogicalModuleInfo(const QString& ) { }
+ virtual void setLogicalModuleInfo(const QStringList& ) { }
+ virtual CollectionNode* logicalModule() const { return 0; }
+ virtual void setQmlModule(CollectionNode* ) { }
virtual ClassNode* classNode() { return 0; }
virtual void setClassNode(ClassNode* ) { }
virtual const Node* applyModuleName(const Node* ) const { return 0; }
virtual QString idNumber() { return "0"; }
- QmlClassNode* qmlClassNode();
+ QmlTypeNode* qmlTypeNode();
ClassNode* declarativeCppNode();
const QString& outputSubdirectory() const { return outSubDir_; }
void setOutputSubdirectory(const QString& t) { outSubDir_ = t; }
QString fullDocumentName() const;
- static QString cleanId(QString str);
+ static QString cleanId(const QString &str);
QString idForNode() const;
static FlagValue toFlagValue(bool b);
static bool fromFlagValue(FlagValue fv, bool defaultValue);
- static QString pageTypeString(unsigned t);
- static QString nodeTypeString(unsigned t);
- static QString nodeSubtypeString(unsigned t);
+ static QString pageTypeString(unsigned char t);
+ static QString nodeTypeString(unsigned char t);
+ static QString nodeSubtypeString(unsigned char t);
static int incPropertyGroupCount();
static void clearPropertyGroupCount();
static void initialize();
@@ -324,11 +340,12 @@ protected:
private:
- Type nodeType_;
- Access access_;
- ThreadSafeness safeness_;
- PageType pageType_;
- Status status_;
+ unsigned char nodeType_;
+ unsigned char genus_;
+ unsigned char access_;
+ unsigned char safeness_;
+ unsigned char pageType_;
+ unsigned char status_;
bool indexNodeFlag_;
InnerNode* parent_;
@@ -338,7 +355,7 @@ private:
Doc doc_;
QMap<LinkType, QPair<QString, QString> > linkMap_;
QString fileNameBase_;
- QString moduleName_;
+ QString physicalModuleName_;
QString url_;
QString since_;
QString templateStuff_;
@@ -359,7 +376,7 @@ public:
//Node* findChildNode(const QString& name, bool qml) const;
Node* findChildNode(const QString& name, Type type);
//void findNodes(const QString& name, NodeList& n);
- virtual void findChildren(const QString& name, NodeList& nodes) const;
+ virtual void findChildren(const QString& name, NodeList& nodes) const Q_DECL_OVERRIDE;
FunctionNode* findFunctionNode(const QString& name) const;
FunctionNode* findFunctionNode(const FunctionNode* clone);
void addInclude(const QString &include);
@@ -370,8 +387,8 @@ public:
void deleteChildren();
void removeFromRelated();
- virtual bool isInnerNode() const { return true; }
- virtual bool isLeaf() const { return false; }
+ virtual bool isInnerNode() const Q_DECL_OVERRIDE { return true; }
+ virtual bool isLeaf() const Q_DECL_OVERRIDE { return false; }
const EnumNode* findEnumNodeForValue(const QString &enumValue) const;
const NodeList & childNodes() const { return children_; }
const NodeList & relatedNodes() const { return related_; }
@@ -384,14 +401,14 @@ public:
QStringList primaryKeys();
QStringList secondaryKeys();
const QStringList& pageKeywords() const { return pageKeywds; }
- virtual void addPageKeywords(const QString& t) { pageKeywds << t; }
- virtual void setOutputFileName(const QString& f) { outputFileName_ = f; }
- virtual QString outputFileName() const { return outputFileName_; }
- virtual QmlPropertyNode* hasQmlProperty(const QString& ) const;
- virtual QmlPropertyNode* hasQmlProperty(const QString&, bool attached) const;
+ virtual void addPageKeywords(const QString& t) Q_DECL_OVERRIDE { pageKeywds << t; }
+ virtual void setOutputFileName(const QString& f) Q_DECL_OVERRIDE { outputFileName_ = f; }
+ virtual QString outputFileName() const Q_DECL_OVERRIDE { return outputFileName_; }
+ virtual QmlPropertyNode* hasQmlProperty(const QString& ) const Q_DECL_OVERRIDE;
+ virtual QmlPropertyNode* hasQmlProperty(const QString&, bool attached) const Q_DECL_OVERRIDE;
void addChild(Node* child, const QString& title);
const QStringList& groupNames() const { return groupNames_; }
- virtual void appendGroupName(const QString& t) { groupNames_.append(t); }
+ virtual void appendGroupName(const QString& t) Q_DECL_OVERRIDE { groupNames_.append(t); }
void printChildren(const QString& title);
protected:
@@ -423,8 +440,8 @@ public:
LeafNode();
virtual ~LeafNode() { }
- virtual bool isInnerNode() const { return false; }
- virtual bool isLeaf() const { return true; }
+ virtual bool isInnerNode() const Q_DECL_OVERRIDE { return false; }
+ virtual bool isLeaf() const Q_DECL_OVERRIDE { return true; }
protected:
LeafNode(Type type, InnerNode* parent, const QString& name);
@@ -436,10 +453,8 @@ class NamespaceNode : public InnerNode
public:
NamespaceNode(InnerNode* parent, const QString& name);
virtual ~NamespaceNode() { }
- virtual bool isNamespace() const { return true; }
- virtual Tree* tree() const { return (parent() ? parent()->tree() : tree_); }
- virtual bool isCppNode() const { return true; }
- virtual Node::Genus genus() const { return Node::CPP; }
+ virtual bool isNamespace() const Q_DECL_OVERRIDE { return true; }
+ virtual Tree* tree() const Q_DECL_OVERRIDE { return (parent() ? parent()->tree() : tree_); }
void setTree(Tree* t) { tree_ = t; }
private:
@@ -469,13 +484,11 @@ class ClassNode : public InnerNode
public:
ClassNode(InnerNode* parent, const QString& name);
virtual ~ClassNode() { }
- virtual bool isClass() const { return true; }
- virtual bool isCppNode() const { return true; }
- virtual bool isWrapper() const { return wrapper_; }
- virtual Node::Genus genus() const { return Node::CPP; }
- virtual QString obsoleteLink() const { return obsoleteLink_; }
- virtual void setObsoleteLink(const QString& t) { obsoleteLink_ = t; }
- virtual void setWrapper() { wrapper_ = true; }
+ virtual bool isClass() const Q_DECL_OVERRIDE { return true; }
+ virtual bool isWrapper() const Q_DECL_OVERRIDE { return wrapper_; }
+ virtual QString obsoleteLink() const Q_DECL_OVERRIDE { return obsoleteLink_; }
+ virtual void setObsoleteLink(const QString& t) Q_DECL_OVERRIDE { obsoleteLink_ = t; }
+ virtual void setWrapper() Q_DECL_OVERRIDE { wrapper_ = true; }
void addResolvedBaseClass(Access access, ClassNode* node);
void addDerivedClass(Access access, ClassNode* node);
@@ -493,12 +506,12 @@ public:
QString serviceName() const { return sname; }
void setServiceName(const QString& value) { sname = value; }
- QmlClassNode* qmlElement() { return qmlelement; }
- void setQmlElement(QmlClassNode* qcn) { qmlelement = qcn; }
- virtual bool isAbstract() const { return abstract_; }
- virtual void setAbstract(bool b) { abstract_ = b; }
+ QmlTypeNode* qmlElement() { return qmlelement; }
+ void setQmlElement(QmlTypeNode* qcn) { qmlelement = qcn; }
+ virtual bool isAbstract() const Q_DECL_OVERRIDE { return abstract_; }
+ virtual void setAbstract(bool b) Q_DECL_OVERRIDE { abstract_ = b; }
PropertyNode* findPropertyNode(const QString& name);
- QmlClassNode* findQmlBaseNode();
+ QmlTypeNode* findQmlBaseNode();
private:
QList<RelatedClass> bases_;
@@ -508,34 +521,35 @@ private:
bool wrapper_;
QString sname;
QString obsoleteLink_;
- QmlClassNode* qmlelement;
+ QmlTypeNode* qmlelement;
};
-class DocNode : public InnerNode
+class DocumentNode : public InnerNode
{
public:
- DocNode(InnerNode* parent,
+ DocumentNode(InnerNode* parent,
const QString& name,
SubType subType,
PageType ptype);
- virtual ~DocNode() { }
+ virtual ~DocumentNode() { }
- virtual void setTitle(const QString &title);
- virtual void setSubTitle(const QString &subTitle) { subtitle_ = subTitle; }
+ virtual bool isDocumentNode() const Q_DECL_OVERRIDE { return true; }
+ virtual void setTitle(const QString &title) Q_DECL_OVERRIDE;
+ virtual void setSubTitle(const QString &subTitle) Q_DECL_OVERRIDE { subtitle_ = subTitle; }
- SubType subType() const { return nodeSubtype_; }
- virtual QString title() const { return title_; }
- virtual QString fullTitle() const;
- virtual QString subTitle() const;
+ SubType subType() const Q_DECL_OVERRIDE { return nodeSubtype_; }
+ virtual QString title() const Q_DECL_OVERRIDE { return title_; }
+ virtual QString fullTitle() const Q_DECL_OVERRIDE;
+ virtual QString subTitle() const Q_DECL_OVERRIDE;
virtual QString imageFileName() const { return QString(); }
- virtual QString nameForLists() const { return title(); }
+ virtual QString nameForLists() const Q_DECL_OVERRIDE { return title(); }
virtual void setImageFileName(const QString& ) { }
- virtual bool isHeaderFile() const { return (subType() == Node::HeaderFile); }
- virtual bool isExample() const { return (subType() == Node::Example); }
- virtual bool isExampleFile() const { return (parent() && parent()->isExample()); }
- virtual bool isExternalPage() const { return nodeSubtype_ == ExternalPage; }
- virtual bool isDocNode() const { return true; }
+
+ virtual bool isHeaderFile() const Q_DECL_OVERRIDE { return (subType() == Node::HeaderFile); }
+ virtual bool isExample() const Q_DECL_OVERRIDE { return (subType() == Node::Example); }
+ virtual bool isExampleFile() const Q_DECL_OVERRIDE { return (parent() && parent()->isExample()); }
+ virtual bool isExternalPage() const Q_DECL_OVERRIDE { return nodeSubtype_ == ExternalPage; }
protected:
SubType nodeSubtype_;
@@ -543,14 +557,14 @@ protected:
QString subtitle_;
};
-class ExampleNode : public DocNode
+class ExampleNode : public DocumentNode
{
public:
ExampleNode(InnerNode* parent, const QString& name)
- : DocNode(parent, name, Node::Example, Node::ExamplePage) { }
+ : DocumentNode(parent, name, Node::Example, Node::ExamplePage) { }
virtual ~ExampleNode() { }
- virtual QString imageFileName() const { return imageFileName_; }
- virtual void setImageFileName(const QString& ifn) { imageFileName_ = ifn; }
+ virtual QString imageFileName() const Q_DECL_OVERRIDE { return imageFileName_; }
+ virtual void setImageFileName(const QString& ifn) Q_DECL_OVERRIDE { imageFileName_ = ifn; }
private:
QString imageFileName_;
@@ -576,37 +590,39 @@ struct ImportRec {
typedef QList<ImportRec> ImportList;
-class QmlClassNode : public InnerNode
+class QmlTypeNode : public InnerNode
{
public:
- QmlClassNode(InnerNode* parent, const QString& name);
- virtual ~QmlClassNode();
- virtual bool isQmlNode() const { return true; }
- virtual bool isQmlType() const { return true; }
- virtual bool isQtQuickNode() const { return (qmlModuleName() == QLatin1String("QtQuick")); }
- virtual ClassNode* classNode() { return cnode_; }
- virtual void setClassNode(ClassNode* cn) { cnode_ = cn; }
- virtual bool isAbstract() const { return abstract_; }
- virtual bool isWrapper() const { return wrapper_; }
- virtual void setAbstract(bool b) { abstract_ = b; }
- virtual void setWrapper() { wrapper_ = true; }
- virtual bool isInternal() const { return (status() == Internal); }
- virtual QString qmlFullBaseName() const;
- virtual QString obsoleteLink() const { return obsoleteLink_; }
- virtual void setObsoleteLink(const QString& t) { obsoleteLink_ = t; };
- virtual QString qmlModuleName() const;
- virtual QString qmlModuleVersion() const;
- virtual QString qmlModuleIdentifier() const;
- virtual QmlModuleNode* qmlModule() const { return qmlModule_; }
- virtual void setQmlModule(QmlModuleNode* t) { qmlModule_ = t; }
- virtual Node::Genus genus() const { return Node::QML; }
+ QmlTypeNode(InnerNode* parent, const QString& name);
+ virtual ~QmlTypeNode();
+ virtual bool isQmlType() const Q_DECL_OVERRIDE { return genus() == Node::QML; }
+ virtual bool isJsType() const Q_DECL_OVERRIDE { return genus() == Node::JS; }
+ virtual bool isQtQuickNode() const Q_DECL_OVERRIDE {
+ return (logicalModuleName() == QLatin1String("QtQuick"));
+ }
+ virtual ClassNode* classNode() Q_DECL_OVERRIDE { return cnode_; }
+ virtual void setClassNode(ClassNode* cn) Q_DECL_OVERRIDE { cnode_ = cn; }
+ virtual bool isAbstract() const Q_DECL_OVERRIDE { return abstract_; }
+ virtual bool isWrapper() const Q_DECL_OVERRIDE { return wrapper_; }
+ virtual void setAbstract(bool b) Q_DECL_OVERRIDE { abstract_ = b; }
+ virtual void setWrapper() Q_DECL_OVERRIDE { wrapper_ = true; }
+ virtual bool isInternal() const Q_DECL_OVERRIDE { return (status() == Internal); }
+ virtual QString qmlFullBaseName() const Q_DECL_OVERRIDE;
+ virtual QString obsoleteLink() const Q_DECL_OVERRIDE { return obsoleteLink_; }
+ virtual void setObsoleteLink(const QString& t) Q_DECL_OVERRIDE { obsoleteLink_ = t; };
+ virtual QString logicalModuleName() const Q_DECL_OVERRIDE;
+ virtual QString logicalModuleVersion() const Q_DECL_OVERRIDE;
+ virtual QString logicalModuleIdentifier() const Q_DECL_OVERRIDE;
+ virtual CollectionNode* logicalModule() const Q_DECL_OVERRIDE { return logicalModule_; }
+ virtual void setQmlModule(CollectionNode* t) Q_DECL_OVERRIDE { logicalModule_ = t; }
+
const ImportList& importList() const { return importList_; }
void setImportList(const ImportList& il) { importList_ = il; }
const QString& qmlBaseName() const { return qmlBaseName_; }
void setQmlBaseName(const QString& name) { qmlBaseName_ = name; }
bool qmlBaseNodeNotSet() const { return (qmlBaseNode_ == 0); }
- QmlClassNode* qmlBaseNode();
- void setQmlBaseNode(QmlClassNode* b) { qmlBaseNode_ = b; }
+ QmlTypeNode* qmlBaseNode();
+ void setQmlBaseNode(QmlTypeNode* b) { qmlBaseNode_ = b; }
void requireCppClass() { cnodeRequired_ = true; }
bool cppClassRequired() const { return cnodeRequired_; }
static void addInheritedBy(const QString& base, Node* sub);
@@ -624,8 +640,8 @@ private:
ClassNode* cnode_;
QString qmlBaseName_;
QString obsoleteLink_;
- QmlModuleNode* qmlModule_;
- QmlClassNode* qmlBaseNode_;
+ CollectionNode* logicalModule_;
+ QmlTypeNode* qmlBaseNode_;
ImportList importList_;
};
@@ -635,27 +651,30 @@ public:
QmlBasicTypeNode(InnerNode* parent,
const QString& name);
virtual ~QmlBasicTypeNode() { }
- virtual bool isQmlNode() const { return true; }
- virtual bool isQmlBasicType() const { return true; }
- virtual Node::Genus genus() const { return Node::QML; }
+ virtual bool isQmlBasicType() const Q_DECL_OVERRIDE { return (genus() == Node::QML); }
+ virtual bool isJsBasicType() const Q_DECL_OVERRIDE { return (genus() == Node::JS); }
};
class QmlPropertyGroupNode : public InnerNode
{
public:
- QmlPropertyGroupNode(QmlClassNode* parent, const QString& name);
+ QmlPropertyGroupNode(QmlTypeNode* parent, const QString& name);
virtual ~QmlPropertyGroupNode() { }
- virtual bool isQmlNode() const { return true; }
- virtual bool isQtQuickNode() const { return parent()->isQtQuickNode(); }
- virtual QString qmlTypeName() const { return parent()->qmlTypeName(); }
- virtual QString qmlModuleName() const { return parent()->qmlModuleName(); }
- virtual QString qmlModuleVersion() const { return parent()->qmlModuleVersion(); }
- virtual QString qmlModuleIdentifier() const { return parent()->qmlModuleIdentifier(); }
- virtual QString idNumber();
- virtual bool isQmlPropertyGroup() const { return true; }
- virtual Node::Genus genus() const { return Node::QML; }
-
- virtual QString element() const { return parent()->name(); }
+ virtual bool isQtQuickNode() const Q_DECL_OVERRIDE { return parent()->isQtQuickNode(); }
+ virtual QString qmlTypeName() const Q_DECL_OVERRIDE { return parent()->qmlTypeName(); }
+ virtual QString logicalModuleName() const Q_DECL_OVERRIDE {
+ return parent()->logicalModuleName();
+ }
+ virtual QString logicalModuleVersion() const Q_DECL_OVERRIDE {
+ return parent()->logicalModuleVersion();
+ }
+ virtual QString logicalModuleIdentifier() const Q_DECL_OVERRIDE {
+ return parent()->logicalModuleIdentifier();
+ }
+ virtual QString idNumber() Q_DECL_OVERRIDE;
+ virtual bool isQmlPropertyGroup() const Q_DECL_OVERRIDE { return genus() == Node::QML; }
+ virtual bool isJsPropertyGroup() const Q_DECL_OVERRIDE { return genus() == Node::JS; }
+ virtual QString element() const Q_DECL_OVERRIDE { return parent()->name(); }
private:
int idNumber_;
@@ -672,11 +691,10 @@ public:
bool attached);
virtual ~QmlPropertyNode() { }
- virtual Node::Genus genus() const { return Node::QML; }
- virtual void setDataType(const QString& dataType) { type_ = dataType; }
+ virtual void setDataType(const QString& dataType) Q_DECL_OVERRIDE { type_ = dataType; }
void setStored(bool stored) { stored_ = toFlagValue(stored); }
void setDesignable(bool designable) { designable_ = toFlagValue(designable); }
- virtual void setReadOnly(bool ro) { readOnly_ = toFlagValue(ro); }
+ virtual void setReadOnly(bool ro) Q_DECL_OVERRIDE { readOnly_ = toFlagValue(ro); }
void setDefault() { isdefault_ = true; }
const QString &dataType() const { return type_; }
@@ -685,17 +703,24 @@ public:
bool isStored() const { return fromFlagValue(stored_,true); }
bool isDesignable() const { return fromFlagValue(designable_,false); }
bool isWritable();
- virtual bool isDefault() const { return isdefault_; }
- virtual bool isReadOnly() const { return fromFlagValue(readOnly_,false); }
- virtual bool isAlias() const { return isAlias_; }
- virtual bool isAttached() const { return attached_; }
- virtual bool isQmlNode() const { return true; }
- virtual bool isQtQuickNode() const { return parent()->isQtQuickNode(); }
- virtual QString qmlTypeName() const { return parent()->qmlTypeName(); }
- virtual QString qmlModuleName() const { return parent()->qmlModuleName(); }
- virtual QString qmlModuleVersion() const { return parent()->qmlModuleVersion(); }
- virtual QString qmlModuleIdentifier() const { return parent()->qmlModuleIdentifier(); }
- virtual QString element() const;
+ virtual bool isQmlProperty() const Q_DECL_OVERRIDE { return genus() == QML; }
+ virtual bool isJsProperty() const Q_DECL_OVERRIDE { return genus() == JS; }
+ virtual bool isDefault() const Q_DECL_OVERRIDE { return isdefault_; }
+ virtual bool isReadOnly() const Q_DECL_OVERRIDE { return fromFlagValue(readOnly_,false); }
+ virtual bool isAlias() const Q_DECL_OVERRIDE { return isAlias_; }
+ virtual bool isAttached() const Q_DECL_OVERRIDE { return attached_; }
+ virtual bool isQtQuickNode() const Q_DECL_OVERRIDE { return parent()->isQtQuickNode(); }
+ virtual QString qmlTypeName() const Q_DECL_OVERRIDE { return parent()->qmlTypeName(); }
+ virtual QString logicalModuleName() const Q_DECL_OVERRIDE {
+ return parent()->logicalModuleName();
+ }
+ virtual QString logicalModuleVersion() const Q_DECL_OVERRIDE {
+ return parent()->logicalModuleVersion();
+ }
+ virtual QString logicalModuleIdentifier() const Q_DECL_OVERRIDE {
+ return parent()->logicalModuleIdentifier();
+ }
+ virtual QString element() const Q_DECL_OVERRIDE;
private:
PropertyNode* findCorrespondingCppProperty();
@@ -731,8 +756,6 @@ public:
EnumNode(InnerNode* parent, const QString& name);
virtual ~EnumNode() { }
- virtual Node::Genus genus() const { return Node::CPP; }
- virtual bool isCppNode() const { return true; }
void addItem(const EnumItem& item);
void setFlagsType(TypedefNode* typedeff);
bool hasItem(const QString &name) const { return names.contains(name); }
@@ -754,8 +777,6 @@ public:
TypedefNode(InnerNode* parent, const QString& name);
virtual ~TypedefNode() { }
- virtual Node::Genus genus() const { return Node::CPP; }
- virtual bool isCppNode() const { return true; }
const EnumNode* associatedEnum() const { return ae; }
private:
@@ -842,8 +863,14 @@ public:
bool isConst() const { return con; }
bool isStatic() const { return sta; }
bool isOverload() const { return ove; }
- bool isReimp() const { return reimp; }
- bool isFunction() const { return true; }
+ bool isReimp() const Q_DECL_OVERRIDE { return reimp; }
+ bool isFunction() const Q_DECL_OVERRIDE { return true; }
+ virtual bool isQmlSignal() const Q_DECL_OVERRIDE { return genus() == Node::QML; }
+ virtual bool isJsSignal() const Q_DECL_OVERRIDE { return genus() == Node::JS; }
+ virtual bool isQmlSignalHandler() const Q_DECL_OVERRIDE { return genus() == Node::QML; }
+ virtual bool isJsSignalHandler() const Q_DECL_OVERRIDE { return genus() == Node::JS; }
+ virtual bool isQmlMethod() const Q_DECL_OVERRIDE { return genus() == Node::QML; }
+ virtual bool isJsMethod() const Q_DECL_OVERRIDE { return genus() == Node::JS; }
int overloadNumber() const;
const QList<Parameter>& parameters() const { return params; }
QStringList parameterNames() const;
@@ -855,20 +882,19 @@ public:
QStringList reconstructParams(bool values = false) const;
QString signature(bool values = false) const;
- virtual QString element() const { return parent()->name(); }
- virtual bool isAttached() const { return attached_; }
- virtual bool isQmlNode() const {
- return ((type() == QmlSignal) ||
- (type() == QmlMethod) ||
- (type() == QmlSignalHandler));
+ virtual QString element() const Q_DECL_OVERRIDE { return parent()->name(); }
+ virtual bool isAttached() const Q_DECL_OVERRIDE { return attached_; }
+ virtual bool isQtQuickNode() const Q_DECL_OVERRIDE { return parent()->isQtQuickNode(); }
+ virtual QString qmlTypeName() const Q_DECL_OVERRIDE { return parent()->qmlTypeName(); }
+ virtual QString logicalModuleName() const Q_DECL_OVERRIDE {
+ return parent()->logicalModuleName();
+ }
+ virtual QString logicalModuleVersion() const Q_DECL_OVERRIDE {
+ return parent()->logicalModuleVersion();
+ }
+ virtual QString logicalModuleIdentifier() const Q_DECL_OVERRIDE {
+ return parent()->logicalModuleIdentifier();
}
- virtual bool isCppNode() const { return !isQmlNode(); }
- virtual Node::Genus genus() const { return (isQmlNode() ? Node::QML : Node::CPP); }
- virtual bool isQtQuickNode() const { return parent()->isQtQuickNode(); }
- virtual QString qmlTypeName() const { return parent()->qmlTypeName(); }
- virtual QString qmlModuleName() const { return parent()->qmlModuleName(); }
- virtual QString qmlModuleVersion() const { return parent()->qmlModuleVersion(); }
- virtual QString qmlModuleIdentifier() const { return parent()->qmlModuleIdentifier(); }
void debug() const;
@@ -902,9 +928,8 @@ public:
PropertyNode(InnerNode* parent, const QString& name);
virtual ~PropertyNode() { }
- virtual Node::Genus genus() const { return Node::CPP; }
- virtual bool isCppNode() const { return true; }
- virtual void setDataType(const QString& dataType) { type_ = dataType; }
+ virtual void setDataType(const QString& dataType) Q_DECL_OVERRIDE { type_ = dataType; }
+ virtual bool isProperty() const Q_DECL_OVERRIDE { return true; }
void addFunction(FunctionNode* function, FunctionRole role);
void addSignal(FunctionNode* function, FunctionRole role);
void setStored(bool stored) { stored_ = toFlagValue(stored); }
@@ -991,8 +1016,6 @@ public:
VariableNode(InnerNode* parent, const QString &name);
virtual ~VariableNode() { }
- virtual Node::Genus genus() const { return Node::CPP; }
- virtual bool isCppNode() const { return true; }
void setLeftType(const QString &leftType) { lt = leftType; }
void setRightType(const QString &rightType) { rt = rightType; }
void setStatic(bool statique) { sta = statique; }
@@ -1011,14 +1034,14 @@ private:
inline VariableNode::VariableNode(InnerNode* parent, const QString &name)
: LeafNode(Variable, parent, name), sta(false)
{
- // nothing.
+ setGenus(Node::CPP);
}
-class DitaMapNode : public DocNode
+class DitaMapNode : public DocumentNode
{
public:
DitaMapNode(InnerNode* parent, const QString& name)
- : DocNode(parent, name, Node::Page, Node::DitaMapPage) { }
+ : DocumentNode(parent, name, Node::Page, Node::DitaMapPage) { }
virtual ~DitaMapNode() { }
const DitaRefList& map() const { return doc().ditamap(); }
@@ -1027,26 +1050,46 @@ public:
class CollectionNode : public InnerNode
{
public:
- CollectionNode(Type type, InnerNode* parent, const QString& name)
- : InnerNode(type, parent, name), seen_(false) {
+ CollectionNode(Type type,
+ InnerNode* parent,
+ const QString& name,
+ Genus genus) : InnerNode(type, parent, name), seen_(false)
+ {
setPageType(Node::OverviewPage);
+ setGenus(genus);
}
virtual ~CollectionNode() { }
- virtual bool isCollectionNode() const { return true; }
- virtual void addMember(Node* node);
- virtual bool hasMembers() const;
- virtual bool hasNamespaces() const;
- virtual bool hasClasses() const;
- virtual void getMemberNamespaces(NodeMap& out);
- virtual void getMemberClasses(NodeMap& out);
- virtual bool wasSeen() const { return seen_; }
- virtual QString title() const { return title_; }
- virtual QString subTitle() const { return subtitle_; }
- virtual QString fullTitle() const { return title_; }
- virtual QString nameForLists() const { return title_; }
- virtual void setTitle(const QString &title);
- virtual void setSubTitle(const QString &subTitle) { subtitle_ = subTitle; }
+ virtual bool isCollectionNode() const Q_DECL_OVERRIDE { return true; }
+ virtual bool isGroup() const Q_DECL_OVERRIDE { return genus() == Node::DOC; }
+ virtual bool isModule() const Q_DECL_OVERRIDE { return genus() == Node::CPP; }
+ virtual bool isQmlModule() const Q_DECL_OVERRIDE { return genus() == Node::QML; }
+ virtual bool isJsModule() const Q_DECL_OVERRIDE { return genus() == Node::JS; }
+ virtual QString qtVariable() const Q_DECL_OVERRIDE { return qtVariable_; }
+ virtual void setQtVariable(const QString& v) Q_DECL_OVERRIDE { qtVariable_ = v; }
+ virtual void addMember(Node* node) Q_DECL_OVERRIDE;
+ virtual bool hasMembers() const Q_DECL_OVERRIDE;
+ virtual bool hasNamespaces() const Q_DECL_OVERRIDE;
+ virtual bool hasClasses() const Q_DECL_OVERRIDE;
+ virtual void getMemberNamespaces(NodeMap& out) Q_DECL_OVERRIDE;
+ virtual void getMemberClasses(NodeMap& out) Q_DECL_OVERRIDE;
+ virtual bool wasSeen() const Q_DECL_OVERRIDE { return seen_; }
+ virtual QString title() const Q_DECL_OVERRIDE { return title_; }
+ virtual QString subTitle() const Q_DECL_OVERRIDE { return subtitle_; }
+ virtual QString fullTitle() const Q_DECL_OVERRIDE { return title_; }
+ virtual QString nameForLists() const Q_DECL_OVERRIDE { return title_; }
+ virtual void setTitle(const QString &title) Q_DECL_OVERRIDE;
+ virtual void setSubTitle(const QString &subTitle) Q_DECL_OVERRIDE { subtitle_ = subTitle; }
+
+ virtual QString logicalModuleName() const Q_DECL_OVERRIDE { return logicalModuleName_; }
+ virtual QString logicalModuleVersion() const Q_DECL_OVERRIDE {
+ return logicalModuleVersionMajor_ + "." + logicalModuleVersionMinor_;
+ }
+ virtual QString logicalModuleIdentifier() const Q_DECL_OVERRIDE {
+ return logicalModuleName_ + logicalModuleVersionMajor_;
+ }
+ virtual void setLogicalModuleInfo(const QString& arg) Q_DECL_OVERRIDE;
+ virtual void setLogicalModuleInfo(const QStringList& info) Q_DECL_OVERRIDE;
const NodeList& members() const { return members_; }
void printMembers(const QString& title);
@@ -1059,58 +1102,9 @@ class CollectionNode : public InnerNode
QString title_;
QString subtitle_;
NodeList members_;
-};
-
-class GroupNode : public CollectionNode
-{
- public:
- GroupNode(InnerNode* parent, const QString& name)
- : CollectionNode(Node::Group, parent, name) { }
- virtual ~GroupNode() { }
-
- virtual bool isGroup() const { return true; }
-};
-
-class ModuleNode : public CollectionNode
-{
- public:
- ModuleNode(InnerNode* parent, const QString& name)
- : CollectionNode(Node::Module, parent, name) { }
- virtual ~ModuleNode() { }
-
- virtual bool isModule() const { return true; }
- virtual bool isCppNode() const { return true; }
- virtual void setQtVariable(const QString& v) { qtVariable_ = v; }
- virtual QString qtVariable() const { return qtVariable_; }
-
- private:
- QString qtVariable_;
-};
-
-class QmlModuleNode : public CollectionNode
-{
- public:
- QmlModuleNode(InnerNode* parent, const QString& name)
- : CollectionNode(Node::QmlModule, parent, name) { }
- virtual ~QmlModuleNode() { }
-
- virtual bool isQmlNode() const { return true; }
- virtual bool isQmlModule() const { return true; }
- virtual QString qmlModuleName() const { return qmlModuleName_; }
- virtual QString qmlModuleVersion() const {
- return qmlModuleVersionMajor_ + "." + qmlModuleVersionMinor_;
- }
- virtual QString qmlModuleIdentifier() const {
- return qmlModuleName_ + qmlModuleVersionMajor_;
- }
- virtual void setQmlModuleInfo(const QString& );
- virtual void setQtVariable(const QString& v) { qtVariable_ = v; }
- virtual QString qtVariable() const { return qtVariable_; }
-
- private:
- QString qmlModuleName_;
- QString qmlModuleVersionMajor_;
- QString qmlModuleVersionMinor_;
+ QString logicalModuleName_;
+ QString logicalModuleVersionMajor_;
+ QString logicalModuleVersionMinor_;
QString qtVariable_;
};