mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-09 13:35:34 +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);
|
ui->le_SsrEquipment->setReadOnly(true);
|
||||||
|
|
||||||
CUpperCaseEventFilter *ef = new CUpperCaseEventFilter(ui->pte_Route);
|
CUpperCaseEventFilter *ef = new CUpperCaseEventFilter(ui->pte_Route);
|
||||||
ef->setOnlyAscii();
|
|
||||||
ui->pte_Route->installEventFilter(ef);
|
ui->pte_Route->installEventFilter(ef);
|
||||||
ef = new CUpperCaseEventFilter(ui->pte_Remarks);
|
ef = new CUpperCaseEventFilter(ui->pte_Remarks);
|
||||||
ef->setOnlyAscii();
|
|
||||||
ui->pte_Remarks->installEventFilter(ef);
|
ui->pte_Remarks->installEventFilter(ef);
|
||||||
ef = new CUpperCaseEventFilter(ui->pte_AdditionalRemarks);
|
ef = new CUpperCaseEventFilter(ui->pte_AdditionalRemarks);
|
||||||
ef->setOnlyAscii();
|
|
||||||
ui->pte_AdditionalRemarks->installEventFilter(ef);
|
ui->pte_AdditionalRemarks->installEventFilter(ef);
|
||||||
// readonly
|
|
||||||
// ef = new CUpperCaseEventFilter(ui->pte_RemarksGenerated);
|
|
||||||
// ui->pte_RemarksGenerated->installEventFilter(ef);
|
|
||||||
|
|
||||||
// connect
|
// connect
|
||||||
connect(ui->pb_Send, &QPushButton::pressed, this, &CFlightPlanComponent::sendFlightPlan, Qt::QueuedConnection);
|
connect(ui->pb_Send, &QPushButton::pressed, this, &CFlightPlanComponent::sendFlightPlan, Qt::QueuedConnection);
|
||||||
|
|||||||
@@ -27,21 +27,17 @@ namespace swift::gui
|
|||||||
if (e->text().length() == 1)
|
if (e->text().length() == 1)
|
||||||
{
|
{
|
||||||
const QChar c = e->text().front();
|
const QChar c = e->text().front();
|
||||||
if (m_illegalChars.contains(c)) { return true; }
|
|
||||||
if (c.isLetter())
|
if (c.isLetter())
|
||||||
{
|
{
|
||||||
const ushort unicode = c.unicode();
|
const ushort unicode = c.unicode();
|
||||||
if (m_onlyAscii && unicode > 127) { return true; }
|
if (unicode > 127) { return true; }
|
||||||
|
|
||||||
pte->insertPlainText(e->text().toUpper());
|
pte->insertPlainText(e->text().toUpper());
|
||||||
// return true to prevent further processing
|
// return true to prevent further processing
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else
|
// all codes like backspace etc.
|
||||||
{
|
return false;
|
||||||
// all codes like backspace etc.
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
} // length
|
} // length
|
||||||
} // key event
|
} // key event
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,19 +19,9 @@ namespace swift::gui
|
|||||||
//! \copydoc QObject::QObject
|
//! \copydoc QObject::QObject
|
||||||
using 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:
|
protected:
|
||||||
//! Filter
|
//! Filter
|
||||||
virtual bool eventFilter(QObject *object, QEvent *event) override;
|
bool eventFilter(QObject *object, QEvent *event) override;
|
||||||
|
|
||||||
private:
|
|
||||||
QString m_illegalChars;
|
|
||||||
bool m_onlyAscii = false;
|
|
||||||
};
|
};
|
||||||
} // namespace swift::gui
|
} // namespace swift::gui
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user