diff --git a/src/blackmisc/json.h b/src/blackmisc/json.h index 7300a4df0..e90c1add6 100644 --- a/src/blackmisc/json.h +++ b/src/blackmisc/json.h @@ -29,10 +29,6 @@ #include #include -#if QT_VERSION >= 0x50701 -#define BLACK_USE_LATIN1_JSON_KEYS -#endif - class QDateTime; class QPixmap; class QStringList; @@ -53,17 +49,8 @@ namespace BlackMisc //! Implicit constructor. Q_DECL_CONSTEXPR CExplicitLatin1String(QLatin1String s) : m_latin1(s) {} -#ifdef BLACK_USE_LATIN1_JSON_KEYS - //! Type usable as key in QJsonObject. - Q_DECL_CONSTEXPR auto toJsonKey() const { return *this; } //! Implicit conversion. Q_DECL_CONSTEXPR operator QLatin1String() const { return m_latin1; } -#else - //! Type usable as key in QJsonObject. - QString toJsonKey() const { return m_latin1; } - //! Implicit conversion. - operator QString() const { return m_latin1; } -#endif }; } @@ -357,7 +344,7 @@ namespace BlackMisc auto meta = introspect().without(MetaFlags()); meta.forEachMember([ &, this ](auto member) { - json << std::make_pair(CExplicitLatin1String(member.latin1Name()).toJsonKey(), std::cref(member.in(*this->derived()))); + json << std::make_pair(CExplicitLatin1String(member.latin1Name()), std::cref(member.in(*this->derived()))); }); return Json::appendJsonObject(json, baseToJson(static_cast *>(derived()))); } diff --git a/src/blackmisc/simulation/aircraftmodel.cpp b/src/blackmisc/simulation/aircraftmodel.cpp index b3580c8ce..1dd602c0d 100644 --- a/src/blackmisc/simulation/aircraftmodel.cpp +++ b/src/blackmisc/simulation/aircraftmodel.cpp @@ -109,7 +109,7 @@ namespace BlackMisc meta.forEachMember([ &, this ](auto member) { auto &&maybeMemo = helper.maybeMemoize(member.in(*this)); - json << std::make_pair(CExplicitLatin1String(member.latin1Name()).toJsonKey(), std::cref(maybeMemo)); + json << std::make_pair(CExplicitLatin1String(member.latin1Name()), std::cref(maybeMemo)); }); return json; } diff --git a/src/blackmisc/valuecache.h b/src/blackmisc/valuecache.h index defff18c4..e26ed572b 100644 --- a/src/blackmisc/valuecache.h +++ b/src/blackmisc/valuecache.h @@ -372,7 +372,6 @@ namespace BlackMisc } //! Set a callback to be called when the value is changed by another source. - //! \todo Qt 5.7.0: in assert use m_page->parent()->metaObject()->inherits(&U::staticMetaObject) template void setNotifySlot(F slot) { @@ -382,7 +381,7 @@ namespace BlackMisc return; } using U = typename Private::TClassOfPointerToMember::type; - Q_ASSERT_X(m_page->parent()->inherits(U::staticMetaObject.className()), Q_FUNC_INFO, "Slot is member function of wrong class"); + Q_ASSERT_X(m_page->parent()->metaObject()->inherits(&U::staticMetaObject), Q_FUNC_INFO, "Slot is member function of wrong class"); m_page->setNotifySlot(*m_element, { [slot](QObject *obj) { Private::invokeSlot(slot, static_cast(obj)); }, makeId(slot) }); }