refactor: ScreenSettingsDialog, do not use auto connect slots

This commit is contained in:
sithlord48 2025-09-01 20:14:56 -04:00 committed by Nick Bolton
parent 81c53d3690
commit d5936a9e08
3 changed files with 20 additions and 46 deletions

View file

@ -64,6 +64,13 @@ ScreenSettingsDialog::ScreenSettingsDialog(QWidget *parent, Screen *screen, cons
ui->chkFixNumLock->setChecked(m_screen->fix(NumLock)); ui->chkFixNumLock->setChecked(m_screen->fix(NumLock));
ui->chkFixScrollLock->setChecked(m_screen->fix(ScrollLock)); ui->chkFixScrollLock->setChecked(m_screen->fix(ScrollLock));
ui->chkFixXTest->setChecked(m_screen->fix(XTest)); ui->chkFixXTest->setChecked(m_screen->fix(XTest));
connect(ui->buttonBox, &QDialogButtonBox::accepted, this, &ScreenSettingsDialog::accept);
connect(ui->buttonBox, &QDialogButtonBox::rejected, this, &ScreenSettingsDialog::reject);
connect(ui->btnAddAlias, &QPushButton::clicked, this, &ScreenSettingsDialog::addAlias);
connect(ui->btnRemoveAlias, &QPushButton::clicked, this, &ScreenSettingsDialog::removeAlias);
connect(ui->lineAddAlias, &QLineEdit::textChanged, this, &ScreenSettingsDialog::checkNewAliasName);
connect(ui->listAliases, &QListWidget::itemSelectionChanged, this, &ScreenSettingsDialog::aliasSelected);
} }
void ScreenSettingsDialog::accept() void ScreenSettingsDialog::accept()
@ -115,7 +122,7 @@ void ScreenSettingsDialog::accept()
QDialog::accept(); QDialog::accept();
} }
void ScreenSettingsDialog::on_btnAddAlias_clicked() void ScreenSettingsDialog::addAlias()
{ {
if (!ui->lineAddAlias->text().isEmpty() && if (!ui->lineAddAlias->text().isEmpty() &&
ui->listAliases->findItems(ui->lineAddAlias->text(), Qt::MatchFixedString).isEmpty()) { ui->listAliases->findItems(ui->lineAddAlias->text(), Qt::MatchFixedString).isEmpty()) {
@ -124,18 +131,18 @@ void ScreenSettingsDialog::on_btnAddAlias_clicked()
} }
} }
void ScreenSettingsDialog::on_lineAddAlias_textChanged(const QString &text) void ScreenSettingsDialog::removeAlias()
{
ui->btnAddAlias->setEnabled(!text.isEmpty() && ui->lblAliasError->text().isEmpty());
}
void ScreenSettingsDialog::on_btnRemoveAlias_clicked()
{ {
QList<QListWidgetItem *> items = ui->listAliases->selectedItems(); QList<QListWidgetItem *> items = ui->listAliases->selectedItems();
qDeleteAll(items); qDeleteAll(items);
} }
void ScreenSettingsDialog::on_listAliases_itemSelectionChanged() void ScreenSettingsDialog::checkNewAliasName(const QString &text)
{
ui->btnAddAlias->setEnabled(!text.isEmpty() && ui->lblAliasError->text().isEmpty());
}
void ScreenSettingsDialog::aliasSelected()
{ {
ui->btnRemoveAlias->setEnabled(!ui->listAliases->selectedItems().isEmpty()); ui->btnRemoveAlias->setEnabled(!ui->listAliases->selectedItems().isEmpty());
} }

View file

@ -31,10 +31,10 @@ public Q_SLOTS:
void accept() override; void accept() override;
private Q_SLOTS: private Q_SLOTS:
void on_btnAddAlias_clicked(); void addAlias();
void on_btnRemoveAlias_clicked(); void removeAlias();
void on_lineAddAlias_textChanged(const QString &text); void checkNewAliasName(const QString &text);
void on_listAliases_itemSelectionChanged(); void aliasSelected();
private: private:
std::unique_ptr<Ui::ScreenSettingsDialog> ui; std::unique_ptr<Ui::ScreenSettingsDialog> ui;

View file

@ -704,38 +704,5 @@
<tabstop>btnRemoveAlias</tabstop> <tabstop>btnRemoveAlias</tabstop>
</tabstops> </tabstops>
<resources/> <resources/>
<connections> <connections/>
<connection>
<sender>buttonBox</sender>
<signal>accepted()</signal>
<receiver>ScreenSettingsDialog</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel">
<x>231</x>
<y>548</y>
</hint>
<hint type="destinationlabel">
<x>157</x>
<y>274</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonBox</sender>
<signal>rejected()</signal>
<receiver>ScreenSettingsDialog</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>299</x>
<y>548</y>
</hint>
<hint type="destinationlabel">
<x>286</x>
<y>274</y>
</hint>
</hints>
</connection>
</connections>
</ui> </ui>