diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2020-09-18 14:43:04 +0200 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2020-09-23 14:54:47 +0200 |
commit | 548124fd008501d027f1aeb1fb9de03de233b320 (patch) | |
tree | 2e89e22945c12da9a64c9b18c993bc1276740790 /src/qml | |
parent | 20a1002fba8c14514f5a40a9c468adb4c84410d3 (diff) |
Remove QQmlValueTypeProvider::variantFromJsObject
This can be expressed in terms of create().
Change-Id: Id1950390bf4a1c9dfd9364ea351b81c75eb7e28f
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qml')
-rw-r--r-- | src/qml/qml/qqmlglobal.cpp | 6 | ||||
-rw-r--r-- | src/qml/qml/qqmlglobal_p.h | 3 | ||||
-rw-r--r-- | src/qml/qml/v8/qqmlbuiltinfunctions.cpp | 9 |
3 files changed, 9 insertions, 9 deletions
diff --git a/src/qml/qml/qqmlglobal.cpp b/src/qml/qml/qqmlglobal.cpp index 0291701164..558da1d64b 100644 --- a/src/qml/qml/qqmlglobal.cpp +++ b/src/qml/qml/qqmlglobal.cpp @@ -109,14 +109,13 @@ QVariant QQmlValueTypeProvider::createVariantFromString(int type, const QString return QVariant(); } -QVariant QQmlValueTypeProvider::createVariantFromJsObject(int type, const QV4::Value &obj, - QV4::ExecutionEngine *e, bool *ok) +QVariant QQmlValueTypeProvider::createVariantFromJsObject(int type, const QJSValue &obj, bool *ok) { QVariant v; QQmlValueTypeProvider *p = this; do { - if (p->variantFromJsObject(type, obj, e, &v)) { + if (p->create(type, obj, &v)) { if (ok) *ok = true; return v; } @@ -172,7 +171,6 @@ bool QQmlValueTypeProvider::writeValueType(int type, const void *src, QVariant& bool QQmlValueTypeProvider::create(int, const QJSValue &, QVariant *) { return false; } bool QQmlValueTypeProvider::createFromString(int, const QString &, void *, size_t) { return false; } bool QQmlValueTypeProvider::variantFromString(int, const QString &, QVariant *) { return false; } -bool QQmlValueTypeProvider::variantFromJsObject(int, const QV4::Value &, QV4::ExecutionEngine *, QVariant *) { return false; } bool QQmlValueTypeProvider::store(int, const void *, void *, size_t) { return false; } struct ValueTypeProviderList { diff --git a/src/qml/qml/qqmlglobal_p.h b/src/qml/qml/qqmlglobal_p.h index 707fc0ea1c..a0efca8688 100644 --- a/src/qml/qml/qqmlglobal_p.h +++ b/src/qml/qml/qqmlglobal_p.h @@ -228,7 +228,7 @@ public: bool createValueFromString(int, const QString &, void *, size_t); QVariant createVariantFromString(int, const QString &, bool *); - QVariant createVariantFromJsObject(int, const QV4::Value &, QV4::ExecutionEngine *, bool *); + QVariant createVariantFromJsObject(int, const QJSValue &, bool *); bool equalValueType(int, const void *, const QVariant&); bool storeValueType(int, const void *, void *, size_t); @@ -240,7 +240,6 @@ private: virtual bool createFromString(int, const QString &, void *, size_t); virtual bool variantFromString(int, const QString &, QVariant *); - virtual bool variantFromJsObject(int, const QV4::Value &, QV4::ExecutionEngine *, QVariant *); virtual bool store(int, const void *, void *, size_t); diff --git a/src/qml/qml/v8/qqmlbuiltinfunctions.cpp b/src/qml/qml/v8/qqmlbuiltinfunctions.cpp index afa5c64794..ff05c0c2ff 100644 --- a/src/qml/qml/v8/qqmlbuiltinfunctions.cpp +++ b/src/qml/qml/v8/qqmlbuiltinfunctions.cpp @@ -460,9 +460,10 @@ ReturnedValue QtObject::method_font(const FunctionObject *b, const Value *, cons if (argc != 1 || !argv[0].isObject()) THROW_GENERIC_ERROR("Qt.font(): Invalid arguments"); - QV4::ExecutionEngine *v4 = scope.engine; bool ok = false; - QVariant v = QQml_valueTypeProvider()->createVariantFromJsObject(QMetaType::QFont, argv[0], v4, &ok); + QVariant v = QQml_valueTypeProvider()->createVariantFromJsObject( + QMetaType::QFont, QJSValuePrivate::fromReturnedValue(argv[0].asReturnedValue()), + &ok); if (!ok) THROW_GENERIC_ERROR("Qt.font(): Invalid argument: no valid font subproperties specified"); return scope.engine->fromVariant(v); @@ -556,7 +557,9 @@ ReturnedValue QtObject::method_matrix4x4(const FunctionObject *b, const Value *, if (argc == 1 && argv[0].isObject()) { bool ok = false; - QVariant v = QQml_valueTypeProvider()->createVariantFromJsObject(QMetaType::QMatrix4x4, argv[0], scope.engine, &ok); + QVariant v = QQml_valueTypeProvider()->createVariantFromJsObject( + QMetaType::QMatrix4x4, + QJSValuePrivate::fromReturnedValue(argv[0].asReturnedValue()), &ok); if (!ok) THROW_GENERIC_ERROR("Qt.matrix4x4(): Invalid argument: not a valid matrix4x4 values array"); return scope.engine->fromVariant(v); |