From d25eac66b1880a116fd17dcef43c6051e1ace935 Mon Sep 17 00:00:00 2001 From: Mathew Sutcliffe Date: Mon, 18 Aug 2014 20:36:36 +0100 Subject: [PATCH] refs #283 Dedicated displayTextMessage for text messages instead of using displayStatusMessage for both. The simulator can use this to display text messages in a different colour, for example. --- src/blackcore/context_simulator_impl.cpp | 2 +- src/blackcore/simulator.h | 4 ++++ src/plugins/simulator/fs9/simulator_fs9.cpp | 5 +++++ src/plugins/simulator/fs9/simulator_fs9.h | 3 +++ src/plugins/simulator/fsx/simulator_fsx.cpp | 5 +++++ src/plugins/simulator/fsx/simulator_fsx.h | 3 +++ src/plugins/simulator/xplane/simulator_xplane.cpp | 7 +++++++ src/plugins/simulator/xplane/simulator_xplane.h | 3 +++ 8 files changed, 31 insertions(+), 1 deletion(-) diff --git a/src/blackcore/context_simulator_impl.cpp b/src/blackcore/context_simulator_impl.cpp index 8a30abaf4..906257128 100644 --- a/src/blackcore/context_simulator_impl.cpp +++ b/src/blackcore/context_simulator_impl.cpp @@ -299,7 +299,7 @@ namespace BlackCore if (!this->m_simulator) return; foreach(CTextMessage tm, textMessages) { - this->m_simulator->displayStatusMessage(tm.asStatusMessage(true, true)); + this->m_simulator->displayTextMessage(tm); } } diff --git a/src/blackcore/simulator.h b/src/blackcore/simulator.h index 8492bc192..896499756 100644 --- a/src/blackcore/simulator.h +++ b/src/blackcore/simulator.h @@ -11,6 +11,7 @@ #include "blackmisc/avaircraft.h" #include "blackmisc/avairportlist.h" #include "blackmisc/nwaircraftmodel.h" +#include "blackmisc/nwtextmessage.h" #include namespace BlackCore @@ -77,6 +78,9 @@ namespace BlackCore //! Display a status message in the simulator virtual void displayStatusMessage(const BlackMisc::CStatusMessage &message) const = 0; + //! Display a text message + virtual void displayTextMessage(const BlackMisc::Network::CTextMessage &message) const = 0; + //! Aircraft Model virtual BlackMisc::Network::CAircraftModel getAircraftModel() const = 0; diff --git a/src/plugins/simulator/fs9/simulator_fs9.cpp b/src/plugins/simulator/fs9/simulator_fs9.cpp index 046e34716..f330458e8 100644 --- a/src/plugins/simulator/fs9/simulator_fs9.cpp +++ b/src/plugins/simulator/fs9/simulator_fs9.cpp @@ -217,6 +217,11 @@ namespace BlackSimPlugin QMetaObject::invokeMethod(m_fs9Host, "sendTextMessage", Q_ARG(QString, message.toQString())); } + void CSimulatorFs9::displayTextMessage(const BlackMisc::Network::CTextMessage &message) const + { + this->displayStatusMessage(message.asStatusMessage(true, true)); + } + CAirportList CSimulatorFs9::getAirportsInRange() const { return this->m_airportsInRange; diff --git a/src/plugins/simulator/fs9/simulator_fs9.h b/src/plugins/simulator/fs9/simulator_fs9.h index 18fcb4021..382288038 100644 --- a/src/plugins/simulator/fs9/simulator_fs9.h +++ b/src/plugins/simulator/fs9/simulator_fs9.h @@ -93,6 +93,9 @@ namespace BlackSimPlugin //! \copydoc ISimulator::displayStatusMessage() virtual void displayStatusMessage(const BlackMisc::CStatusMessage &message) const override; + //! \copydoc ISimulator::displayTextMessage() + virtual void displayTextMessage(const BlackMisc::Network::CTextMessage &message) const override; + //! \copydoc ISimulator::getAircraftModel() virtual BlackMisc::Network::CAircraftModel getAircraftModel() const override { return m_aircraftModel; } diff --git a/src/plugins/simulator/fsx/simulator_fsx.cpp b/src/plugins/simulator/fsx/simulator_fsx.cpp index 8e128c141..36c7a8694 100644 --- a/src/plugins/simulator/fsx/simulator_fsx.cpp +++ b/src/plugins/simulator/fsx/simulator_fsx.cpp @@ -279,6 +279,11 @@ namespace BlackSimPlugin Q_UNUSED(hr); } + void CSimulatorFsx::displayTextMessage(const BlackMisc::Network::CTextMessage &message) const + { + this->displayStatusMessage(message.asStatusMessage(true, true)); + } + CAirportList CSimulatorFsx::getAirportsInRange() const { return this->m_airportsInRange; diff --git a/src/plugins/simulator/fsx/simulator_fsx.h b/src/plugins/simulator/fsx/simulator_fsx.h index f50e11398..72aa1f8d5 100644 --- a/src/plugins/simulator/fsx/simulator_fsx.h +++ b/src/plugins/simulator/fsx/simulator_fsx.h @@ -127,6 +127,9 @@ namespace BlackSimPlugin //! \copydoc ISimulator::displayStatusMessage virtual void displayStatusMessage(const BlackMisc::CStatusMessage &message) const override; + //! \copydoc ISimulator::displayTextMessage() + virtual void displayTextMessage(const BlackMisc::Network::CTextMessage &message) const override; + //! \copydoc ISimulator::getAircraftModel() virtual BlackMisc::Network::CAircraftModel getAircraftModel() const override { return m_aircraftModel; } diff --git a/src/plugins/simulator/xplane/simulator_xplane.cpp b/src/plugins/simulator/xplane/simulator_xplane.cpp index 207a586ad..613644f2d 100644 --- a/src/plugins/simulator/xplane/simulator_xplane.cpp +++ b/src/plugins/simulator/xplane/simulator_xplane.cpp @@ -204,6 +204,13 @@ namespace BlackSimPlugin Q_UNUSED(message); } + void CSimulatorXPlane::displayTextMessage(const BlackMisc::Network::CTextMessage &message) const + { + if (! isConnected()) { return; } + // TODO + Q_UNUSED(message); + } + BlackMisc::Network::CAircraftModel CSimulatorXPlane::getAircraftModel() const { if (! isConnected()) { return {}; } diff --git a/src/plugins/simulator/xplane/simulator_xplane.h b/src/plugins/simulator/xplane/simulator_xplane.h index f94176f15..c0f72ff43 100644 --- a/src/plugins/simulator/xplane/simulator_xplane.h +++ b/src/plugins/simulator/xplane/simulator_xplane.h @@ -71,6 +71,9 @@ namespace BlackSimPlugin //! \copydoc BlackCore::ISimulator::displayStatusMessage virtual void displayStatusMessage(const BlackMisc::CStatusMessage &message) const override; + //! \copydoc ISimulator::displayTextMessage + virtual void displayTextMessage(const BlackMisc::Network::CTextMessage &message) const override; + //! \copydoc BlackCore::ISimulator::getAircraftModel virtual BlackMisc::Network::CAircraftModel getAircraftModel() const override;