aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/v8/qqmlbuiltinfunctions.cpp
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2020-09-21 10:40:27 +0200
committerUlf Hermann <ulf.hermann@qt.io>2020-10-02 13:21:09 +0200
commit45594322fe91eadcd9b2d7b1d76c1a6662bc1472 (patch)
treed14e743f40351ca7a660984616b2500aa83032f5 /src/qml/qml/v8/qqmlbuiltinfunctions.cpp
parentd621027babff9a30d56ab6af871a465108c9eaba (diff)
Use factory functions and ctors for creating value types
As you can extend value types with QML_EXTENDED we may as well allow a factory function in the extended type. Furthermore, if the original type allows construction from QJSValue, we may just use that. In turn, we can get rid of the value type providers now. Change-Id: I9124ea47537eab6c33d7451080ab2fff942eaa7b Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qml/qml/v8/qqmlbuiltinfunctions.cpp')
-rw-r--r--src/qml/qml/v8/qqmlbuiltinfunctions.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/qml/qml/v8/qqmlbuiltinfunctions.cpp b/src/qml/qml/v8/qqmlbuiltinfunctions.cpp
index 12e54f0895..3b6c448e49 100644
--- a/src/qml/qml/v8/qqmlbuiltinfunctions.cpp
+++ b/src/qml/qml/v8/qqmlbuiltinfunctions.cpp
@@ -463,7 +463,7 @@ ReturnedValue QtObject::method_font(const FunctionObject *b, const Value *, cons
QVariant v;
if (!QQml_valueTypeProvider()->createValueType(
QMetaType::QFont, QJSValuePrivate::fromReturnedValue(argv[0].asReturnedValue()),
- &v)) {
+ v)) {
THROW_GENERIC_ERROR("Qt.font(): Invalid argument: no valid font subproperties specified");
}
return scope.engine->fromVariant(v);
@@ -483,7 +483,7 @@ static ReturnedValue createValueType(const FunctionObject *b, const Value *argv,
params.setProperty(i, QJSValuePrivate::fromReturnedValue(argv[i].asReturnedValue()));
QVariant variant;
- QQml_valueTypeProvider()->createValueType(type, params, &variant);
+ QQml_valueTypeProvider()->createValueType(type, params, variant);
return scope.engine->fromVariant(variant);
}
@@ -554,7 +554,7 @@ ReturnedValue QtObject::method_matrix4x4(const FunctionObject *b, const Value *,
if (argc == 0) {
QVariant variant;
- QQml_valueTypeProvider()->createValueType(QMetaType::QMatrix4x4, QJSValue(), &variant);
+ QQml_valueTypeProvider()->createValueType(QMetaType::QMatrix4x4, QJSValue(), variant);
return scope.engine->fromVariant(variant);
}
@@ -562,7 +562,7 @@ ReturnedValue QtObject::method_matrix4x4(const FunctionObject *b, const Value *,
QVariant v;
if (!QQml_valueTypeProvider()->createValueType(
QMetaType::QMatrix4x4,
- QJSValuePrivate::fromReturnedValue(argv[0].asReturnedValue()), &v)) {
+ QJSValuePrivate::fromReturnedValue(argv[0].asReturnedValue()), v)) {
THROW_GENERIC_ERROR("Qt.matrix4x4(): Invalid argument: not a valid matrix4x4 values array");
}
return scope.engine->fromVariant(v);