aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaximilian Goldstein <max.goldstein@qt.io>2020-10-23 16:09:41 +0200
committerMaximilian Goldstein <max.goldstein@qt.io>2020-10-26 12:44:42 +0100
commit1c594efacc3290437b0c20723746fd755efecd02 (patch)
treea6f16b3ace34766f9ce724e38e5fc0136a0077fe
parentbae83ce8403a4129da6660bfc0b0ea959572dc59 (diff)
qml: Move more types into builtins.qmltypes
Change-Id: Id2795f16af99870f32266f81228890a9d12c86a7 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
-rw-r--r--src/imports/builtins/builtins.qmltypes36
-rw-r--r--src/qml/qml/qqmlcomponent.h1
-rw-r--r--src/qmltyperegistrar/qmltypesclassdescription.cpp3
-rw-r--r--src/qmltyperegistrar/qmltypesclassdescription.h1
-rw-r--r--src/qmltyperegistrar/qmltypescreator.cpp8
5 files changed, 39 insertions, 10 deletions
diff --git a/src/imports/builtins/builtins.qmltypes b/src/imports/builtins/builtins.qmltypes
index 667e06a6ec..29a04b3c4b 100644
--- a/src/imports/builtins/builtins.qmltypes
+++ b/src/imports/builtins/builtins.qmltypes
@@ -12,6 +12,42 @@ Module {
exports: ["QML/var 1.0", "QML/variant 1.0"]
exportMetaObjectRevisions: [256]
}
+
+ Component {
+ name: "QObject"
+ accessSemantics: "reference"
+ exports: [ "QML/QtObject 1.0"]
+
+ exportMetaObjectRevisions: [256]
+ Method { name: "toString"; type: "string" }
+ Method { name: "destroy" }
+ Method {
+ name: "destroy"
+ Parameter { name: "delay"; type: "int" }
+ }
+ }
+
+ Component {
+ name: "QQmlComponent"
+
+ accessSemantics: "reference"
+ prototype: "QObject"
+ exports: [ "QML/Component 1.0" ]
+
+ exportMetaObjectRevisions: [256]
+ Enum {
+ name: "Status"
+ values: ["Null", "Ready", "Loading", "Error"]
+ }
+ Property { name: "status"; type: "Status"; isReadonly: true }
+
+ Signal {
+ name: "statusChanged"
+ Parameter { type: "QQmlComponent::Status" }
+ }
+ Method { name: "errorString"; type: "string" }
+ }
+
Component {
name: "Number"
// is a singleton, but its constructor can construct NumberPrototype objects...
diff --git a/src/qml/qml/qqmlcomponent.h b/src/qml/qml/qqmlcomponent.h
index 9a4ea711f3..f0d51931a4 100644
--- a/src/qml/qml/qqmlcomponent.h
+++ b/src/qml/qml/qqmlcomponent.h
@@ -73,7 +73,6 @@ class Q_QML_EXPORT QQmlComponent : public QObject
QML_NAMED_ELEMENT(Component)
QML_ADDED_IN_VERSION(2, 0)
QML_ATTACHED(QQmlComponentAttached)
- Q_CLASSINFO("QML.Builtin", "QML")
public:
enum CompilationMode { PreferSynchronous, Asynchronous };
diff --git a/src/qmltyperegistrar/qmltypesclassdescription.cpp b/src/qmltyperegistrar/qmltypesclassdescription.cpp
index 2529951d7e..9f58d824fe 100644
--- a/src/qmltyperegistrar/qmltypesclassdescription.cpp
+++ b/src/qmltyperegistrar/qmltypesclassdescription.cpp
@@ -123,9 +123,6 @@ void QmlTypesClassDescription::collect(const QJsonObject *classDef,
}
} else if (name == QLatin1String("QML.Root")) {
isRootClass = true;
- isBuiltin = true;
- } else if (name == QLatin1String("QML.Builtin")) {
- isBuiltin = true;
}
}
diff --git a/src/qmltyperegistrar/qmltypesclassdescription.h b/src/qmltyperegistrar/qmltypesclassdescription.h
index 60f7c92893..17235c58eb 100644
--- a/src/qmltyperegistrar/qmltypesclassdescription.h
+++ b/src/qmltyperegistrar/qmltypesclassdescription.h
@@ -51,7 +51,6 @@ struct QmlTypesClassDescription
bool isCreatable = true;
bool isSingleton = false;
bool isRootClass = false;
- bool isBuiltin = false;
enum CollectMode {
TopLevel,
diff --git a/src/qmltyperegistrar/qmltypescreator.cpp b/src/qmltyperegistrar/qmltypescreator.cpp
index 7e5fca0c53..3d8906732f 100644
--- a/src/qmltyperegistrar/qmltypescreator.cpp
+++ b/src/qmltyperegistrar/qmltypescreator.cpp
@@ -64,11 +64,6 @@ void QmlTypesCreator::writeClassProperties(const QmlTypesClassDescription &colle
QStringList exports;
QStringList metaObjects;
- if (collector.isBuiltin) {
- exports.append(enquote(QString::fromLatin1("QML/%1 1.0").arg(collector.elementName)));
- metaObjects.append(QString::number(QTypeRevision::fromVersion(1, 0).toEncodedVersion<quint16>()));
- }
-
for (auto it = collector.revisions.begin(), end = collector.revisions.end(); it != end; ++it) {
const QTypeRevision revision = *it;
if (revision < collector.addedInRevision)
@@ -273,6 +268,7 @@ void QmlTypesCreator::writeComponents()
const QLatin1String methodsKey("methods");
const QLatin1String accessKey("access");
const QLatin1String typeKey("type");
+ const QLatin1String returnTypeKey("returnType");
const QLatin1String argumentsKey("arguments");
const QLatin1String destroyedName("destroyed");
@@ -287,6 +283,7 @@ void QmlTypesCreator::writeComponents()
const QLatin1String publicAccess("public");
const QLatin1String intType("int");
+ const QLatin1String stringType("string");
for (const QJsonObject &component : m_ownTypes) {
m_qml.writeStartObject(componentElement);
@@ -331,6 +328,7 @@ void QmlTypesCreator::writeComponents()
QJsonObject toStringMethod;
toStringMethod.insert(nameKey, toStringName);
toStringMethod.insert(accessKey, publicAccess);
+ toStringMethod.insert(returnTypeKey, stringType);
componentMethods.append(toStringMethod);
// Add destroy()