Add feedback when .wallop message is sent

This does the following:
- Opens a message-tab called "SUP" when a .wallop message is sent.
- Throws a validation error if another message is directly send into this "SUP" channel as another .wallop should be used.
This commit is contained in:
Lars Toenning
2020-07-26 11:57:59 +02:00
parent c4202d73f5
commit f987b81e6d
6 changed files with 33 additions and 0 deletions

View File

@@ -145,6 +145,12 @@ namespace BlackMisc
m_callsign = "BROADCAST";
}
void CCallsign::markAsWallopCallsign()
{
m_callsignAsSet = "SUP";
m_callsign = "SUP";
}
bool CCallsign::isMaybeCopilotCallsign(const CCallsign &pilotCallsign) const
{
return m_callsign.startsWith(pilotCallsign.asString()) &&

View File

@@ -86,6 +86,9 @@ namespace BlackMisc
//! \remark hack, workaround for VATSIM using "*" as callsign for text messages
void markAsBroadcastCallsign();
//! Set a human readable name as "wallop-channel" callsign
void markAsWallopCallsign();
//! Returns true if this is a co-pilot callsign of pilot. The logic is that the callsign is the same as the pilot one
//! but with a single character as suffix.
//! e.g Pilot logged in as DLH123, observer logged in as DLH123A

View File

@@ -208,6 +208,12 @@ namespace BlackMisc
return cs.isBroadcastCallsign();
}
bool CTextMessage::isWallopMessage() const
{
const CCallsign cs = this->getRecipientCallsign();
return cs.getStringAsSet() == "*S";
}
QString CTextMessage::asString(bool withSender, bool withRecipient, const QString &separator) const
{
QString s(this->getFormattedUtcTimestampHms());

View File

@@ -117,6 +117,9 @@ namespace BlackMisc
//! Is this a broadcast message
bool isBroadcastMessage() const;
//! Is this a message send via .wallop
bool isWallopMessage() 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?