From d1db1943aed5a2185a8337c7254ddb691ad532b2 Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Fri, 26 Jul 2019 16:02:06 +0200 Subject: [PATCH] Ref T709, display settings as string/QString (for logging) --- .../simulation/settings/xswiftbussettings.cpp | 2 +- .../settings/xswiftbussettingsqtfree.cpp | 14 +++++++++++++- .../settings/xswiftbussettingsqtfree.h | 3 +++ src/blackmisc/simulation/xplane/qtfreeutils.h | 16 ++++++++++++++++ 4 files changed, 33 insertions(+), 2 deletions(-) diff --git a/src/blackmisc/simulation/settings/xswiftbussettings.cpp b/src/blackmisc/simulation/settings/xswiftbussettings.cpp index a84aa348a..17b54dbbb 100644 --- a/src/blackmisc/simulation/settings/xswiftbussettings.cpp +++ b/src/blackmisc/simulation/settings/xswiftbussettings.cpp @@ -55,7 +55,7 @@ namespace BlackMisc QString CXSwiftBusSettings::convertToQString(bool i18n) const { Q_UNUSED(i18n); - return ""; + return QString::fromStdString(CXSwiftBusSettingsQtFree::convertToString()); } CStatusMessageList CXSwiftBusSettings::validate() const diff --git a/src/blackmisc/simulation/settings/xswiftbussettingsqtfree.cpp b/src/blackmisc/simulation/settings/xswiftbussettingsqtfree.cpp index 19279661a..cbfca08f9 100644 --- a/src/blackmisc/simulation/settings/xswiftbussettingsqtfree.cpp +++ b/src/blackmisc/simulation/settings/xswiftbussettingsqtfree.cpp @@ -7,12 +7,16 @@ */ #include "xswiftbussettingsqtfree.h" +#include "blackmisc/simulation/xplane/qtfreeutils.h" + #include "rapidjson/document.h" // rapidjson's DOM-style API #include "rapidjson/prettywriter.h" // for stringify JSON #include -using namespace rapidjson; using namespace BlackMisc::Simulation::Settings; +using namespace BlackMisc::Simulation::XPlane; + +using namespace rapidjson; //! @cond SWIFT_INTERNAL constexpr char BlackMisc::Simulation::Settings::CXSwiftBusSettingsQtFree::JsonDBusServerAddress[]; @@ -85,6 +89,14 @@ namespace BlackMisc const std::string json = sb.GetString(); return json; } + + std::string CXSwiftBusSettingsQtFree::convertToString() const + { + return "DBusServer: " + m_dBusServerAddress + + ", drawLabels: " + QtFreeUtils::boolToYesNo(m_drawingLabels) + + ", max planes: " + std::to_string(m_maxPlanes) + + ", max distance NM: " + std::to_string(m_maxDrawDistanceNM); + } } // ns } // ns } // ns diff --git a/src/blackmisc/simulation/settings/xswiftbussettingsqtfree.h b/src/blackmisc/simulation/settings/xswiftbussettingsqtfree.h index 05882e771..7e51cd7d1 100644 --- a/src/blackmisc/simulation/settings/xswiftbussettingsqtfree.h +++ b/src/blackmisc/simulation/settings/xswiftbussettingsqtfree.h @@ -57,6 +57,9 @@ namespace BlackMisc //! As JSON string std::string toXSwiftBusJsonString() const; + //! Convert to string + std::string convertToString() const; + protected: //! The JSON members @{ static constexpr char JsonDBusServerAddress[] = "dbusserveradress"; diff --git a/src/blackmisc/simulation/xplane/qtfreeutils.h b/src/blackmisc/simulation/xplane/qtfreeutils.h index 50e43177c..3a0c203fe 100644 --- a/src/blackmisc/simulation/xplane/qtfreeutils.h +++ b/src/blackmisc/simulation/xplane/qtfreeutils.h @@ -139,6 +139,22 @@ namespace BlackMisc }); } + //! Yes/no from bool + inline const std::string &boolToYesNo(bool t) + { + static const std::string y("yes"); + static const std::string n("no"); + return t ? y : n; + } + + //! True/false from bool + inline const std::string &boolTotrueFalse(bool t) + { + static const std::string tr("true"); + static const std::string fa("false"); + return t ? tr : fa; + } + //! Trim whitespace from the beginning and end, and replace sequences of whitespace with single space characters inline std::string simplifyWhitespace(const std::string &s) {