summaryrefslogtreecommitdiff
path: root/src/plugins/qmldesigner/designercore/include/nodemetainfo.h
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@nokia.com>2010-05-12 17:48:46 +0200
committerKai Koehne <kai.koehne@nokia.com>2010-05-12 21:26:20 +0200
commit924da63d7d2b6cadec13c78e2fa36bfa7267a0a8 (patch)
tree69497c4b8b4c45e0d5ced4c304eeb63bf8efbc44 /src/plugins/qmldesigner/designercore/include/nodemetainfo.h
parent6be9d180bed54978fb2b5efe64f923f4a9f0be44 (diff)
downloadqt-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.h17
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;