diff options
author | Kai Koehne <kai.koehne@nokia.com> | 2010-05-12 17:48:46 +0200 |
---|---|---|
committer | Kai Koehne <kai.koehne@nokia.com> | 2010-05-12 21:26:20 +0200 |
commit | 924da63d7d2b6cadec13c78e2fa36bfa7267a0a8 (patch) | |
tree | 69497c4b8b4c45e0d5ced4c304eeb63bf8efbc44 /src/plugins/qmldesigner/designercore/include/nodemetainfo.h | |
parent | 6be9d180bed54978fb2b5efe64f923f4a9f0be44 (diff) | |
download | qt-creator-924da63d7d2b6cadec13c78e2fa36bfa7267a0a8.tar.gz |
QuickDesigner: Fully implement versioning support in metatype system
Store qml versions in the metatype system. Instead of just assuming
e.g. "4, 6" or "4, 7" as default, support passing "-1, -1" as versioning
wildcard.
When inspecting the qml meta type system, versions are now stored also
for types that have no qml name / version. The version of the referenting
type is then taken, e.g. there are now entries for "Qt/Object", 4, 7 and
"Qt/Object", 1, 0 (from QmlProject, 1, 0).
Furthermore, some unused methods were removed, and the logic changed insofar
as that a type can have only one direct super type.
Reviewed-by: Thomas Hartmann
Reviewed-by: Marco Bubke
Diffstat (limited to 'src/plugins/qmldesigner/designercore/include/nodemetainfo.h')
-rw-r--r-- | src/plugins/qmldesigner/designercore/include/nodemetainfo.h | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/src/plugins/qmldesigner/designercore/include/nodemetainfo.h b/src/plugins/qmldesigner/designercore/include/nodemetainfo.h index 3dfaa58552..b5a0ab6dce 100644 --- a/src/plugins/qmldesigner/designercore/include/nodemetainfo.h +++ b/src/plugins/qmldesigner/designercore/include/nodemetainfo.h @@ -82,26 +82,22 @@ public: PropertyMetaInfo property(const QString &propertyName, bool resolveDotSyntax = false) const; QList<NodeMetaInfo> superClasses() const; - QList<NodeMetaInfo> directSuperClasses() const; + NodeMetaInfo directSuperClass() const; QHash<QString,PropertyMetaInfo> properties(bool resolveDotSyntax = false) const; - QString typeName() const; int majorVersion() const; int minorVersion() const; + bool availableInVersion(int majorVersion, int minorVersion) const; + bool hasDefaultProperty() const; QString defaultProperty() const; bool hasProperty(const QString &propertyName, bool resolveDotSyntax = false) const; bool isContainer() const; - - bool isWidget() const; - bool isGraphicsWidget() const; - bool isGraphicsObject() const; - bool isQmlGraphicsItem() const; bool isComponent() const; - bool isSubclassOf(const QString& type, int majorVersion = 4, int minorVersion = 6) const; + bool isSubclassOf(const QString& type, int majorVersion, int minorVersio) const; QIcon icon() const; @@ -110,14 +106,13 @@ private: NodeMetaInfo(const MetaInfo &metaInfo); void setInvalid(); - void setTypeName(const QString &typeName); + void setType(const QString &typeName, int majorVersion, int minorVersion); void addProperty(const PropertyMetaInfo &property); void setIsContainer(bool isContainer); void setIcon(const QIcon &icon); void setQmlFile(const QString &filePath); void setDefaultProperty(const QString &defaultProperty); - void setMajorVersion(int version); - void setMinorVersion(int version); + void setSuperClass(const QString &typeName, int majorVersion = -1, int minorVersion = -1); bool hasLocalProperty(const QString &propertyName, bool resolveDotSyntax = false) const; QHash<QString,PropertyMetaInfo> dotProperties() const; |