Index: sources/utility/format.cpp =================================================================== diff -u -rae97f70129df818530bcb70c934c42fa28eb6034 -rfd9d9c1f190781f5ff1bc23a732f9424f9434002 --- sources/utility/format.cpp (.../format.cpp) (revision ae97f70129df818530bcb70c934c42fa28eb6034) +++ sources/utility/format.cpp (.../format.cpp) (revision fd9d9c1f190781f5ff1bc23a732f9424f9434002) @@ -39,6 +39,12 @@ return string; } +/*! + * \brief Format::fromVariant + * \details This static method converts the defined types into QByteArray + * \param vData - The value + * \return The QByteAttay of the value vData if can't be converted 0xFF will be returned + */ QByteArray Format::fromVariant(const QVariant &vData) { QByteArray mData; @@ -55,24 +61,21 @@ if ( vData.type() == static_cast(QMetaType::Float) || vData.type() == QVariant::Double ) { Types::F32 f32; - bool ok = false; - f32.value = vData.toFloat(&ok); + f32.value = vData.toFloat(); Types::setValue(f32, mData); return mData; } if ( vData.type() == QVariant::UInt ) { Types::U32 u32; - bool ok = false; - u32.value = vData.toUInt(&ok); + u32.value = vData.toUInt(); Types::setValue(u32, mData); return mData; } if ( vData.type() == QVariant::Int ) { Types::S32 s32; - bool ok = false; - s32.value = vData.toInt(&ok); + s32.value = vData.toInt(); Types::setValue(s32, mData); return mData; } @@ -85,7 +88,12 @@ return mData; } - mData += vData.toUInt(); + if ( vData.type() == QVariant::Bool ) { + mData += vData.toUInt(); + return mData; + } + + mData += 0xFF; return mData; }