Ref T226, completer improvements

* a location can home multiple airports
* use a combined name for that reason in completers
This commit is contained in:
Klaus Basan
2018-02-02 22:48:10 +01:00
parent d903a20f5e
commit 16b49cfa46
5 changed files with 54 additions and 32 deletions

View File

@@ -104,11 +104,26 @@ namespace BlackMisc
QStringList CAirportList::allLocations(bool sorted) const
{
QStringList locations;
QSet<QString> locations;
for (const CAirport &airport : *this)
{
if (airport.getLocation().isEmpty()) { continue; }
locations.push_back(airport.getLocation());
locations.insert(airport.getLocation());
}
QStringList locs = locations.toList();
if (sorted) { locs.sort(); }
return locs;
}
QStringList CAirportList::allLocationsPlusOptionalDescription(bool sorted) const
{
QStringList locations;
for (const CAirport &airport : *this)
{
const QString l = airport.getLocationPlusOptionalName();
if (l.isEmpty()) { continue; }
locations.push_back(l);
}
if (sorted) { locations.sort(); }
return locations;