From 8f216f510fb2f06df89610743dfb11a3baa5701e Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Wed, 27 Jan 2016 18:23:16 +0100 Subject: [PATCH] refs #576, improved filters * initially clear filters * fixed handling of simulator flags * rename field * changed order of * handling --- src/blackgui/filters/aircrafticaofilterbar.cpp | 7 +++++-- src/blackgui/filters/aircrafticaofilterbar.ui | 2 +- src/blackgui/filters/aircraftmodelfilterbar.cpp | 3 +++ src/blackgui/filters/airlineicaofilterbar.cpp | 3 +++ src/blackgui/filters/countryfilterbar.cpp | 3 +++ src/blackgui/filters/liveryfilterbar.cpp | 3 +++ src/blackgui/models/aircraftmodelfilter.cpp | 2 +- src/blackgui/models/modelfilter.cpp | 11 ++++++----- 8 files changed, 25 insertions(+), 9 deletions(-) diff --git a/src/blackgui/filters/aircrafticaofilterbar.cpp b/src/blackgui/filters/aircrafticaofilterbar.cpp index 231ef25a4..f13c71547 100644 --- a/src/blackgui/filters/aircrafticaofilterbar.cpp +++ b/src/blackgui/filters/aircrafticaofilterbar.cpp @@ -32,6 +32,9 @@ namespace BlackGui CUpperCaseValidator *ucv = new CUpperCaseValidator(this); this->ui->le_Designator->setValidator(ucv); this->ui->le_Manufacturer->setValidator(ucv); + + // reset form + this->clearForm(); } CAircraftIcaoFilterBar::~CAircraftIcaoFilterBar() @@ -44,7 +47,7 @@ namespace BlackGui this->ui->le_Designator->text(), this->ui->le_Manufacturer->text(), this->ui->le_Description->text(), - this->ui->combinedtype_Selector->getCombinedType() + this->ui->combinedType_Selector->getCombinedType() )); } @@ -82,7 +85,7 @@ namespace BlackGui ui->le_Designator->clear(); ui->le_Manufacturer->clear(); ui->le_Description->clear(); - ui->combinedtype_Selector->clear(); + ui->combinedType_Selector->clear(); } void CAircraftIcaoFilterBar::setProvider(BlackMisc::Network::IWebDataServicesProvider *webDataReaderProvider) diff --git a/src/blackgui/filters/aircrafticaofilterbar.ui b/src/blackgui/filters/aircrafticaofilterbar.ui index be0289197..d0f62b188 100644 --- a/src/blackgui/filters/aircrafticaofilterbar.ui +++ b/src/blackgui/filters/aircrafticaofilterbar.ui @@ -122,7 +122,7 @@ - + 0 diff --git a/src/blackgui/filters/aircraftmodelfilterbar.cpp b/src/blackgui/filters/aircraftmodelfilterbar.cpp index 46b94ec62..0b498e955 100644 --- a/src/blackgui/filters/aircraftmodelfilterbar.cpp +++ b/src/blackgui/filters/aircraftmodelfilterbar.cpp @@ -42,6 +42,9 @@ namespace BlackGui this->ui->le_AirlineIcao->setValidator(ucv); this->ui->le_ModelKey->setValidator(ucv); this->ui->le_AircraftManufacturer->setValidator(ucv); + + // reset form + this->clearForm(); } CAircraftModelFilterBar::~CAircraftModelFilterBar() diff --git a/src/blackgui/filters/airlineicaofilterbar.cpp b/src/blackgui/filters/airlineicaofilterbar.cpp index 3766e4210..4ae5887fc 100644 --- a/src/blackgui/filters/airlineicaofilterbar.cpp +++ b/src/blackgui/filters/airlineicaofilterbar.cpp @@ -32,6 +32,9 @@ namespace BlackGui connect(ui->country_Selector, &CDbCountrySelectorComponent::countryChanged, this, &CAirlineIcaoFilterBar::ps_CountryChanged); ui->le_Designator->setValidator(new CUpperCaseValidator(this)); + + // reset form + this->clearForm(); } CAirlineIcaoFilterBar::~CAirlineIcaoFilterBar() { } diff --git a/src/blackgui/filters/countryfilterbar.cpp b/src/blackgui/filters/countryfilterbar.cpp index 9f7503199..f6b07e327 100644 --- a/src/blackgui/filters/countryfilterbar.cpp +++ b/src/blackgui/filters/countryfilterbar.cpp @@ -31,6 +31,9 @@ namespace BlackGui CUpperCaseValidator *ucv = new CUpperCaseValidator(this); this->ui->le_IsoCode->setValidator(ucv); + + // reset form + this->clearForm(); } CCountryFilterBar::~CCountryFilterBar() diff --git a/src/blackgui/filters/liveryfilterbar.cpp b/src/blackgui/filters/liveryfilterbar.cpp index f7b551b74..11fa2222e 100644 --- a/src/blackgui/filters/liveryfilterbar.cpp +++ b/src/blackgui/filters/liveryfilterbar.cpp @@ -37,6 +37,9 @@ namespace BlackGui CUpperCaseValidator *ucv = new CUpperCaseValidator(this); ui->le_AirlineIcaoCode->setValidator(ucv); ui->le_LiveryCode->setValidator(ucv); + + // reset form + this->clearForm(); } CLiveryFilterBar::~CLiveryFilterBar() diff --git a/src/blackgui/models/aircraftmodelfilter.cpp b/src/blackgui/models/aircraftmodelfilter.cpp index d957b1d05..ac1f08ba6 100644 --- a/src/blackgui/models/aircraftmodelfilter.cpp +++ b/src/blackgui/models/aircraftmodelfilter.cpp @@ -95,7 +95,7 @@ namespace BlackGui this->m_airlineIcao.isEmpty() && this->m_airlineName.isEmpty() && this->m_liveryCode.isEmpty() && !this->m_distributor.hasValidDbKey() && - this->m_simulatorInfo.isNoSimulator() + (this->m_simulatorInfo.isNoSimulator() || this->m_simulatorInfo.isAllSimulators()) ); } diff --git a/src/blackgui/models/modelfilter.cpp b/src/blackgui/models/modelfilter.cpp index 5550ea92d..bd811a19e 100644 --- a/src/blackgui/models/modelfilter.cpp +++ b/src/blackgui/models/modelfilter.cpp @@ -38,17 +38,18 @@ namespace BlackGui return v.contains(filterNoWildcard, cs); } + // ends with + if (f.endsWith('*')) + { + return v.startsWith(filterNoWildcard, cs); + } + // starting with if (f.startsWith('*')) { return v.endsWith(filterNoWildcard, cs); } - if (f.endsWith('*')) - { - return v.startsWith(filterNoWildcard, cs); - } - // should never happen Q_ASSERT(false); return false;