aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorIvan Komissarov <abbapoh@gmail.com>2021-02-21 20:21:30 +0100
committerIvan Komissarov <ABBAPOH@gmail.com>2021-02-22 10:16:15 +0000
commite00084410c53aeaf5e2264b3cfeccd0ef479e4f7 (patch)
treee514490d374ff17da1db74d61a73ad8811cd973c /src
parent83275df38d691ad78278d23042de01cc4b48ef22 (diff)
qt6: fix deprecation warnings about QVariant::*convert
Change-Id: I29f72da92a471de0da3b20a5e1a604e535a46dd3 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/lib/corelib/language/moduleloader.cpp2
-rw-r--r--src/lib/corelib/tools/jsliterals.cpp3
-rw-r--r--src/lib/corelib/tools/qttools.h19
3 files changed, 22 insertions, 2 deletions
diff --git a/src/lib/corelib/language/moduleloader.cpp b/src/lib/corelib/language/moduleloader.cpp
index 591a3df34..b059976be 100644
--- a/src/lib/corelib/language/moduleloader.cpp
+++ b/src/lib/corelib/language/moduleloader.cpp
@@ -3247,7 +3247,7 @@ static QVariant convertToPropertyType(const QVariant &v, PropertyDeclaration::Ty
return v.toString().split(QLatin1Char(','));
QVariant c = v;
- if (!c.convert(vt)) {
+ if (!qVariantConvert(c, vt)) {
QStringList name = namePrefix;
name << key;
throw ErrorInfo(Tr::tr("Value '%1' of property '%2' has incompatible type.")
diff --git a/src/lib/corelib/tools/jsliterals.cpp b/src/lib/corelib/tools/jsliterals.cpp
index bc6112a27..647bdc640 100644
--- a/src/lib/corelib/tools/jsliterals.cpp
+++ b/src/lib/corelib/tools/jsliterals.cpp
@@ -40,6 +40,7 @@
#include "jsliterals.h"
#include <tools/stringconstants.h>
+#include <tools/qttools.h>
#include <QtCore/qregularexpression.h>
@@ -99,7 +100,7 @@ QString toJSLiteral(const QVariant &val)
}
if (val.userType() == QMetaType::Bool)
return toJSLiteral(val.toBool());
- if (val.canConvert(QMetaType::QString))
+ if (qVariantCanConvert(val, QMetaType::QString))
return toJSLiteral(val.toString());
return QStringLiteral("Unconvertible type %1").arg(QLatin1String(val.typeName()));
}
diff --git a/src/lib/corelib/tools/qttools.h b/src/lib/corelib/tools/qttools.h
index ccc9a5552..bbec32544 100644
--- a/src/lib/corelib/tools/qttools.h
+++ b/src/lib/corelib/tools/qttools.h
@@ -43,6 +43,7 @@
#include <QtCore/qhash.h>
#include <QtCore/qstringlist.h>
#include <QtCore/qtextstream.h>
+#include <QtCore/qvariant.h>
#include <functional>
@@ -127,6 +128,24 @@ inline void setupDefaultCodec(QTextStream &stream)
#endif
}
+inline bool qVariantCanConvert(const QVariant &variant, int typeId)
+{
+#if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0))
+ return variant.canConvert(QMetaType(typeId));
+#else
+ return variant.canConvert(typeId); // deprecated in Qt6
+#endif
+}
+
+inline bool qVariantConvert(QVariant &variant, int typeId)
+{
+#if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0))
+ return variant.convert(QMetaType(typeId));
+#else
+ return variant.convert(typeId); // deprecated in Qt6
+#endif
+}
+
} // namespace qbs
#endif // QBSQTTOOLS_H