aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDominik Holland <dominik.holland@qt.io>2020-11-16 16:29:06 +0100
committerDominik Holland <dominik.holland@qt.io>2020-12-02 10:46:54 +0100
commite1e92987e999bc8fd463f05d6945c2ae25ffc026 (patch)
tree8744069e23b58472b2ab94b07ebe25ed4a2ee595
parent21b7efb998d875e52a36a7282af6b06f9eed942d (diff)
Qt6 port without cmake support
All deprecation warnings fixed and all autotest pass. Change-Id: I05d48e9ddd2bf23b900065726d67710eea0e82d0 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
-rw-r--r--dependencies.yaml7
-rw-r--r--src/helper/remoteobjects/qiviremoteobjectreplicahelper.cpp1
-rw-r--r--src/helper/remoteobjects/qiviremoteobjectsourcehelper.h1
-rw-r--r--src/ivicore/qividefaultpropertyoverrider.cpp12
-rw-r--r--src/ivicore/qivipendingreply.cpp15
-rw-r--r--src/ivicore/qivipendingreply.h8
-rw-r--r--src/ivicore/qiviqmlconversion_helper.cpp32
-rw-r--r--src/ivicore/qiviqmlconversion_helper.h2
-rw-r--r--src/ivicore/qivisimulationengine.cpp6
-rw-r--r--src/ivicore/qivisimulationglobalobject.cpp8
-rw-r--r--src/ivicore/queryparser/qiviqueryterm.cpp2
-rw-r--r--src/plugins/ivimedia/media_qtro/mediaplayerbackend.cpp1
-rw-r--r--src/plugins/ivimedia/media_qtro/searchandbrowsemodel.cpp2
-rw-r--r--src/plugins/ivimedia/media_simulator/mediaplayerbackend.cpp1
-rw-r--r--src/plugins/ivimedia/media_simulator/searchandbrowsebackend.cpp2
-rw-r--r--src/tools/ivigenerator/templates/frontend/module.cpp.tpl3
-rw-r--r--src/tools/ivigenerator/templates/frontend/struct.cpp.tpl12
-rw-r--r--tests/auto/core/qiviabstractfeature/tst_qiviabstractfeature.cpp2
-rw-r--r--tests/auto/core/qivisearchandbrowsemodel/tst_qivisearchandbrowsemodel.cpp21
-rw-r--r--tests/auto/core/qivisimulationengine/tst_qivisimulationengine.cpp2
-rw-r--r--tests/auto/core/qivisimulationglobalobject/tst_qivisimulationglobalobject.cpp16
21 files changed, 76 insertions, 80 deletions
diff --git a/dependencies.yaml b/dependencies.yaml
new file mode 100644
index 0000000..bdc21c9
--- /dev/null
+++ b/dependencies.yaml
@@ -0,0 +1,7 @@
+dependencies:
+ ../qtbase:
+ ref: befa3729db0d1010694bd1bb4cbadd36ff5c49fb
+ required: true
+ ../qtdeclarative:
+ ref: 7e3f5f2224ba0e57a9dffa6251bb002cde564f56
+ required: true
diff --git a/src/helper/remoteobjects/qiviremoteobjectreplicahelper.cpp b/src/helper/remoteobjects/qiviremoteobjectreplicahelper.cpp
index ce12202..c0f446b 100644
--- a/src/helper/remoteobjects/qiviremoteobjectreplicahelper.cpp
+++ b/src/helper/remoteobjects/qiviremoteobjectreplicahelper.cpp
@@ -48,7 +48,6 @@ QIviRemoteObjectReplicaHelper::QIviRemoteObjectReplicaHelper(const QLoggingCateg
, m_category(category)
{
qRegisterMetaType<QIviRemoteObjectPendingResult>();
- qRegisterMetaTypeStreamOperators<QIviRemoteObjectPendingResult>();
}
QVariant QIviRemoteObjectReplicaHelper::fromRemoteObjectVariant(const QVariant &variant) const
diff --git a/src/helper/remoteobjects/qiviremoteobjectsourcehelper.h b/src/helper/remoteobjects/qiviremoteobjectsourcehelper.h
index b290426..b60c9ac 100644
--- a/src/helper/remoteobjects/qiviremoteobjectsourcehelper.h
+++ b/src/helper/remoteobjects/qiviremoteobjectsourcehelper.h
@@ -58,7 +58,6 @@ public:
, m_category(category)
{
qRegisterMetaType<QIviRemoteObjectPendingResult>();
- qRegisterMetaTypeStreamOperators<QIviRemoteObjectPendingResult>();
}
QVariant toRemoteObjectVariant(const QVariant &variant) const
diff --git a/src/ivicore/qividefaultpropertyoverrider.cpp b/src/ivicore/qividefaultpropertyoverrider.cpp
index 328cdff..2072050 100644
--- a/src/ivicore/qividefaultpropertyoverrider.cpp
+++ b/src/ivicore/qividefaultpropertyoverrider.cpp
@@ -127,7 +127,7 @@ QString QIviDefaultPropertyOverrider::PropertyOverride::name() const
QString QIviDefaultPropertyOverrider::PropertyOverride::typeName() const
{
const int userType(m_metaProperty.userType());
- return QString::fromLatin1(QMetaType::typeName(userType));
+ return QString::fromLatin1(QMetaType(userType).name());
}
QString QIviDefaultPropertyOverrider::PropertyOverride::displayText() const
@@ -184,11 +184,11 @@ bool QIviDefaultPropertyOverrider::PropertyOverride::notifyOverridenValue(const
if (!notifySignal.isValid() || notifySignal.parameterCount() != 1)
return false;
- switch (value.type()) {
- case QVariant::Int: return notifySignal.invoke(carrier, Q_ARG(int, value.value<int>()));
- case QVariant::String: return notifySignal.invoke(carrier, Q_ARG(QString, value.value<QString>()));
- case QVariant::Double: return notifySignal.invoke(carrier, Q_ARG(double, value.value<double>()));
- case QVariant::Bool: return notifySignal.invoke(carrier, Q_ARG(double, value.value<bool>()));
+ switch (value.metaType().id()) {
+ case QMetaType::Int: return notifySignal.invoke(carrier, Q_ARG(int, value.value<int>()));
+ case QMetaType::QString: return notifySignal.invoke(carrier, Q_ARG(QString, value.value<QString>()));
+ case QMetaType::Double: return notifySignal.invoke(carrier, Q_ARG(double, value.value<double>()));
+ case QMetaType::Bool: return notifySignal.invoke(carrier, Q_ARG(double, value.value<bool>()));
default:
return false;
}
diff --git a/src/ivicore/qivipendingreply.cpp b/src/ivicore/qivipendingreply.cpp
index b0c6edd..ff55666 100644
--- a/src/ivicore/qivipendingreply.cpp
+++ b/src/ivicore/qivipendingreply.cpp
@@ -485,17 +485,18 @@ void QIviPendingReplyWatcher::setSuccess(const QVariant &value)
QVariant var = value;
+ //We need a special conversion for enums from QML as they are saved as int
+ QMetaType metaType(d->m_type);
+ bool isEnumOrFlag = false;
+
//Try to convert the value, if successfully, use the converted value
QVariant temp(var);
- if (temp.convert(d->m_type))
+ if (temp.convert(metaType))
var = temp;
- //We need a special conversion for enums from QML as they are saved as int
- QMetaType metaType(d->m_type);
- bool isEnumOrFlag = false;
const QMetaObject *mo = metaType.metaObject();
- const QString enumName = QString::fromLocal8Bit(QMetaType::typeName(d->m_type)).split(QStringLiteral("::")).last();
+ const QString enumName = QString::fromLocal8Bit(metaType.name()).split(QStringLiteral("::")).last();
if (mo) {
QMetaEnum mEnum = mo->enumerator(mo->indexOfEnumerator(enumName.toLocal8Bit().constData()));
if (mEnum.isValid()) {
@@ -508,8 +509,8 @@ void QIviPendingReplyWatcher::setSuccess(const QVariant &value)
}
//Check that the type names match only if it's not a enum, as it will be converted automatically in this case.
- if (!isEnumOrFlag && var.typeName() != QVariant::typeToName(d->m_type)) {
- qtivi_qmlOrCppWarning(this, QString(QStringLiteral("Expected: %1 but got %2")).arg(QLatin1String(QVariant::typeToName(d->m_type)), QLatin1String(QVariant::typeToName(value.userType()))));
+ if (!isEnumOrFlag && var.metaType() != metaType) {
+ qtivi_qmlOrCppWarning(this, QString(QStringLiteral("Expected: %1 but got %2")).arg(QLatin1String(metaType.name()), QLatin1String(var.metaType().name())));
return;
}
diff --git a/src/ivicore/qivipendingreply.h b/src/ivicore/qivipendingreply.h
index e9bfc3d..7b2cb4d 100644
--- a/src/ivicore/qivipendingreply.h
+++ b/src/ivicore/qivipendingreply.h
@@ -269,7 +269,7 @@ public:
//Workaround for QTBUG-83664
//If T is a enum
-template <typename T> Q_INLINE_TEMPLATE typename QtPrivate::QEnableIf<QtPrivate::IsQEnumHelper<T>::Value, void>::Type qIviRegisterPendingReplyType(const char *name = nullptr)
+template <typename T> Q_INLINE_TEMPLATE typename std::enable_if<QtPrivate::IsQEnumHelper<T>::Value, void>::type qIviRegisterPendingReplyType(const char *name = nullptr)
{
qRegisterMetaType<T>();
QString n;
@@ -280,7 +280,7 @@ template <typename T> Q_INLINE_TEMPLATE typename QtPrivate::QEnableIf<QtPrivate:
if (me.isValid() && me.isFlag())
n = QLatin1String(me.scope()) + QStringLiteral("::") + QLatin1String(me.name());
else
- n = QLatin1String(QMetaType::typeName(qMetaTypeId<T>()));
+ n = QLatin1String(QMetaType(qMetaTypeId<T>()).name());
}
const QString t_name = QStringLiteral("QIviPendingReply<") + n + QStringLiteral(">");
@@ -288,10 +288,10 @@ template <typename T> Q_INLINE_TEMPLATE typename QtPrivate::QEnableIf<QtPrivate:
}
//If T is NOT a enum
-template <typename T> Q_INLINE_TEMPLATE typename QtPrivate::QEnableIf<!QtPrivate::IsQEnumHelper<T>::Value, void>::Type qIviRegisterPendingReplyType(const char *name = nullptr)
+template <typename T> Q_INLINE_TEMPLATE typename std::enable_if<!QtPrivate::IsQEnumHelper<T>::Value, void>::type qIviRegisterPendingReplyType(const char *name = nullptr)
{
qRegisterMetaType<T>();
- const char* n = name ? name : QMetaType::typeName(qMetaTypeId<T>());
+ const char* n = name ? name : QMetaType(qMetaTypeId<T>()).name();
const QString t_name = QStringLiteral("QIviPendingReply<") + QLatin1String(n) + QStringLiteral(">");
qRegisterMetaType<QIviPendingReplyBase>(qPrintable(t_name));
}
diff --git a/src/ivicore/qiviqmlconversion_helper.cpp b/src/ivicore/qiviqmlconversion_helper.cpp
index 2b13b7c..4ad719f 100644
--- a/src/ivicore/qiviqmlconversion_helper.cpp
+++ b/src/ivicore/qiviqmlconversion_helper.cpp
@@ -100,12 +100,12 @@ QVariant qtivi_convertFromJSON(const QVariant &value)
QVariant val = value;
// First try to convert the values to a Map or a List
// This is needed as it could also store a QStringList or a Hash
- if (val.canConvert(QVariant::Map))
- val.convert(QVariant::Map);
- if (val.canConvert(QVariant::List))
- val.convert(QVariant::List);
+ if (val.canConvert(QMetaType::fromType<QVariantMap>()))
+ val.convert(QMetaType::fromType<QVariantMap>());
+ if (val.canConvert(QMetaType::fromType<QVariantList>()))
+ val.convert(QMetaType::fromType<QVariantList>());
- if (val.type() == QVariant::Map) {
+ if (val.metaType() == QMetaType::fromType<QVariantMap>()) {
const QVariantMap map = val.toMap();
if (map.contains(typeLiteral) && map.contains(valueLiteral)) {
const QString type = map.value(typeLiteral).toString();
@@ -116,7 +116,8 @@ QVariant qtivi_convertFromJSON(const QVariant &value)
const int lastIndex = enumValue.lastIndexOf(QStringLiteral("::"));
const QString className = enumValue.left(lastIndex) + QStringLiteral("*");
enumValue = enumValue.right(enumValue.count() - lastIndex - 2);
- const QMetaObject *mo = QMetaType::metaObjectForType(QMetaType::type(className.toLatin1()));
+ QMetaType metaType = QMetaType::fromName(className.toLatin1());
+ const QMetaObject *mo = metaType.metaObject();
if (Q_UNLIKELY(!mo)) {
qWarning() << "Couldn't retrieve MetaObject for enum parsing:" << map;
qWarning("Please make sure %s is registered in Qt's meta-type system: qRegisterMetaType<%s>()",
@@ -128,14 +129,15 @@ QVariant qtivi_convertFromJSON(const QVariant &value)
QMetaEnum me = mo->enumerator(i);
bool ok = false;
int value = me.keysToValue(enumValue.toLatin1(), &ok);
- if (ok)
- return value;
+ if (ok) {
+ return QVariant(QMetaType::fromName((QLatin1String(me.scope()) + QStringLiteral("::") + QLatin1String(me.enumName())).toLatin1()), &value);
+ }
}
qWarning() << "Couldn't parse the enum definition" << map;
return QVariant();
} else {
- int typeId = QMetaType::type(type.toLatin1());
- const QMetaObject *mo = QMetaType::metaObjectForType(typeId);
+ QMetaType metaType = QMetaType::fromName(type.toLatin1());
+ const QMetaObject *mo = metaType.metaObject();
if (Q_UNLIKELY(!mo)) {
qWarning() << "Couldn't retrieve MetaObject for struct parsing:" << map;
qWarning("Please make sure %s is registered in Qt's meta-type system: qRegisterMetaType<%s>()",
@@ -143,9 +145,9 @@ QVariant qtivi_convertFromJSON(const QVariant &value)
return QVariant();
}
- void *gadget = QMetaType::create(typeId);
+ void *gadget = metaType.create();
if (!Q_UNLIKELY(gadget)) {
- qWarning("Couldn't create a new instance of %s", QMetaType::typeName(typeId));
+ qWarning("Couldn't create a new instance of %s", metaType.name());
return QVariant();
}
@@ -159,12 +161,12 @@ QVariant qtivi_convertFromJSON(const QVariant &value)
qWarning("Couldn't find method: %s::fromJSON(QVariant)\n"
"If your are using code created by the ivigenerator, please regenerate"
"your frontend code. See AUTOSUITE-1374 for why this is needed",
- QMetaType::typeName(typeId));
+ metaType.name());
return QVariant();
}
mo->method(moIdx).invokeOnGadget(gadget, Q_ARG(QVariant, QVariant(value)));
- return QVariant(typeId, gadget);
+ return QVariant(metaType, gadget);
}
}
@@ -172,7 +174,7 @@ QVariant qtivi_convertFromJSON(const QVariant &value)
for (auto i = map.constBegin(); i != map.constEnd(); ++i)
convertedValues.insert(i.key(), qtivi_convertFromJSON(i.value()));
return convertedValues;
- } else if (val.type() == QVariant::List) {
+ } else if (val.metaType() == QMetaType::fromType<QVariantList>()) {
QVariantList values = val.toList();
for (auto i = values.begin(); i != values.end(); ++i)
*i = qtivi_convertFromJSON(*i);
diff --git a/src/ivicore/qiviqmlconversion_helper.h b/src/ivicore/qiviqmlconversion_helper.h
index 620fd8e..3f4313a 100644
--- a/src/ivicore/qiviqmlconversion_helper.h
+++ b/src/ivicore/qiviqmlconversion_helper.h
@@ -63,7 +63,7 @@ template <typename T> QVariant qtivi_convertValue(const T &val)
int userType = qMetaTypeId<T>();
QMetaType metaType(userType);
const QMetaObject *mo = metaType.metaObject();
- QString enumName = QString::fromLocal8Bit(QMetaType::typeName(userType)).split(QStringLiteral("::")).last();
+ QString enumName = QString::fromLocal8Bit(metaType.name()).split(QStringLiteral("::")).last();
if (mo) {
QMetaEnum mEnum = mo->enumerator(mo->indexOfEnumerator(enumName.toLocal8Bit().constData()));
if (mEnum.isValid())
diff --git a/src/ivicore/qivisimulationengine.cpp b/src/ivicore/qivisimulationengine.cpp
index 52cfb04..860c305 100644
--- a/src/ivicore/qivisimulationengine.cpp
+++ b/src/ivicore/qivisimulationengine.cpp
@@ -84,7 +84,7 @@ namespace qtivi_helper {
void parseEnv(const QByteArray &rulesSrc, QHash<QString, QString> &hash) {
const QString content = QString::fromLocal8Bit(rulesSrc);
- const auto lines = content.splitRef(QLatin1Char(';'));
+ const auto lines = content.split(QLatin1Char(';'));
for (auto line : lines) {
// Remove whitespace at start and end of line:
line = line.trimmed();
@@ -99,8 +99,8 @@ namespace qtivi_helper {
if (fixedStr.startsWith(qrcUrlLiteral))
fixedStr = fixedStr.mid(3);
- if (QFile::exists(fixedStr.toString()))
- hash.insert(key.toString(), valueStr.toString());
+ if (QFile::exists(fixedStr))
+ hash.insert(key, valueStr);
else
qCWarning(qLcIviSimulationEngine, "Ignoring malformed override: File does not exist: '%s'", fixedStr.toUtf8().constData());
} else {
diff --git a/src/ivicore/qivisimulationglobalobject.cpp b/src/ivicore/qivisimulationglobalobject.cpp
index fe9f7b6..40b2fb1 100644
--- a/src/ivicore/qivisimulationglobalobject.cpp
+++ b/src/ivicore/qivisimulationglobalobject.cpp
@@ -429,9 +429,9 @@ bool QIviSimulationGlobalObject::checkSettings(const QVariantMap &data, const QV
}
}
const QVariant domainDomain = parseDomainValue(data, domainLiteral, zone);
- bool valueToDouble = value.canConvert(QVariant::Double);
- bool minDomainToDouble = minDomain.canConvert(QVariant::Double);
- bool maxDomainToDouble = maxDomain.canConvert(QVariant::Double);
+ bool valueToDouble = value.canConvert(QMetaType::fromType<double>());
+ bool minDomainToDouble = minDomain.canConvert(QMetaType::fromType<double>());
+ bool maxDomainToDouble = maxDomain.canConvert(QMetaType::fromType<double>());
if (unsupportedDomain.isValid()) {
return !unsupportedDomain.toBool();
@@ -473,7 +473,7 @@ QVariant QIviSimulationGlobalObject::parseDomainValue(const QVariantMap &data, c
return QVariant();
const QVariant domainData = data.value(domain);
- if (domainData.type() == QVariant::Map) {
+ if (domainData.metaType().id() == QMetaType::QVariantMap) {
const QVariantMap domainMap = domainData.toMap();
QString z = zone;
if (zone.isEmpty())
diff --git a/src/ivicore/queryparser/qiviqueryterm.cpp b/src/ivicore/queryparser/qiviqueryterm.cpp
index 867439d..556ad50 100644
--- a/src/ivicore/queryparser/qiviqueryterm.cpp
+++ b/src/ivicore/queryparser/qiviqueryterm.cpp
@@ -490,7 +490,7 @@ QDataStream &operator>>(QDataStream &in, QIviAbstractQueryTerm **var)
Q_ASSERT(type == QStringLiteral("conjunction"));
auto term = new QIviConjunctionTerm();
aTerm = term;
- int count = 0;
+ qsizetype count = 0;
in >> term->d_ptr->m_conjunction;
in >> count;
for (int i = 0; i < count; ++i) {
diff --git a/src/plugins/ivimedia/media_qtro/mediaplayerbackend.cpp b/src/plugins/ivimedia/media_qtro/mediaplayerbackend.cpp
index 48b185b..2140f05 100644
--- a/src/plugins/ivimedia/media_qtro/mediaplayerbackend.cpp
+++ b/src/plugins/ivimedia/media_qtro/mediaplayerbackend.cpp
@@ -54,7 +54,6 @@ MediaPlayerBackend::MediaPlayerBackend(QObject *parent)
{
qRegisterMetaType<QIviPlayableItem>();
qRegisterMetaType<QIviAudioTrackItem>();
- qRegisterMetaTypeStreamOperators<QIviAudioTrackItem>();
}
void MediaPlayerBackend::initialize()
diff --git a/src/plugins/ivimedia/media_qtro/searchandbrowsemodel.cpp b/src/plugins/ivimedia/media_qtro/searchandbrowsemodel.cpp
index cc771e6..2d5db95 100644
--- a/src/plugins/ivimedia/media_qtro/searchandbrowsemodel.cpp
+++ b/src/plugins/ivimedia/media_qtro/searchandbrowsemodel.cpp
@@ -80,9 +80,7 @@ SearchAndBrowseModel::SearchAndBrowseModel(QObject *parent, const QString& remot
, m_helper(new QIviRemoteObjectReplicaHelper(qLcROQIviSearchAndBrowseModel(), this))
{
qRegisterMetaType<SearchAndBrowseItem>();
- qRegisterMetaTypeStreamOperators<SearchAndBrowseItem>();
qRegisterMetaType<QIviAudioTrackItem>();
- qRegisterMetaTypeStreamOperators<QIviAudioTrackItem>();
}
void SearchAndBrowseModel::initialize()
diff --git a/src/plugins/ivimedia/media_simulator/mediaplayerbackend.cpp b/src/plugins/ivimedia/media_simulator/mediaplayerbackend.cpp
index e6e718b..a6aae5d 100644
--- a/src/plugins/ivimedia/media_simulator/mediaplayerbackend.cpp
+++ b/src/plugins/ivimedia/media_simulator/mediaplayerbackend.cpp
@@ -63,7 +63,6 @@ MediaPlayerBackend::MediaPlayerBackend(const QSqlDatabase &database, QObject *pa
, m_player(new QMediaPlayer(this))
{
qRegisterMetaType<QIviAudioTrackItem>();
- qRegisterMetaTypeStreamOperators<QIviAudioTrackItem>();
m_threadPool->setMaxThreadCount(1);
connect(m_player, &QMediaPlayer::durationChanged,
diff --git a/src/plugins/ivimedia/media_simulator/searchandbrowsebackend.cpp b/src/plugins/ivimedia/media_simulator/searchandbrowsebackend.cpp
index ae64037..353c524 100644
--- a/src/plugins/ivimedia/media_simulator/searchandbrowsebackend.cpp
+++ b/src/plugins/ivimedia/media_simulator/searchandbrowsebackend.cpp
@@ -87,9 +87,7 @@ SearchAndBrowseBackend::SearchAndBrowseBackend(const QSqlDatabase &database, QOb
m_threadPool->setMaxThreadCount(1);
qRegisterMetaType<SearchAndBrowseItem>();
- qRegisterMetaTypeStreamOperators<SearchAndBrowseItem>();
qRegisterMetaType<QIviAudioTrackItem>();
- qRegisterMetaTypeStreamOperators<QIviAudioTrackItem>();
m_db = database;
m_db.open();
diff --git a/src/tools/ivigenerator/templates/frontend/module.cpp.tpl b/src/tools/ivigenerator/templates/frontend/module.cpp.tpl
index ec0f87b..a99eaa6 100644
--- a/src/tools/ivigenerator/templates/frontend/module.cpp.tpl
+++ b/src/tools/ivigenerator/templates/frontend/module.cpp.tpl
@@ -133,7 +133,6 @@ void {{class}}::registerTypes()
{% for enum in module.enums %}
qRegisterMetaType<{{class}}::{{enum|flag_type}}>();
- qRegisterMetaTypeStreamOperators<{{class}}::{{enum|flag_type}}>();
qIviRegisterPendingReplyType<{{class}}::{{enum|flag_type}}>();
{% if enum.is_flag %}
//Workaround for https://bugreports.qt.io/browse/QTBUG-75676
@@ -143,8 +142,6 @@ void {{class}}::registerTypes()
{% endfor %}
{% for struct in module.structs %}
qRegisterMetaType<{{struct}}>();
- qRegisterMetaTypeStreamOperators<{{struct}}>();
- QMetaType::registerEqualsComparator<{{struct}}>();
qIviRegisterPendingReplyType<{{struct}}>();
{% endfor %}
}
diff --git a/src/tools/ivigenerator/templates/frontend/struct.cpp.tpl b/src/tools/ivigenerator/templates/frontend/struct.cpp.tpl
index 00ea37b..78036d6 100644
--- a/src/tools/ivigenerator/templates/frontend/struct.cpp.tpl
+++ b/src/tools/ivigenerator/templates/frontend/struct.cpp.tpl
@@ -147,18 +147,18 @@ void {{class}}::fromJSON(const QVariant &variant)
QVariant value = qtivi_convertFromJSON(variant);
// First try to convert the values to a Map or a List
// This is needed as it could also store a QStringList or a Hash
- if (value.canConvert(QVariant::Map))
- value.convert(QVariant::Map);
- if (value.canConvert(QVariant::List))
- value.convert(QVariant::List);
+ if (value.canConvert(QMetaType::fromType<QVariantMap>()))
+ value.convert(QMetaType::fromType<QVariantMap>());
+ if (value.canConvert(QMetaType::fromType<QVariantList>()))
+ value.convert(QMetaType::fromType<QVariantList>());
- if (value.type() == QVariant::Map) {
+ if (value.metaType() == QMetaType::fromType<QVariantList>()) {
QVariantMap map = value.toMap();
{% for field in struct.fields %}
if (map.contains(QStringLiteral("{{field}}")))
d->m_{{field}} = map.value(QStringLiteral("{{field}}")).value<{{field|return_type}}>();
{% endfor %}
- } else if (value.type() == QVariant::List) {
+ } else if (value.metaType() == QMetaType::fromType<QVariantList>()) {
QVariantList values = value.toList();
{% for field in struct.fields %}
d->m_{{field}} = values.value({{loop.index0}}).value<{{field|return_type}}>();
diff --git a/tests/auto/core/qiviabstractfeature/tst_qiviabstractfeature.cpp b/tests/auto/core/qiviabstractfeature/tst_qiviabstractfeature.cpp
index be3c75b..fc1b603 100644
--- a/tests/auto/core/qiviabstractfeature/tst_qiviabstractfeature.cpp
+++ b/tests/auto/core/qiviabstractfeature/tst_qiviabstractfeature.cpp
@@ -576,13 +576,11 @@ public:
};
QT_BEGIN_NAMESPACE
-QTEST_ADD_GPU_BLACKLIST_SUPPORT_DEFS
QT_END_NAMESPACE
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
app.setAttribute(Qt::AA_Use96Dpi, true);
- QTEST_ADD_GPU_BLACKLIST_SUPPORT
tst_QIviAbstractFeature f;
tst_QIviAbstractFeatureListModel lM;
QTEST_SET_MAIN_SOURCE_PATH
diff --git a/tests/auto/core/qivisearchandbrowsemodel/tst_qivisearchandbrowsemodel.cpp b/tests/auto/core/qivisearchandbrowsemodel/tst_qivisearchandbrowsemodel.cpp
index 17c6ea6..093cbfd 100644
--- a/tests/auto/core/qivisearchandbrowsemodel/tst_qivisearchandbrowsemodel.cpp
+++ b/tests/auto/core/qivisearchandbrowsemodel/tst_qivisearchandbrowsemodel.cpp
@@ -38,12 +38,13 @@
#include <QQmlComponent>
#include <QScopedPointer>
+QT_BEGIN_NAMESPACE
bool operator<=(const QVariant &left, const QVariant &right)
{
- if (left.canConvert(QVariant::Double) && right.canConvert(QVariant::Double))
+ if (left.canConvert(QMetaType::fromType<double>()) && right.canConvert(QMetaType::fromType<double>()))
return left.toDouble() <= right.toDouble();
- else if (left.canConvert(QVariant::String) && right.canConvert(QVariant::String))
+ else if (left.canConvert(QMetaType::fromType<QString>()) && right.canConvert(QMetaType::fromType<QString>()))
return left.toString() <= right.toString();
qCritical() << "Can't compare these types:" << left << right;
@@ -52,9 +53,9 @@ bool operator<=(const QVariant &left, const QVariant &right)
bool operator>=(const QVariant &left, const QVariant &right)
{
- if (left.canConvert(QVariant::Double) && right.canConvert(QVariant::Double))
+ if (left.canConvert(QMetaType::fromType<double>()) && right.canConvert(QMetaType::fromType<double>()))
return left.toDouble() >= right.toDouble();
- else if (left.canConvert(QVariant::String) && right.canConvert(QVariant::String))
+ else if (left.canConvert(QMetaType::fromType<QString>()) && right.canConvert(QMetaType::fromType<QString>()))
return left.toString() >= right.toString();
qCritical() << "Can't compare these types:" << left << right;
@@ -71,6 +72,8 @@ bool operator>(const QVariant &left, const QVariant &right)
return !(left <= right);
}
+QT_END_NAMESPACE
+
class TestBackend : public QIviSearchAndBrowseModelInterface
{
Q_OBJECT
@@ -199,8 +202,8 @@ public:
QList<QIviStandardItem> resultList;
for (const QIviStandardItem &item : qAsConst(list)) {
QVariant value = mp.readOnGadget(&item);
- if (value.canConvert(filterTerm->value().userType()))
- value.convert(filterTerm->value().userType());
+ if (value.canConvert(filterTerm->value().metaType()))
+ value.convert(filterTerm->value().metaType());
bool filterCondition = (filterTerm->operatorType() == QIviFilterTerm::Equals && value == filterTerm->value()) ||
(filterTerm->operatorType() == QIviFilterTerm::GreaterThan && value > filterTerm->value()) ||
@@ -233,9 +236,9 @@ public:
std::sort(list.begin(), list.end(), [mp, this](const QIviStandardItem &s1, const QIviStandardItem &s2) {
QVariant var1 = mp.readOnGadget(&s1);
QVariant var2 = mp.readOnGadget(&s2);
- if (var1.canConvert(QMetaType::Int) && var1.canConvert(QMetaType::Int)) {
- var1.convert(QMetaType::Int);
- var2.convert(QMetaType::Int);
+ if (var1.canConvert(QMetaType::fromType<int>()) && var1.canConvert(QMetaType::fromType<int>())) {
+ var1.convert(QMetaType::fromType<int>());
+ var2.convert(QMetaType::fromType<int>());
}
bool lower = var1 > var2;
diff --git a/tests/auto/core/qivisimulationengine/tst_qivisimulationengine.cpp b/tests/auto/core/qivisimulationengine/tst_qivisimulationengine.cpp
index 4edffc4..56fd2e2 100644
--- a/tests/auto/core/qivisimulationengine/tst_qivisimulationengine.cpp
+++ b/tests/auto/core/qivisimulationengine/tst_qivisimulationengine.cpp
@@ -218,7 +218,7 @@ QVariant callTestFunction(QObject* object, const QByteArray &function, QVariantL
QVariant retValue;
QGenericReturnArgument retArgument;
if (returnValue.isValid()) {
- retValue = QVariant(returnValue.type());
+ retValue = QVariant(returnValue.metaType());
retArgument = QGenericReturnArgument(retValue.typeName(), retValue.data());
}
diff --git a/tests/auto/core/qivisimulationglobalobject/tst_qivisimulationglobalobject.cpp b/tests/auto/core/qivisimulationglobalobject/tst_qivisimulationglobalobject.cpp
index 546520a..5171a7b 100644
--- a/tests/auto/core/qivisimulationglobalobject/tst_qivisimulationglobalobject.cpp
+++ b/tests/auto/core/qivisimulationglobalobject/tst_qivisimulationglobalobject.cpp
@@ -68,10 +68,6 @@ public:
: m_intProperty(intProperty)
, m_boolProperty(boolProperty)
{
- static bool once = false;
- if (!once)
- QMetaType::registerEqualsComparator<TestStruct>();
- once = true;
}
int intProperty() const { return m_intProperty; }
@@ -87,18 +83,18 @@ protected:
QVariant value = qtivi_convertFromJSON(variant);
// First try to convert the values to a Map or a List
// This is needed as it could also store a QStringList or a Hash
- if (value.canConvert(QVariant::Map))
- value.convert(QVariant::Map);
- if (value.canConvert(QVariant::List))
- value.convert(QVariant::List);
+ if (value.canConvert(QMetaType::fromType<QVariantMap>()))
+ value.convert(QMetaType::fromType<QVariantMap>());
+ if (value.canConvert(QMetaType::fromType<QVariantList>()))
+ value.convert(QMetaType::fromType<QVariantList>());
- if (value.type() == QVariant::Map) {
+ if (value.metaType() == QMetaType::fromType<QVariantMap>()) {
QVariantMap map = value.toMap();
if (map.contains(QStringLiteral("intProperty")))
m_intProperty = map.value(QStringLiteral("intProperty")).value<int>();
if (map.contains(QStringLiteral("boolProperty")))
m_boolProperty = map.value(QStringLiteral("boolProperty")).value<bool>();
- } else if (value.type() == QVariant::List) {
+ } else if (value.metaType() == QMetaType::fromType<QVariantList>()) {
QVariantList values = value.toList();
m_intProperty = values.value(0).value<int>();
m_boolProperty = values.value(1).value<bool>();