Ref T441, model list utility functions

This commit is contained in:
Klaus Basan
2018-11-25 18:21:52 +01:00
parent 3edbd09732
commit 1f1fa6d7aa
2 changed files with 57 additions and 3 deletions

View File

@@ -121,21 +121,30 @@ namespace BlackMisc
//! Find by a given list of models by strings
CAircraftModelList findByModelStrings(const QStringList &modelStrings, Qt::CaseSensitivity sensitivity) const;
//! Find by a given list of models trings
//! Find by excluding given list of models strings
CAircraftModelList findByNotInModelStrings(const QStringList &modelStrings, Qt::CaseSensitivity sensitivity) const;
//! Find by model string
//! Find by ICAO designators
CAircraftModelList findByIcaoDesignators(const Aviation::CAircraftIcaoCode &aircraftIcaoCode, const Aviation::CAirlineIcaoCode &airlineIcaoCode) const;
//! Find by model string
//! Find by ICAO of aircraft and airline
CAircraftModelList findByAircraftAndAirline(const Aviation::CAircraftIcaoCode &aircraftIcaoCode, const Aviation::CAirlineIcaoCode &airlineIcaoCode) const;
//! Find by designator and livery code
CAircraftModelList findByAircraftDesignatorAndLiveryCombinedCode(const QString &aircraftDesignator, const QString &combinedCode) const;
//! Find by aircraft and livery
CAircraftModelList findByAircraftAndLivery(const Aviation::CAircraftIcaoCode &aircraftIcaoCode, const Aviation::CLivery &livery) const;
//! Find by livery code
CAircraftModelList findByLiveryCode(const Aviation::CLivery &livery) const;
//! Models with file name
CAircraftModelList findWithFileName() const;
//! All models from given distributors
CAircraftModelList findByDistributor(const CDistributor &distributor) const;
//! All models from given distributors
CAircraftModelList findByDistributors(const CDistributorList &distributors) const;
@@ -247,6 +256,18 @@ namespace BlackMisc
//! \return number of elements removed
int removeIfExcluded();
//! Remove by distributor
//! \return number of elements removed
int removeByDistributor(const CDistributor &distributor);
//! Remove if aircraft and livery
//! \return number of elements removed
int removeByAircraftAndLivery(const Aviation::CAircraftIcaoCode &aircraftIcao, const Aviation::CLivery &livery);
//! Remove if aircraft and airline
//! \return number of elements removed
int removeByAircraftAndAirline(const Aviation::CAircraftIcaoCode &aircraftIcao, const Aviation::CAirlineIcaoCode &airline);
//! Replace or add based on model string
//! \return element removed?
bool replaceOrAddModelWithString(const CAircraftModel &addOrReplaceModel, Qt::CaseSensitivity sensitivity);