diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2019-04-15 01:00:05 +0200 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2019-04-15 09:36:12 +0200 |
commit | 8bc3329e2cec4638fa9af274a40dda176bbb7352 (patch) | |
tree | 87ebd27e0f6dc305c78fddb956e65bd5922a078b /src/qml/qml/qqmlvaluetype.cpp | |
parent | 75998b22b0b216d925e93d2c0e205025c23b2522 (diff) | |
parent | 6dac2e7df7fbf0f29667bf92b4e72426db47dbe9 (diff) |
Merge remote-tracking branch 'origin/5.12' into 5.13v5.13.0-beta3
Conflicts:
src/3rdparty/masm/assembler/LinkBuffer.h
src/qmltest/doc/src/qtquicktest-index.qdoc
tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp
Change-Id: I7d83ad95cf489dda794dd7a0a33bad3ef3b05609
Diffstat (limited to 'src/qml/qml/qqmlvaluetype.cpp')
-rw-r--r-- | src/qml/qml/qqmlvaluetype.cpp | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/src/qml/qml/qqmlvaluetype.cpp b/src/qml/qml/qqmlvaluetype.cpp index e92488f9f6..6fd0f0d37c 100644 --- a/src/qml/qml/qqmlvaluetype.cpp +++ b/src/qml/qml/qqmlvaluetype.cpp @@ -81,19 +81,26 @@ QQmlValueTypeFactoryImpl::~QQmlValueTypeFactoryImpl() bool QQmlValueTypeFactoryImpl::isValueType(int idx) { - if (idx >= (int)QVariant::UserType) { - return (valueType(idx) != nullptr); - } else if (idx >= 0 - && idx != QVariant::StringList - && idx != QMetaType::QObjectStar - && idx != QMetaType::VoidStar - && idx != QMetaType::Nullptr - && idx != QMetaType::QVariant - && idx != QMetaType::QLocale) { + if (idx >= QMetaType::User) + return valueType(idx) != nullptr; + + if (idx < 0) + return false; + + // Qt internal types + switch (idx) { + case QMetaType::QStringList: + case QMetaType::QObjectStar: + case QMetaType::VoidStar: + case QMetaType::Nullptr: + case QMetaType::QVariant: + case QMetaType::QLocale: + case QMetaType::QImage: // scarce type, keep as QVariant + case QMetaType::QPixmap: // scarce type, keep as QVariant + return false; + default: return true; } - - return false; } const QMetaObject *QQmlValueTypeFactoryImpl::metaObjectForMetaType(int t) |