7 #include <QIntValidator>
11 #include "ui_airlineicaofilterbar.h"
21 using namespace swift::misc::aviation;
27 CAirlineIcaoFilterBar::CAirlineIcaoFilterBar(QWidget *parent)
36 connect(ui->country_Selector, &CDbCountrySelectorComponent::countryChanged,
this,
37 &CAirlineIcaoFilterBar::ps_CountryChanged);
40 ui->le_AirlineId->setValidator(
new QIntValidator(ui->le_AirlineId));
50 return std::make_unique<CAirlineIcaoFilter>(
51 convertDbId(ui->le_AirlineId->text()), ui->le_Designator->text().trimmed(), ui->le_Name->text().trimmed(),
52 ui->country_Selector->isSet() ? ui->country_Selector->getCountry().getIsoCode() :
"",
53 ui->cb_RealAirline->isChecked(), ui->cb_VirtualAirline->isChecked());
66 ui->le_Name->setText(icao.
getName());
70 if (
filter) { ui->filter_Buttons->clickButton(CFilterBarButtons::Filter); }
75 ui->filter_Buttons->onRowCountChanged(count, withFilter);
78 void CAirlineIcaoFilterBar::ps_CountryChanged(
const CCountry &country)
80 if (country.
hasIsoCode()) { ui->filter_Buttons->clickButton(CFilterBarButtons::Filter); }
85 ui->le_AirlineId->clear();
86 ui->le_Designator->clear();
88 ui->country_Selector->clear();
89 ui->cb_RealAirline->setChecked(
true);
90 ui->cb_VirtualAirline->setChecked(
true);
virtual std::unique_ptr< swift::gui::models::IModelFilter< swift::misc::aviation::CAirlineIcaoCodeList > > createModelFilter() const
Get the filter, this is the filter itself, not its widget or dialog.
virtual void onRowCountChanged(int count, bool withFilter)
Row count has been changed.
virtual ~CAirlineIcaoFilterBar()
Destructor.
virtual void clearForm()
Clear form.
void filter(const swift::misc::aviation::CAirlineIcaoCode &icao)
Filter default values by ICAO code.
bool hasIsoCode() const
ISO code?
Value object for ICAO classification.
bool hasValidDesignator() const
Airline designator available?
QString getVDesignator() const
Get airline, e.g. "DLH", but "VMVA" for virtual airlines.
const QString & getName() const
Get name, e.g. "Lufthansa".
bool hasName() const
Has (airline) name?
High level reusable GUI components.
Filter to search data sets.
Models to be used with views, mainly QTableView.
Free functions in swift::misc.