Ref T577, added dep. icons support (for ATC suffix) and changed string comparison to QStringView as discussed with MS

This commit is contained in:
Klaus Basan
2019-04-10 18:51:37 +02:00
committed by Mat Sutcliffe
parent 79fc8683f9
commit dd37c7b876
4 changed files with 27 additions and 13 deletions

View File

@@ -86,18 +86,19 @@ namespace BlackMisc
{
if (suffix.length() < 3) { return CIcon::iconByIndex(CIcons::NetworkRoleUnknown); }
const QString sfx = suffix.toUpper();
if ("APP" == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleApproach); }
if ("GND" == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleGround); }
if ("TWR" == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleTower); }
if ("DEL" == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleDelivery); }
if ("CTR" == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleCenter); }
if ("SUP" == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleSup); }
if ("OBS" == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleObs); }
if ("INS" == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleMnt); }
if ("FSS" == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleFss); }
if ("ATIS" == sfx) { return CIcon::iconByIndex(CIcons::AviationAtis); }
if ("EXAM" == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleMnt); }
if ("VATSIM" == sfx) { return CIcon::iconByIndex(CIcons::NetworkVatsimLogoWhite); }
if (QStringView(u"APP") == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleApproach); }
if (QStringView(u"DEP") == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleDeparture); }
if (QStringView(u"GND") == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleGround); }
if (QStringView(u"TWR") == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleTower); }
if (QStringView(u"DEL") == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleDelivery); }
if (QStringView(u"CTR") == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleCenter); }
if (QStringView(u"SUP") == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleSup); }
if (QStringView(u"OBS") == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleObs); }
if (QStringView(u"INS") == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleMnt); }
if (QStringView(u"FSS") == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleFss); }
if (QStringView(u"ATIS") == sfx) { return CIcon::iconByIndex(CIcons::AviationAtis); }
if (QStringView(u"EXAM") == sfx) { return CIcon::iconByIndex(CIcons::NetworkRoleMnt); }
if (QStringView(u"VATSIM") == sfx) { return CIcon::iconByIndex(CIcons::NetworkVatsimLogoWhite); }
return CIcon::iconByIndex(CIcons::NetworkRoleUnknown);
}

View File

@@ -79,6 +79,7 @@ namespace BlackMisc
CIcon(CIcons::NetworkRoleC3, "C3"),
CIcon(CIcons::NetworkRoleCenter, "ATC center"),
CIcon(CIcons::NetworkRoleDelivery, "ATC delivery"),
CIcon(CIcons::NetworkRoleDeparture, "ATC departure"),
CIcon(CIcons::NetworkRoleFss, "FSS"),
CIcon(CIcons::NetworkRoleGround, "ATC ground"),
CIcon(CIcons::NetworkRoleI1, "I1 (instructor)"),

View File

@@ -1010,6 +1010,13 @@ namespace BlackMisc
return pm;
}
const QPixmap &CIcons::roleDeparture()
{
// currently same icons as APP
static const QPixmap pm(QPixmap(":/own/icons/own/app.jpg").scaledToWidth(16, Qt::SmoothTransformation));
return pm;
}
const QPixmap &CIcons::roleFss()
{
return info16();
@@ -1165,13 +1172,14 @@ namespace BlackMisc
case NetworkCapabilityUnknown: return capabilityUnknown();
case NetworkCapabilityVoice: return capabilityVoice();
case NetworkCapabilityVoiceBackground: return capabilityVoiceBackground();
case NetworkCapabilityVoiceReceiveOnly: return capabilityVoiceReceiveOnly();
case NetworkCapabilityVoiceReceiveOnly: return capabilityVoiceReceiveOnly();
case NetworkCapabilityVoiceReceiveOnlyBackground: return capabilityVoiceReceiveOnlyBackground();
case NetworkRoleApproach: return roleApproach();
case NetworkRoleC1: return roleC1();
case NetworkRoleC3: return roleC3();
case NetworkRoleCenter: return roleCenter();
case NetworkRoleDelivery: return roleDelivery();
case NetworkRoleDeparture: return roleDeparture();
case NetworkRoleFss: return roleFss();
case NetworkRoleGround: return roleGround();
case NetworkRoleI1: return roleI1();

View File

@@ -74,6 +74,7 @@ namespace BlackMisc
NetworkRoleC3,
NetworkRoleCenter,
NetworkRoleDelivery,
NetworkRoleDeparture,
NetworkRoleFss,
NetworkRoleGround,
NetworkRoleI1,
@@ -692,6 +693,9 @@ namespace BlackMisc
//! Delivery
static const QPixmap &roleDelivery();
//! Departure
static const QPixmap &roleDeparture();
//! FSS (flight service staion)
static const QPixmap &roleFss();