-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathconnectiondialog.cpp
More file actions
83 lines (66 loc) · 3.45 KB
/
connectiondialog.cpp
File metadata and controls
83 lines (66 loc) · 3.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#include "connectiondialog.h"
#include "ui_connectiondialog.h"
ConnectionDialog::ConnectionDialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::ConnectionDialog)
{
ui->setupUi(this);
ui->buttonBox->button(QDialogButtonBox::Ok)->setText(tr("Применить"));
ui->buttonBox->button(QDialogButtonBox::Cancel)->setText(tr("Отмена"));
this->setWindowTitle(tr("Настройка соединения"));
this->setWindowFlags(Qt::Window | Qt::WindowSystemMenuHint | Qt::WindowCloseButtonHint);
QSettings settings ("Other/config.ini", QSettings::IniFormat);
settings.beginGroup("MainDB");
ui->mainHost->setText(settings.value("hostname", "localhost").toString());
ui->mainBase->setText(settings.value("dbname", "kcttDB").toString());
ui->mainPort->setValue(settings.value("port").toInt());
ui->mainUser->setText(settings.value("username").toString());
ui->mainPasswd->setText(settings.value("password").toString());
settings.endGroup();
settings.beginGroup("TempDB");
ui->tempHost->setText(settings.value("hostname", "localhost").toString());
ui->tempBase->setText(settings.value("dbname", "kcttTempDB").toString());
ui->tempPort->setValue(settings.value("port").toInt());
ui->tempUser->setText(settings.value("username").toString());
ui->tempPasswd->setText(settings.value("password").toString());
settings.endGroup();
}
// ============================================================
ConnectionDialog::~ConnectionDialog()
{
delete ui;
}
// ============================================================
void ConnectionDialog::on_buttonBox_accepted()
{
// Создаём окно, запрашивающее подтверждение действия
QMessageBox messageBox(QMessageBox::Question,
tr("Изменение настроек подключения"),
tr("Вы уверены, что хотите изменить настройки подключения? <br /> "
"Обратите внимание, что некорректный ввод одного или нескольких<br />"
"параметров может привести к потере соединения и некорректной работе приложения."),
QMessageBox::Yes | QMessageBox::Cancel,
this);
messageBox.setButtonText(QMessageBox::Yes, tr("Да"));
messageBox.setButtonText(QMessageBox::Cancel, tr("Отмена"));
// Если действие подтверждено
if (messageBox.exec() == QMessageBox::Yes)
{
QSettings settings ("Other/config.ini", QSettings::IniFormat);
settings.beginGroup("MainDB");
settings.setValue("hostname", ui->mainHost->text());
settings.setValue("dbname", ui->mainBase->text());
settings.setValue("port", ui->mainPort->value());
settings.setValue("username", ui->mainUser->text());
settings.setValue("password", ui->mainPasswd->text());
settings.endGroup();
settings.beginGroup("TempDB");
settings.setValue("hostname", ui->tempHost->text());
settings.setValue("dbname", ui->tempBase->text());
settings.setValue("port", ui->tempPort->value());
settings.setValue("username", ui->tempUser->text());
settings.setValue("password", ui->tempPasswd->text());
settings.endGroup();
emit connectReconfig();
}
}