Remove code duplication in Connect dialog

This commit is contained in:
Igor Malinovskiy
2015-08-20 12:45:33 +03:00
parent 69fa7b11af
commit 80bfa1bfe2
2 changed files with 8 additions and 17 deletions
+6 -14
View File
@@ -19,9 +19,11 @@ ConnectionWindow::ConnectionWindow(QWeakPointer<ConnectionsManager> manager, QWi
// connect slots to signals
connect(ui.okButton, SIGNAL(clicked()), this, SLOT(OnOkButtonClick()));
connect(ui.selectPrivateKeyPath, SIGNAL(clicked()), this, SLOT(OnBrowseSshKeyClick()));
connect(ui.selectPrivateKeyPath, &QPushButton::clicked, this, [this]() {
OnBrowseFileClick(ui.privateKeyPath, "Select private key file", tr("All Files (*.*)"));
});
connect(ui.sslCACertButton, &QPushButton::clicked, this, [this]() {
OnBrowsePemFileClick(ui.sslCACertEdit);
OnBrowseFileClick(ui.sslCACertEdit, "Select PEM file", tr("All Files (*.pem)"));
});
connect(ui.testConnectionButton, SIGNAL(clicked()), this, SLOT(OnTestConnectionButtonClick()));
connect(ui.showPasswordCheckbox, SIGNAL(stateChanged(int)), this, SLOT(OnShowPasswordCheckboxChanged(int)));
@@ -128,19 +130,9 @@ void ConnectionWindow::OnShowPasswordCheckboxChanged(int state)
}
}
void ConnectionWindow::OnBrowseSshKeyClick()
void ConnectionWindow::OnBrowseFileClick(QLineEdit* target, QString msg, QString fileFilter)
{
QString fileName = QFileDialog::getOpenFileName(this, "Select private key file", "", tr("All Files (*.*)"));
if (fileName.isEmpty())
return;
ui.privateKeyPath->setText(fileName);
}
void ConnectionWindow::OnBrowsePemFileClick(QLineEdit* target)
{
QString fileName = QFileDialog::getOpenFileName(this, "Select PEM file", "", tr("All Files (*.pem)"));
QString fileName = QFileDialog::getOpenFileName(this, msg, "", fileFilter);
if (fileName.isEmpty())
return;
+2 -3
View File
@@ -38,8 +38,7 @@ private:
private slots:
void OnOkButtonClick();
void OnShowPasswordCheckboxChanged(int);
void OnBrowseSshKeyClick();
void OnBrowsePemFileClick(QLineEdit *target);
void OnShowPasswordCheckboxChanged(int);
void OnBrowseFileClick(QLineEdit *target, QString, QString);
void OnTestConnectionButtonClick();
};