diff --git a/src/blackgui/models/simulatedaircraftlistmodel.cpp b/src/blackgui/models/simulatedaircraftlistmodel.cpp index 66678ebd8..0f3438ecf 100644 --- a/src/blackgui/models/simulatedaircraftlistmodel.cpp +++ b/src/blackgui/models/simulatedaircraftlistmodel.cpp @@ -52,58 +52,58 @@ namespace BlackGui void CSimulatedAircraftListModel::setAircraftMode(AircraftMode mode) { - if (this->m_mode == mode) { return; } - this->m_mode = mode; - this->m_columns.clear(); + if (m_mode == mode) { return; } + m_mode = mode; + m_columns.clear(); switch (mode) { case NotSet: case NetworkMode: { - this->m_columns.addColumn(CColumn::standardValueObject("cs.", "callsign", CSimulatedAircraft::IndexCallsign, CCallsign::IndexCallsignString)); - this->m_columns.addColumn(CColumn::standardString("realname", "pilot's real name", { CSimulatedAircraft::IndexPilot, CUser::IndexRealName })); - this->m_columns.addColumn(CColumn("dist.", "distance", CSimulatedAircraft::IndexRelativeDistance, new CAirspaceDistanceFormatter())); - this->m_columns.addColumn(CColumn("altitude", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexAltitude }, new CAltitudeFormatter())); - this->m_columns.addColumn(CColumn("gs.", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexGroundSpeed }, new CSpeedKtsFormatter())); - this->m_columns.addColumn(CColumn::standardString("icao", "icao and livery info", { CSimulatedAircraft::IndexCombinedIcaoLiveryStringNetworkModel})); + m_columns.addColumn(CColumn::standardValueObject("cs.", "callsign", CSimulatedAircraft::IndexCallsign, CCallsign::IndexCallsignString)); + m_columns.addColumn(CColumn::standardString("realname", "pilot's real name", { CSimulatedAircraft::IndexPilot, CUser::IndexRealName })); + m_columns.addColumn(CColumn("dist.", "distance", CSimulatedAircraft::IndexRelativeDistance, new CAirspaceDistanceFormatter())); + m_columns.addColumn(CColumn("altitude", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexAltitude }, new CAltitudeFormatter())); + m_columns.addColumn(CColumn("gs.", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexGroundSpeed }, new CSpeedKtsFormatter())); + m_columns.addColumn(CColumn::standardString("icao", "icao and livery info", { CSimulatedAircraft::IndexCombinedIcaoLiveryStringNetworkModel})); // icon column for airline CColumn col("airline", { CSimulatedAircraft::IndexNetworkModel, CAircraftModel::IndexLivery, CLivery::IndexAirlineIcaoCode, CAirlineIcaoCode::IndexIcon }); col.setSortPropertyIndex({ CSimulatedAircraft::IndexNetworkModel, CAircraftModel::IndexLivery, CLivery::IndexAirlineIcaoCode, CAirlineIcaoCode::IndexAirlineDesignator}); - this->m_columns.addColumn(col); + m_columns.addColumn(col); - this->m_columns.addColumn(CColumn("frequency", { CSimulatedAircraft::IndexCom1System, CComSystem::IndexActiveFrequency }, new CComFrequencyFormatter())); - this->m_columns.addColumn(CColumn::standardString("transponder", { CSimulatedAircraft::IndexTransponder, CTransponder::IndexTransponderCodeAndModeFormatted })); - this->m_columns.addColumn(CColumn("latitude", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexLatitude }, new CLatLonFormatter())); - this->m_columns.addColumn(CColumn("longitude", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexLongitude }, new CLatLonFormatter())); + m_columns.addColumn(CColumn("frequency", { CSimulatedAircraft::IndexCom1System, CComSystem::IndexActiveFrequency }, new CComFrequencyFormatter())); + m_columns.addColumn(CColumn::standardString("transponder", { CSimulatedAircraft::IndexTransponder, CTransponder::IndexTransponderCodeAndModeFormatted })); + m_columns.addColumn(CColumn("latitude", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexLatitude }, new CLatLonFormatter())); + m_columns.addColumn(CColumn("longitude", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexLongitude }, new CLatLonFormatter())); // default sort order this->setSortColumnByPropertyIndex(CSimulatedAircraft::IndexRelativeDistance); - this->m_sortOrder = Qt::AscendingOrder; + m_sortOrder = Qt::AscendingOrder; } break; case RenderedMode: { - this->m_columns.addColumn(CColumn("e.", "enabled", CSimulatedAircraft::IndexEnabled, new CBoolIconFormatter("enabled", "disabled"), true)); - this->m_columns.addColumn(CColumn("r.", "rendered", CSimulatedAircraft::IndexRendered, new CBoolIconFormatter("rendered", "skipped"), true)); - this->m_columns.addColumn(CColumn::standardValueObject("cs.", "callsign", { CSimulatedAircraft::IndexCallsign, CCallsign::IndexCallsignString })); - this->m_columns.addColumn(CColumn("dist.", "distance", CSimulatedAircraft::IndexRelativeDistance, new CAirspaceDistanceFormatter())); - this->m_columns.addColumn(CColumn("altitude", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexAltitude }, new CAltitudeFormatter())); - this->m_columns.addColumn(CColumn("gs.", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexGroundSpeed }, new CSpeedKtsFormatter())); - this->m_columns.addColumn(CColumn("p.", "parts", CSimulatedAircraft::IndexPartsSynchronized, new CBoolIconFormatter("parts", "no parts"), true)); - this->m_columns.addColumn(CColumn("fp.", "fast position updates", CSimulatedAircraft::IndexFastPositionUpdates, new CBoolIconFormatter("enabled", "disabled"), true)); - this->m_columns.addColumn(CColumn::standardString("realname", "pilot's real name", { CSimulatedAircraft::IndexPilot, CUser::IndexRealName })); - this->m_columns.addColumn(CColumn::standardString("icao", CSimulatedAircraft::IndexCombinedIcaoLiveryString)); - this->m_columns.addColumn(CColumn::standardString("model", { CSimulatedAircraft::IndexModel, CAircraftModel::IndexModelString})); - this->m_columns.addColumn(CColumn::standardString("type", { CSimulatedAircraft::IndexModel, CAircraftModel::IndexModelTypeAsString})); - this->m_columns.addColumn(CColumn::standardString("desc.", "description", { CSimulatedAircraft::IndexModel, CAircraftModel::IndexDescription})); - this->m_columns.addColumn(CColumn::standardString("aircraft", "rendered vs. network aircraft ICAO", CSimulatedAircraft::IndexNetworkModelAircraftIcaoDifference)); - this->m_columns.addColumn(CColumn::standardString("livery", "rendered vs. network livery", CSimulatedAircraft::IndexNetworkModelLiveryDifference)); + m_columns.addColumn(CColumn("e.", "enabled", CSimulatedAircraft::IndexEnabled, new CBoolIconFormatter("enabled", "disabled"), true)); + m_columns.addColumn(CColumn("r.", "rendered", CSimulatedAircraft::IndexRendered, new CBoolIconFormatter("rendered", "skipped"), true)); + m_columns.addColumn(CColumn::standardValueObject("cs.", "callsign", { CSimulatedAircraft::IndexCallsign, CCallsign::IndexCallsignString })); + m_columns.addColumn(CColumn("dist.", "distance", CSimulatedAircraft::IndexRelativeDistance, new CAirspaceDistanceFormatter())); + m_columns.addColumn(CColumn("altitude", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexAltitude }, new CAltitudeFormatter())); + m_columns.addColumn(CColumn("gs.", { CSimulatedAircraft::IndexSituation, CAircraftSituation::IndexGroundSpeed }, new CSpeedKtsFormatter())); + m_columns.addColumn(CColumn("p.", "parts", CSimulatedAircraft::IndexPartsSynchronized, new CBoolIconFormatter("parts", "no parts"), true)); + m_columns.addColumn(CColumn("fp.", "fast position updates", CSimulatedAircraft::IndexFastPositionUpdates, new CBoolIconFormatter("enabled", "disabled"), true)); + m_columns.addColumn(CColumn::standardString("realname", "pilot's real name", { CSimulatedAircraft::IndexPilot, CUser::IndexRealName })); + m_columns.addColumn(CColumn::standardString("icao", CSimulatedAircraft::IndexCombinedIcaoLiveryString)); + m_columns.addColumn(CColumn::standardString("model", { CSimulatedAircraft::IndexModel, CAircraftModel::IndexModelString})); + m_columns.addColumn(CColumn::standardString("type", { CSimulatedAircraft::IndexModel, CAircraftModel::IndexModelTypeAsString})); + m_columns.addColumn(CColumn::standardString("desc.", "description", { CSimulatedAircraft::IndexModel, CAircraftModel::IndexDescription})); + m_columns.addColumn(CColumn::standardString("aircraft", "rendered vs. network aircraft ICAO", CSimulatedAircraft::IndexNetworkModelAircraftIcaoDifference)); + m_columns.addColumn(CColumn::standardString("livery", "rendered vs. network livery", CSimulatedAircraft::IndexNetworkModelLiveryDifference)); // default sort order this->setSortColumnByPropertyIndex(CSimulatedAircraft::IndexRelativeDistance); - this->m_sortOrder = Qt::AscendingOrder; + m_sortOrder = Qt::AscendingOrder; } break; diff --git a/src/blackgui/models/textmessagelistmodel.cpp b/src/blackgui/models/textmessagelistmodel.cpp index b454c242e..0aa07d906 100644 --- a/src/blackgui/models/textmessagelistmodel.cpp +++ b/src/blackgui/models/textmessagelistmodel.cpp @@ -41,9 +41,9 @@ namespace BlackGui void CTextMessageListModel::setTextMessageMode(CTextMessageListModel::TextMessageMode mode) { - if (this->m_textMessageMode == mode) return; - this->m_textMessageMode = mode; - this->m_columns.clear(); + if (m_textMessageMode == mode) return; + m_textMessageMode = mode; + m_columns.clear(); switch (mode) { case NotSet: @@ -51,27 +51,27 @@ namespace BlackGui { CColumn col = CColumn("type", CTextMessage::IndexIcon); col.setSortPropertyIndex({ CTextMessage::IndexSenderCallsign, CCallsign::IndexSuffix }); - this->m_columns.addColumn(col); - this->m_columns.addColumn(CColumn("time", "received", CTextMessage::IndexUtcTimestamp, new CDateTimeFormatter(CDateTimeFormatter::formatHms()))); - this->m_columns.addColumn(CColumn::standardString("from", { CTextMessage::IndexSenderCallsign, CCallsign::IndexCallsignString })); - this->m_columns.addColumn(CColumn::standardString("to", CTextMessage::IndexRecipientCallsignOrFrequency)); - this->m_columns.addColumn(CColumn::standardString("message", CTextMessage::IndexMessage)); + m_columns.addColumn(col); + m_columns.addColumn(CColumn("time", "received", CTextMessage::IndexUtcTimestamp, new CDateTimeFormatter(CDateTimeFormatter::formatHms()))); + m_columns.addColumn(CColumn::standardString("from", { CTextMessage::IndexSenderCallsign, CCallsign::IndexCallsignString })); + m_columns.addColumn(CColumn::standardString("to", CTextMessage::IndexRecipientCallsignOrFrequency)); + m_columns.addColumn(CColumn::standardString("message", CTextMessage::IndexMessage)); // default sort order this->setSortColumnByPropertyIndex(CTextMessage::IndexUtcTimestamp); - this->m_sortOrder = Qt::DescendingOrder; + m_sortOrder = Qt::DescendingOrder; } break; case From: { - this->m_columns.addColumn(CColumn("time", "received", CTextMessage::IndexUtcTimestamp, new CDateTimeFormatter(CDateTimeFormatter::formatHms()))); - this->m_columns.addColumn(CColumn::standardString("from", { CTextMessage::IndexSenderCallsign, CCallsign::IndexCallsignString })); - this->m_columns.addColumn(CColumn::standardString("message", CTextMessage::IndexMessage)); + m_columns.addColumn(CColumn("time", "received", CTextMessage::IndexUtcTimestamp, new CDateTimeFormatter(CDateTimeFormatter::formatHms()))); + m_columns.addColumn(CColumn::standardString("from", { CTextMessage::IndexSenderCallsign, CCallsign::IndexCallsignString })); + m_columns.addColumn(CColumn::standardString("message", CTextMessage::IndexMessage)); // default sort order this->setSortColumnByPropertyIndex(CTextMessage::IndexUtcTimestamp); - this->m_sortOrder = Qt::DescendingOrder; + m_sortOrder = Qt::DescendingOrder; } break; diff --git a/src/blackgui/models/textmessagelistmodel.h b/src/blackgui/models/textmessagelistmodel.h index 944fa36e1..704d6eaec 100644 --- a/src/blackgui/models/textmessagelistmodel.h +++ b/src/blackgui/models/textmessagelistmodel.h @@ -19,7 +19,6 @@ class QObject; namespace BlackMisc { namespace Network { class CTextMessage; } } - namespace BlackGui { namespace Models @@ -47,7 +46,7 @@ namespace BlackGui void setTextMessageMode(TextMessageMode mode); //! Mode - TextMessageMode getTextMessageMode() const { return this->m_textMessageMode; } + TextMessageMode getTextMessageMode() const { return m_textMessageMode; } private: TextMessageMode m_textMessageMode = NotSet; diff --git a/src/blackgui/textmessagetextedit.h b/src/blackgui/textmessagetextedit.h index 6e6b5c4ea..69a1afa75 100644 --- a/src/blackgui/textmessagetextedit.h +++ b/src/blackgui/textmessagetextedit.h @@ -36,7 +36,7 @@ namespace BlackGui CTextMessageTextEdit(QWidget *parent = nullptr); //! Destructor - ~CTextMessageTextEdit(); + virtual ~CTextMessageTextEdit(); //! Insert a message void insertTextMessage(const BlackMisc::Network::CTextMessage &textMessage, int maxMessages = -1); diff --git a/src/blackmisc/network/textmessage.cpp b/src/blackmisc/network/textmessage.cpp index cbd7b7406..d1a1a7dd6 100644 --- a/src/blackmisc/network/textmessage.cpp +++ b/src/blackmisc/network/textmessage.cpp @@ -25,6 +25,15 @@ namespace BlackMisc { namespace Network { + CTextMessage::CTextMessage(const QString &message, const CFrequency &frequency, const CCallsign &senderCallsign) + : m_message(message), m_senderCallsign(senderCallsign), m_frequency(frequency) + { + m_frequency.switchUnit(PhysicalQuantities::CFrequencyUnit::MHz()); + } + + CTextMessage::CTextMessage(const QString &message, const CCallsign &senderCallsign, const CCallsign &recipientCallsign) + : m_message(message), m_senderCallsign(senderCallsign), m_recipientCallsign(recipientCallsign), m_frequency(0, nullptr) + {} QString CTextMessage::convertToQString(bool i18n) const { @@ -51,11 +60,6 @@ namespace BlackMisc return m_senderCallsign.isSupervisorCallsign(); } - bool CTextMessage::wasSent() const - { - return m_wasSent; - } - void CTextMessage::markAsSent() { m_wasSent = true; @@ -152,7 +156,6 @@ namespace BlackMisc if (!s.isEmpty()) s.append(separator); s.append(m_frequency.valueRoundedWithUnit(3, true)); } - } } // to @@ -164,7 +167,7 @@ namespace BlackMisc CStatusMessage CTextMessage::asStatusMessage(bool withSender, bool withRecipient, const QString &separator) const { - QString m = this->asString(withSender, withRecipient, separator); + const QString m = this->asString(withSender, withRecipient, separator); return { this, CStatusMessage::SeverityInfo, m }; } diff --git a/src/blackmisc/network/textmessage.h b/src/blackmisc/network/textmessage.h index f27b66b5e..5bb32b878 100644 --- a/src/blackmisc/network/textmessage.h +++ b/src/blackmisc/network/textmessage.h @@ -53,15 +53,10 @@ namespace BlackMisc CTextMessage() {} //! Constructor, radio message - CTextMessage(const QString &message, const PhysicalQuantities::CFrequency &frequency, const Aviation::CCallsign &senderCallsign = {}) - : m_message(message), m_senderCallsign(senderCallsign), m_frequency(frequency) - { - m_frequency.switchUnit(PhysicalQuantities::CFrequencyUnit::MHz()); - } + CTextMessage(const QString &message, const PhysicalQuantities::CFrequency &frequency, const Aviation::CCallsign &senderCallsign = {}); //! Constructor, private message - CTextMessage(const QString &message, const Aviation::CCallsign &senderCallsign, const Aviation::CCallsign &recipientCallsign = {}) - : m_message(message), m_senderCallsign(senderCallsign), m_recipientCallsign(recipientCallsign), m_frequency(0, nullptr) {} + CTextMessage(const QString &message, const Aviation::CCallsign &senderCallsign, const Aviation::CCallsign &recipientCallsign = {}); //! Get callsign (from) const Aviation::CCallsign &getSenderCallsign() const { return m_senderCallsign; } @@ -111,33 +106,24 @@ namespace BlackMisc //! Initial message of server? bool isServerMessage() const; - /*! - * Whole message as formatted string. - * Used to display message in a console window. - * \param withSender include sender information in string? - * \param withRecipient include recipient information in string? - * \param separator values separated by given value - * \return - */ + //! Whole message as formatted string. Used to display message in a console window. + //! \param withSender include sender information in string? + //! \param withRecipient include recipient information in string? + //! \param separator values separated by given value QString asString(bool withSender, bool withRecipient, const QString &separator = ", ") const; - /*! - * Whole message as BlackMisc::CStatusMessage. - * Used to display message in logs, or any other situation where a CStatusMessage is required. - * \param withSender include sender information in string? - * \param withRecipient include recipient information in string? - * \param separator values separated by given value - * \return - */ + //! Whole message as BlackMisc::CStatusMessage. + //! Used to display message in logs, or any other situation where a CStatusMessage is required. + //! \param withSender include sender information in string? + //! \param withRecipient include recipient information in string? + //! \param separator values separated by given value CStatusMessage asStatusMessage(bool withSender, bool withRecipient, const QString &separator = ", ") const; //! Toggle sender receiver, can be used to ping my own message void toggleSenderRecipient(); - /*! - * Is this a text message encapsulating a SELCAL - * \see http://forums.vatsim.net/viewtopic.php?f=8&t=63467 - */ + //! Is this a text message encapsulating a SELCAL + //! \see http://forums.vatsim.net/viewtopic.php?f=8&t=63467 bool isSelcalMessage() const; //! Is this a text message encapsulating a SELCAL for given code? @@ -147,7 +133,7 @@ namespace BlackMisc bool isSupervisorMessage() const; //! Was sent? - bool wasSent() const; + bool wasSent() const { return m_wasSent; } //! Mark as sent //! \remark also sets current timestamp if there is no valid timestamp