mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-04 00:16:51 +08:00
refs #634, improved completers
* mostly to avoid roundtrips (set->changed signal->set again...) * better sort for ICAO completer
This commit is contained in:
@@ -37,13 +37,12 @@ namespace BlackGui
|
||||
CDbAirlineIcaoSelectorBase::~CDbAirlineIcaoSelectorBase()
|
||||
{ }
|
||||
|
||||
void CDbAirlineIcaoSelectorBase::setAirlineIcao(const CAirlineIcaoCode &icao)
|
||||
bool CDbAirlineIcaoSelectorBase::setAirlineIcao(const CAirlineIcaoCode &icao)
|
||||
{
|
||||
if (icao != m_currentIcao)
|
||||
{
|
||||
m_currentIcao = icao;
|
||||
emit changedAirlineIcao(icao);
|
||||
}
|
||||
if (icao == m_currentIcao) { return false; }
|
||||
m_currentIcao = icao;
|
||||
emit changedAirlineIcao(icao);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CDbAirlineIcaoSelectorBase::setAirlineIcao(int key)
|
||||
|
||||
@@ -38,7 +38,7 @@ namespace BlackGui
|
||||
virtual ~CDbAirlineIcaoSelectorBase();
|
||||
|
||||
//! Current airline ICAO
|
||||
virtual void setAirlineIcao(const BlackMisc::Aviation::CAirlineIcaoCode &icao);
|
||||
virtual bool setAirlineIcao(const BlackMisc::Aviation::CAirlineIcaoCode &icao);
|
||||
|
||||
//! Current airline ICAO by key
|
||||
bool setAirlineIcao(int key);
|
||||
|
||||
@@ -44,12 +44,13 @@ namespace BlackGui
|
||||
this->ui->le_Airline->setReadOnly(readOnly);
|
||||
}
|
||||
|
||||
void CDbAirlineIcaoSelectorComponent::setAirlineIcao(const CAirlineIcaoCode &icao)
|
||||
bool CDbAirlineIcaoSelectorComponent::setAirlineIcao(const CAirlineIcaoCode &icao)
|
||||
{
|
||||
CDbAirlineIcaoSelectorBase::setAirlineIcao(icao);
|
||||
if (!CDbAirlineIcaoSelectorBase::setAirlineIcao(icao)) { return false; }
|
||||
const QString icaoStr(icao.getVDesignator());
|
||||
this->ui->le_Airline->setText(icaoStr);
|
||||
ui->lbl_Description->setText(icao.getName());
|
||||
return true;
|
||||
}
|
||||
|
||||
void CDbAirlineIcaoSelectorComponent::withIcaoDescription(bool description)
|
||||
|
||||
@@ -41,7 +41,7 @@ namespace BlackGui
|
||||
//! \name Base class overrides
|
||||
//! @{
|
||||
virtual void setReadOnly(bool readOnly) override;
|
||||
virtual void setAirlineIcao(const BlackMisc::Aviation::CAirlineIcaoCode &icao) override;
|
||||
virtual bool setAirlineIcao(const BlackMisc::Aviation::CAirlineIcaoCode &icao) override;
|
||||
virtual void clear() override;
|
||||
//! @}
|
||||
|
||||
|
||||
@@ -35,11 +35,12 @@ namespace BlackGui
|
||||
// no inline destructor, read QScopedPointer Forward Declared Pointers
|
||||
}
|
||||
|
||||
void CDbAirlineNameSelectorComponent::setAirlineIcao(const CAirlineIcaoCode &icao)
|
||||
bool CDbAirlineNameSelectorComponent::setAirlineIcao(const CAirlineIcaoCode &icao)
|
||||
{
|
||||
CDbAirlineIcaoSelectorBase::setAirlineIcao(icao);
|
||||
if (!CDbAirlineIcaoSelectorBase::setAirlineIcao(icao)) { return false; }
|
||||
QString name(icao.getName());
|
||||
this->ui->le_AirlineName->setText(name);
|
||||
return true;
|
||||
}
|
||||
|
||||
void CDbAirlineNameSelectorComponent::clear()
|
||||
|
||||
@@ -40,7 +40,7 @@ namespace BlackGui
|
||||
//! \name Base class overrides
|
||||
//! @{
|
||||
virtual void setReadOnly(bool readOnly) override;
|
||||
virtual void setAirlineIcao(const BlackMisc::Aviation::CAirlineIcaoCode &icao) override;
|
||||
virtual bool setAirlineIcao(const BlackMisc::Aviation::CAirlineIcaoCode &icao) override;
|
||||
virtual void clear() override;
|
||||
//! @}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user