From 6eb95ca73ca8215f240c6f928eb28c424f904414 Mon Sep 17 00:00:00 2001 From: wmayer Date: Thu, 2 Nov 2023 14:21:20 +0100 Subject: [PATCH] Material: fix compiler warning with Qt6 QVariant::Type is deprecated since Qt 6.0 and shouldn't be used in new code --- src/Mod/Material/App/MaterialValue.cpp | 40 ++++++++++++++++++++++---- 1 file changed, 35 insertions(+), 5 deletions(-) diff --git a/src/Mod/Material/App/MaterialValue.cpp b/src/Mod/Material/App/MaterialValue.cpp index 3229424696..a756a00945 100644 --- a/src/Mod/Material/App/MaterialValue.cpp +++ b/src/Mod/Material/App/MaterialValue.cpp @@ -85,6 +85,7 @@ bool MaterialValue::operator==(const MaterialValue& other) const void MaterialValue::setInitialValue(ValueType inherited) { +#if QT_VERSION < QT_VERSION_CHECK(6,0,0) if (_valueType == String) { _value = QVariant(static_cast(QMetaType::QString)); } @@ -100,11 +101,6 @@ void MaterialValue::setInitialValue(ValueType inherited) else if (_valueType == URL) { _value = QVariant(static_cast(QMetaType::QString)); } - else if (_valueType == Quantity) { - Base::Quantity q; - q.setInvalid(); - _value = QVariant::fromValue(q); - } else if (_valueType == Color) { _value = QVariant(static_cast(QMetaType::QString)); } @@ -117,6 +113,40 @@ void MaterialValue::setInitialValue(ValueType inherited) else if (_valueType == List) { _value = QVariant(static_cast(QMetaType::QString)); } +#else + if (_valueType == String) { + _value = QVariant(QMetaType(QMetaType::QString)); + } + else if (_valueType == Boolean) { + _value = QVariant(QMetaType(QMetaType::Bool)); + } + else if (_valueType == Integer) { + _value = QVariant(QMetaType(QMetaType::Int)); + } + else if (_valueType == Float) { + _value = QVariant(QMetaType(QMetaType::Float)); + } + else if (_valueType == URL) { + _value = QVariant(QMetaType(QMetaType::QString)); + } + else if (_valueType == Color) { + _value = QVariant(QMetaType(QMetaType::QString)); + } + else if (_valueType == File) { + _value = QVariant(QMetaType(QMetaType::QString)); + } + else if (_valueType == Image) { + _value = QVariant(QMetaType(QMetaType::QString)); + } + else if (_valueType == List) { + _value = QVariant(QMetaType(QMetaType::QString)); + } +#endif + else if (_valueType == Quantity) { + Base::Quantity qu; + qu.setInvalid(); + _value = QVariant::fromValue(qu); + } else if (_valueType == Array2D) { if (_valueType != inherited) { throw InvalidMaterialType("Initializing a regular material value as a 2D Array");