diff --git a/src/blackgui/models/columnformatters.cpp b/src/blackgui/models/columnformatters.cpp index b34820da7..169fb7868 100644 --- a/src/blackgui/models/columnformatters.cpp +++ b/src/blackgui/models/columnformatters.cpp @@ -136,17 +136,17 @@ namespace BlackGui QVariant CDateTimeFormatter::displayRole(const QVariant &dateTime) const { if (dateTime.isNull()) return ""; - if (dateTime.type() == QMetaType::QDateTime) + if (static_cast(dateTime.type()) == QMetaType::QDateTime) { QDateTime dt = dateTime.value(); return dt.toString(m_formatString); } - else if (dateTime.type() == QMetaType::QDate) + else if (static_cast(dateTime.type()) == QMetaType::QDate) { QDate d = dateTime.value(); return d.toString(m_formatString); } - else if (dateTime.type() == QMetaType::QTime) + else if (static_cast(dateTime.type()) == QMetaType::QTime) { QTime t = dateTime.value(); return t.toString(m_formatString); diff --git a/src/blackmisc/blackmiscfreefunctions.cpp b/src/blackmisc/blackmiscfreefunctions.cpp index c762ddc74..8815ff1c9 100644 --- a/src/blackmisc/blackmiscfreefunctions.cpp +++ b/src/blackmisc/blackmiscfreefunctions.cpp @@ -232,7 +232,8 @@ int BlackMisc::compareQVariants(const QVariant &v1, const QVariant &v2) if (v1.type() != v2.type()) qFatal("Mismatching types"); if (v1.userType() != v2.userType()) qFatal("Mismatching user types"); - switch (v1.type()) + auto v1Type = static_cast(v1.type()); + switch (v1Type) { case QMetaType::QString: case QMetaType::QChar: @@ -274,7 +275,7 @@ int BlackMisc::compareQVariants(const QVariant &v1, const QVariant &v2) } // BlackObject - if (v1.type() == QVariant::UserType) + if (v1Type == QMetaType::User) { const CValueObject *cs1 = CValueObject::fromQVariant(v1); const CValueObject *cs2 = CValueObject::fromQVariant(v2); @@ -285,28 +286,28 @@ int BlackMisc::compareQVariants(const QVariant &v1, const QVariant &v2) } // integer types, handling not as double for rounding issues - if (v1.type() == QVariant::Int) + if (v1Type == QMetaType::Int) { int i1 = v1.value(); int i2 = v2.value(); if (i1 == i2) return 0; return i1 < i2 ? -1 : 1; } - else if (v1.type() == QVariant::UInt) + else if (v1Type == QMetaType::UInt) { uint i1 = v1.value(); uint i2 = v2.value(); if (i1 == i2) return 0; return i1 < i2 ? -1 : 1; } - else if (v1.type() == QVariant::LongLong) + else if (v1Type == QMetaType::LongLong) { long long i1 = v1.value(); long long i2 = v2.value(); if (i1 == i2) return 0; return i1 < i2 ? -1 : 1; } - else if (v1.type() == QVariant::ULongLong) + else if (v1Type == QMetaType::ULongLong) { unsigned long long i1 = v1.value(); unsigned long long i2 = v2.value(); diff --git a/src/blackmisc/namevariantpair.cpp b/src/blackmisc/namevariantpair.cpp index 4cd2bf1f3..8ed6ecf2d 100644 --- a/src/blackmisc/namevariantpair.cpp +++ b/src/blackmisc/namevariantpair.cpp @@ -156,7 +156,7 @@ namespace BlackMisc this->m_variant = variant; break; case IndexIcon: - if (variant.type() == QMetaType::Int) + if (static_cast(variant.type()) == QMetaType::Int) { CIcons::IconIndex index = static_cast(variant.toInt()); this->m_icon = CIconList::iconForIndex(index); diff --git a/src/blackmisc/valueobject.cpp b/src/blackmisc/valueobject.cpp index 3876e4e94..8705c4cdb 100644 --- a/src/blackmisc/valueobject.cpp +++ b/src/blackmisc/valueobject.cpp @@ -106,10 +106,10 @@ namespace BlackMisc const CValueObject *CValueObject::fromQVariant(const QVariant &variant) { if (!variant.isValid()) return nullptr; - QVariant::Type t = variant.type(); + auto t = static_cast(variant.type()); uint ut = variant.userType(); - if (t != QVariant::UserType) return nullptr; // not a user type - if (ut <= QVariant::UserType) return nullptr; // complex Qt type + if (t != QMetaType::User) return nullptr; // not a user type + if (ut <= static_cast(QMetaType::User)) return nullptr; // complex Qt type if (variant.canConvert()) return nullptr; // not unstreamed yet // this cast cannot be dynamic, so the above conditions are crucical diff --git a/src/blackmisc/variant.h b/src/blackmisc/variant.h index c5c498abe..aeb70bcd2 100644 --- a/src/blackmisc/variant.h +++ b/src/blackmisc/variant.h @@ -134,6 +134,7 @@ namespace BlackMisc bool isValid() const { return m_v.isValid(); } //! Return the metatype ID of the value in this variant, or QMetaType::User if it is a user type. + // KB we should think about returning QMetaType::Type directly, as QVariant::Type is deprecated QVariant::Type type() const { return m_v.type(); } //! Return the typename of the value in this variant.