diff --git a/src/blackmisc/setaudio.cpp b/src/blackmisc/setaudio.cpp index ec87c9339..35e47805b 100644 --- a/src/blackmisc/setaudio.cpp +++ b/src/blackmisc/setaudio.cpp @@ -1,4 +1,5 @@ #include "setaudio.h" +#include "logmessage.h" using namespace BlackSound; namespace BlackMisc @@ -160,11 +161,10 @@ namespace BlackMisc /* * Value */ - BlackMisc::CStatusMessageList CSettingsAudio::value(const QString &path, const QString &command, const CVariant &value, bool &changedFlag) + BlackMisc::CStatusMessage CSettingsAudio::value(const QString &path, const QString &command, const CVariant &value, bool &changedFlag) { // TODO: This needs to be refactored to a smarter way to delegate commands changedFlag = false; - CStatusMessageList msgs; if (path == CSettingsAudio::ValueNotificationFlag()) { if (command == CSettingUtilities::CmdSetTrue() || command == CSettingUtilities::CmdSetFalse()) @@ -173,10 +173,10 @@ namespace BlackMisc char value = (command == CSettingUtilities::CmdSetTrue()) ? '1' : '0' ; this->initNotificationFlags(); this->m_notificationFlags.replace(index, 1, value); - return msgs; + return {}; } } - return CSettingUtilities::wrongPathMessages(path); + return CLogMessage().error(CSettingUtilities::validationMessageCategory(), "wrong path: %1") << path; } } // namespace } // namespace diff --git a/src/blackmisc/setaudio.h b/src/blackmisc/setaudio.h index 123e26e4a..34e15ae07 100644 --- a/src/blackmisc/setaudio.h +++ b/src/blackmisc/setaudio.h @@ -58,7 +58,7 @@ namespace BlackMisc bool operator !=(const CSettingsAudio &other) const; //! \copydoc BlackCore::IContextSettings - virtual BlackMisc::CStatusMessageList value(const QString &path, const QString &command, const BlackMisc::CVariant &value, bool &changedFlag); + virtual BlackMisc::CStatusMessage value(const QString &path, const QString &command, const BlackMisc::CVariant &value, bool &changedFlag); //! \copydoc CValueObject::getValueHash virtual uint getValueHash() const override; diff --git a/src/blackmisc/setnetwork.cpp b/src/blackmisc/setnetwork.cpp index 72257de5f..82f3b674d 100644 --- a/src/blackmisc/setnetwork.cpp +++ b/src/blackmisc/setnetwork.cpp @@ -4,6 +4,7 @@ #include "blackmisc/statusmessagelist.h" #include "blackmisc/settingutilities.h" #include "blackmisc/variant.h" +#include "blackmisc/logmessage.h" using namespace BlackMisc::Network; @@ -156,11 +157,10 @@ namespace BlackMisc /* * Value */ - BlackMisc::CStatusMessageList CSettingsNetwork::value(const QString &path, const QString &command, const CVariant &value, bool &changedFlag) + BlackMisc::CStatusMessage CSettingsNetwork::value(const QString &path, const QString &command, const CVariant &value, bool &changedFlag) { // TODO: This needs to be refactored to a smarter way to delegate commands changedFlag = false; - CStatusMessageList msgs; if (path == CSettingsNetwork::ValueTrafficServers()) { const CServer server = value.value(); @@ -183,8 +183,7 @@ namespace BlackMisc changedFlag = this->m_trafficNetworkServers.contains(&CServer::getName, server.getName()); this->m_trafficNetworkServers.removeIf(&CServer::getName, server.getName()); } - msgs.push_back(CStatusMessage::getInfoMessage("Set current server", CStatusMessage::TypeSettings)); - return msgs; + return CLogMessage().info(CSettingUtilities::updateMessageCategory(), "Set current server"); } else if (path == CSettingsNetwork::ValueBookingServiceUrl()) { @@ -192,12 +191,11 @@ namespace BlackMisc { QString v = value.toString(); changedFlag = (v != this->m_bookingServiceUrl); - msgs.push_back(CSettingUtilities::valueChangedMessage(changedFlag, "booking URL")); this->m_bookingServiceUrl = v; - return msgs; + return CLogMessage().info(CSettingUtilities::updateMessageCategory(), "booking URL%1 changed") << (changedFlag ? "" : " not"); } } - return CSettingUtilities::wrongPathMessages(path); + return CLogMessage().error(CSettingUtilities::validationMessageCategory(), "wrong path: %1") << path; } } // namespace } // namespace diff --git a/src/blackmisc/setnetwork.h b/src/blackmisc/setnetwork.h index 00de1bfce..72a8aefcf 100644 --- a/src/blackmisc/setnetwork.h +++ b/src/blackmisc/setnetwork.h @@ -94,7 +94,7 @@ namespace BlackMisc bool operator !=(const CSettingsNetwork &other) const; //! \copydoc BlackCore::IContextSettings - virtual BlackMisc::CStatusMessageList value(const QString &path, const QString &command, const CVariant &value, bool &changedFlag); + virtual BlackMisc::CStatusMessage value(const QString &path, const QString &command, const CVariant &value, bool &changedFlag); //! \copydoc CValueObject::getValueHash virtual uint getValueHash() const override; diff --git a/src/blackmisc/settingutilities.h b/src/blackmisc/settingutilities.h index f1461830c..dbcc42ef5 100644 --- a/src/blackmisc/settingutilities.h +++ b/src/blackmisc/settingutilities.h @@ -26,6 +26,15 @@ namespace BlackMisc public: + //! Log message category for anything related to settings + static QString getMessageCategory() { return "swift.settings"; } + + //! Log message category for settings validation messages + static QString validationMessageCategory() { return "swift.settings.validation"; } + + //! Log message category for settings update messages + static QString updateMessageCategory() { return "swift.settings.update"; } + //! Command validate static const QString &CmdValidate() { diff --git a/src/blacksim/setsimulator.cpp b/src/blacksim/setsimulator.cpp index 134c77076..3a5d54e14 100644 --- a/src/blacksim/setsimulator.cpp +++ b/src/blacksim/setsimulator.cpp @@ -8,6 +8,7 @@ */ #include "setsimulator.h" +#include "blackmisc/logmessage.h" using namespace BlackMisc; using namespace BlackMisc::Settings; @@ -149,22 +150,20 @@ namespace BlackSim /* * Value */ - BlackMisc::CStatusMessageList CSettingsSimulator::value(const QString &path, const QString &command, const CVariant &value, bool &changedFlag) + BlackMisc::CStatusMessage CSettingsSimulator::value(const QString &path, const QString &command, const CVariant &value, bool &changedFlag) { // TODO: This needs to be refactored to a smarter way to delegate commands changedFlag = false; - CStatusMessageList msgs; if (path == CSettingsSimulator::ValueSelectedDriver()) { if (command == CSettingUtilities::CmdAdd() || command == CSettingUtilities::CmdUpdate()) { CSimulatorInfo v = value.value(); changedFlag = (v != this->m_selectedPlugin); - msgs.push_back(CSettingUtilities::valueChangedMessage(changedFlag, "selected driver")); this->m_selectedPlugin = v; - return msgs; + return CLogMessage().info(CSettingUtilities::updateMessageCategory(), "selected driver%1 changed") << (changedFlag ? "" : " not"); } - return CSettingUtilities::wrongCommandMessages(command); + return CLogMessage().error(CSettingUtilities::validationMessageCategory(), "wrong command: %1") << command; } else if (path == CSettingsSimulator::ValueSyncTime()) { @@ -172,11 +171,10 @@ namespace BlackSim { bool v = value.value(); changedFlag = (v != this->m_timeSync); - msgs.push_back(CSettingUtilities::valueChangedMessage(changedFlag, "time synchronization")); this->m_timeSync = v; - return msgs; + return CLogMessage().info(CSettingUtilities::updateMessageCategory(), "time synchronization%1 changed") << (changedFlag ? "" : " not"); } - return CSettingUtilities::wrongCommandMessages(command); + return CLogMessage().error(CSettingUtilities::validationMessageCategory(), "wrong command: %1") << command; } else if (path == CSettingsSimulator::ValueSyncTimeOffset()) { @@ -184,15 +182,14 @@ namespace BlackSim { CTime v = value.value(); changedFlag = (v != this->m_timeSyncOffset); - msgs.push_back(CSettingUtilities::valueChangedMessage(changedFlag, "time synchronization offset")); this->m_timeSyncOffset = v; - return msgs; + return CLogMessage().info(CSettingUtilities::updateMessageCategory(), "time synchronization offset%1 changed") << (changedFlag ? "" : " not"); } - return CSettingUtilities::wrongCommandMessages(command); + return CLogMessage().error(CSettingUtilities::validationMessageCategory(), "wrong command: %1") << command; } else { - return CSettingUtilities::wrongPathMessages(path); + return CLogMessage().error(CSettingUtilities::validationMessageCategory(), "wrong path: %1") << path; } } } // namespace diff --git a/src/blacksim/setsimulator.h b/src/blacksim/setsimulator.h index 07ebc44e4..5e2913280 100644 --- a/src/blacksim/setsimulator.h +++ b/src/blacksim/setsimulator.h @@ -81,7 +81,7 @@ namespace BlackSim void initDefaultValues(); //! \copydoc BlackCore::IContextSettings - virtual BlackMisc::CStatusMessageList value(const QString &path, const QString &command, const BlackMisc::CVariant &value, bool &changedFlag); + virtual BlackMisc::CStatusMessage value(const QString &path, const QString &command, const BlackMisc::CVariant &value, bool &changedFlag); //! \copydoc CValueObject::getValueHash virtual uint getValueHash() const override; diff --git a/src/plugins/simulator/fsx/simulator_fsx.cpp b/src/plugins/simulator/fsx/simulator_fsx.cpp index c26c75a8b..30ae33e63 100644 --- a/src/plugins/simulator/fsx/simulator_fsx.cpp +++ b/src/plugins/simulator/fsx/simulator_fsx.cpp @@ -11,6 +11,7 @@ #include "blacksim/simulatorinfo.h" #include "blackmisc/project.h" #include "blackmisc/avairportlist.h" +#include "blackmisc/logmessage.h" #include #include @@ -550,8 +551,7 @@ namespace BlackSimPlugin } m_syncDeferredCounter = 5; // allow some time to sync - QString msg = QString("Synchronized time to UTC: %1").arg(myTime.toString()); - this->sendStatusMessage(CStatusMessage::getInfoMessage(msg, CStatusMessage::TypeSimulator)); + CLogMessage().info(this, "Synchronized time to UTC: %1") << myTime.toString(); } } } diff --git a/src/plugins/simulator/fsx/simulator_fsx_simconnectproc.cpp b/src/plugins/simulator/fsx/simulator_fsx_simconnectproc.cpp index 5f2ee5fb1..3ef9e3d7d 100644 --- a/src/plugins/simulator/fsx/simulator_fsx_simconnectproc.cpp +++ b/src/plugins/simulator/fsx/simulator_fsx_simconnectproc.cpp @@ -11,6 +11,7 @@ #include "blacksim/simulatorinfo.h" #include "blackmisc/project.h" #include "blackmisc/avairportlist.h" +#include "blackmisc/logmessage.h" using namespace BlackMisc; using namespace BlackMisc::Aviation; @@ -37,7 +38,7 @@ namespace BlackSimPlugin .arg(event->szApplicationName) .arg(event->dwApplicationVersionMajor).arg(event->dwApplicationVersionMinor).arg(event->dwApplicationBuildMajor).arg(event->dwApplicationBuildMinor) .arg(event->dwSimConnectVersionMajor).arg(event->dwSimConnectVersionMinor).arg(event->dwSimConnectBuildMajor).arg(event->dwSimConnectBuildMinor); - simulatorFsx->displayStatusMessage(CStatusMessage::getInfoMessage(CProject::systemNameAndVersion())); + CLogMessage().info(CSimulatorFsx::getMessageCategory(), CProject::systemNameAndVersion()); break; } case SIMCONNECT_RECV_ID_EXCEPTION: diff --git a/src/plugins/simulator/xplane/simulator_xplane.cpp b/src/plugins/simulator/xplane/simulator_xplane.cpp index 392ce1eca..11872d19f 100644 --- a/src/plugins/simulator/xplane/simulator_xplane.cpp +++ b/src/plugins/simulator/xplane/simulator_xplane.cpp @@ -6,6 +6,7 @@ #include "simulator_xplane.h" #include "xbus_service_proxy.h" #include "xbus_traffic_proxy.h" +#include "blackmisc/logmessage.h" #include #include @@ -254,7 +255,7 @@ namespace BlackSimPlugin { if (enable) { - emit displayStatusMessage(CStatusMessage::getWarningMessage("X-Plane already provides real time synchronization", CStatusMessage::TypeSimulator)); + CLogMessage().warning(this, "X-Plane already provides real time synchronization"); } }