From 2327961711c7be4c71d9dec4a68e967110bb4f2b Mon Sep 17 00:00:00 2001 From: Ali Kianian Date: Tue, 31 Oct 2023 15:10:14 +0200 Subject: QmlDesigner: Fix the compatibility error for QColor::isValidColorName Change-Id: Ia32678cabde37c641368f4d037bd1a0499dd47ec Reviewed-by: Qt CI Bot Reviewed-by: Thomas Hartmann --- src/imports/utils/quickstudiocsvtablemodel.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/imports/utils/quickstudiocsvtablemodel.cpp b/src/imports/utils/quickstudiocsvtablemodel.cpp index 6f08f39..d3b2616 100644 --- a/src/imports/utils/quickstudiocsvtablemodel.cpp +++ b/src/imports/utils/quickstudiocsvtablemodel.cpp @@ -44,6 +44,18 @@ #include #include +static inline bool isValidColorName(const QString &colorName) +{ +#if QT_VERSION >= QT_VERSION_CHECK(6, 4, 0) + return QColor::isValidColorName(colorName); +#else + constexpr QStringView colorPattern( + u"(?^(?:#(?:(?:[0-9a-fA-F]{2}){3,4}|(?:[0-9a-fA-F]){3,4}))$)"); + static QRegularExpression colorRegex(colorPattern.toString()); + return colorRegex.match(colorName).hasMatch(); +#endif // >= Qt 6.4 +} + static QVariant stringToVariant(const QString &value) { constexpr QStringView typesPattern{u"(?^(?:true|false)$)|" @@ -103,7 +115,7 @@ static QVariant stringToVariant(const QString &value, QMetaType::Type type, bool } if (type == QMetaType::QColor) { - bool conversionOk = QColor::isValidColorName(value); + bool conversionOk = ::isValidColorName(value); if (ok) *ok = conversionOk; -- cgit v1.2.3