Completer sort order and ICAO code string building

This commit is contained in:
Klaus Basan
2018-08-26 00:45:44 +02:00
parent 3ec3bb8e15
commit 09e8b3ffcf
4 changed files with 23 additions and 22 deletions

View File

@@ -177,12 +177,13 @@ namespace BlackGui
const QStringList &CDbAircraftIcaoSelectorComponent::completerStrings()
{
static const QStringList empty;
if (!sGui || sGui->isShuttingDown() || !sGui->getWebDataServices()) { return empty; }
const int c = sGui->getWebDataServices()->getAircraftIcaoCodesCount();
if (c != m_completerStrings.size())
{
CAircraftIcaoCodeList icaos(sGui->getWebDataServices()->getAircraftIcaoCodes());
icaos.removeInvalidCombinedCodes();
icaos.sortByDesignatorManufacturerAndRank();
m_completerStrings = icaos.toCompleterStrings(true, true, true);
}
return m_completerStrings;
@@ -190,7 +191,7 @@ namespace BlackGui
void CDbAircraftIcaoSelectorComponent::onCodesRead(CEntityFlags::Entity entity, CEntityFlags::ReadState readState, int count)
{
if (!sGui || !sGui->hasWebDataServices()) { return; }
if (!sGui || sGui->isShuttingDown() || !sGui->hasWebDataServices()) { return; }
if (entity.testFlag(CEntityFlags::AircraftIcaoEntity) && CEntityFlags::isFinishedReadState(readState))
{
if (count > 0)