mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-22 14:55:36 +08:00
refactor: Simplify upper case validator
This commit is contained in:
@@ -108,17 +108,11 @@ namespace swift::gui::components
|
||||
ui->le_SsrEquipment->setReadOnly(true);
|
||||
|
||||
CUpperCaseEventFilter *ef = new CUpperCaseEventFilter(ui->pte_Route);
|
||||
ef->setOnlyAscii();
|
||||
ui->pte_Route->installEventFilter(ef);
|
||||
ef = new CUpperCaseEventFilter(ui->pte_Remarks);
|
||||
ef->setOnlyAscii();
|
||||
ui->pte_Remarks->installEventFilter(ef);
|
||||
ef = new CUpperCaseEventFilter(ui->pte_AdditionalRemarks);
|
||||
ef->setOnlyAscii();
|
||||
ui->pte_AdditionalRemarks->installEventFilter(ef);
|
||||
// readonly
|
||||
// ef = new CUpperCaseEventFilter(ui->pte_RemarksGenerated);
|
||||
// ui->pte_RemarksGenerated->installEventFilter(ef);
|
||||
|
||||
// connect
|
||||
connect(ui->pb_Send, &QPushButton::pressed, this, &CFlightPlanComponent::sendFlightPlan, Qt::QueuedConnection);
|
||||
|
||||
@@ -27,21 +27,17 @@ namespace swift::gui
|
||||
if (e->text().length() == 1)
|
||||
{
|
||||
const QChar c = e->text().front();
|
||||
if (m_illegalChars.contains(c)) { return true; }
|
||||
if (c.isLetter())
|
||||
{
|
||||
const ushort unicode = c.unicode();
|
||||
if (m_onlyAscii && unicode > 127) { return true; }
|
||||
if (unicode > 127) { return true; }
|
||||
|
||||
pte->insertPlainText(e->text().toUpper());
|
||||
// return true to prevent further processing
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
// all codes like backspace etc.
|
||||
return false;
|
||||
}
|
||||
// all codes like backspace etc.
|
||||
return false;
|
||||
} // length
|
||||
} // key event
|
||||
}
|
||||
|
||||
@@ -19,19 +19,9 @@ namespace swift::gui
|
||||
//! \copydoc QObject::QObject
|
||||
using QObject::QObject;
|
||||
|
||||
//! Not allowed characters
|
||||
void setIllegalCharacters(const QString &illegal) { m_illegalChars = illegal; }
|
||||
|
||||
//! Allow only ASCII
|
||||
void setOnlyAscii() { m_onlyAscii = true; }
|
||||
|
||||
protected:
|
||||
//! Filter
|
||||
virtual bool eventFilter(QObject *object, QEvent *event) override;
|
||||
|
||||
private:
|
||||
QString m_illegalChars;
|
||||
bool m_onlyAscii = false;
|
||||
bool eventFilter(QObject *object, QEvent *event) override;
|
||||
};
|
||||
} // namespace swift::gui
|
||||
|
||||
|
||||
Reference in New Issue
Block a user