mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-06 01:45:38 +08:00
Ref T129, some more utility functions for aviation value objects
* removed static variables from SELCAL * more finder functions for airline ICAO list * check for IATA code * unify callsign now public
This commit is contained in:
committed by
Mathew Sutcliffe
parent
686cb03170
commit
3fb2f88032
@@ -317,13 +317,19 @@ namespace BlackMisc
|
||||
|
||||
bool CAirlineIcaoCode::isValidAirlineDesignator(const QString &airline)
|
||||
{
|
||||
// allow 2 chars for IATA
|
||||
// allow 2 chars for special codes like "VV"
|
||||
if (airline.length() < 2 || airline.length() > 5) { return false; }
|
||||
const auto chars = makeRange(airline.begin(), airline.end());
|
||||
if (chars.containsBy([](QChar c) { return !c.isUpper() && !c.isDigit(); })) { return false; }
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CAirlineIcaoCode::isValidIataCode(const QString &iataCode)
|
||||
{
|
||||
if (iataCode.length() != 2) { return false; }
|
||||
return isValidAirlineDesignator(iataCode); // allow some chars as in IACO
|
||||
}
|
||||
|
||||
QSet<QString> CAirlineIcaoCode::specialValidDesignators()
|
||||
{
|
||||
static const QSet<QString> valid({ "VV", "VM"});
|
||||
|
||||
Reference in New Issue
Block a user