Сервер. Settings DB

This commit is contained in:
2025-10-24 16:34:53 +03:00
parent 5287d5f13d
commit d4fd29f373
12 changed files with 349 additions and 104 deletions

View File

@@ -11,6 +11,24 @@ DialogSettingsTray::DialogSettingsTray(QWidget *parent) :
{
ui->setupUi(this);
ui->btnSave->setObjectName("btnSave");
/* Создаем строку для регулярного выражения */
QString ipRange = "(?:[0-1]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])";
/* Создаем регулярное выражение с применением строки, как
* повторяющегося элемента
*/
QRegExp ipRegex ("^" + ipRange
+ "\\." + ipRange
+ "\\." + ipRange
+ "\\." + ipRange + "$");
/* Создаем Валидатор регулярного выражения с применением
* созданного регулярного выражения
*/
QRegExpValidator *ipValidator = new QRegExpValidator(ipRegex, this);
/* Устанавливаем Валидатор на QLineEdit */
ui->editHostName->setValidator(ipValidator);
settings = new ServerDBSettings;
//Задаём два пункта с текстом локалей в комбобоксе
@@ -23,12 +41,14 @@ DialogSettingsTray::DialogSettingsTray(QWidget *parent) :
else
ui->cmbLanguage->setCurrentText("Русский");
//ui->editAddress->setText(settings->Address);
//ui->editPort->setText(settings->Port);
ui->editNameDB->setText(settings->NameDB);
ui->editHostName->setText(settings->HostName);
ui->editPort->setText(settings->Port);
ui->editUserName->setText(settings->UserName);
ui->editPassword->setText(settings->Password);
}
ui->btnSave->setEnabled(false);
flSettingsServerChanged = false;
}
DialogSettingsTray::~DialogSettingsTray()
@@ -66,7 +86,7 @@ bool DialogSettingsTray::loadSettings(ServerDBSettings *settings)
}
if(name == "Name"){
settings->Name = value;
settings->NameDB = value;
}
if(name == "UserName"){
@@ -101,32 +121,6 @@ bool DialogSettingsTray::loadSettings(ServerDBSettings *settings)
return true;
}
void DialogSettingsTray::on_cmbLanguage_currentTextChanged(const QString &arg1)
{
}
void DialogSettingsTray::on_btnSave_clicked()
{
if(ui->cmbLanguage->currentText() == QStringLiteral("English"))
{
settings->Language = "ENG";
}
else
{
settings->Language = "RUS";
}
//settings->Address = ui->editUserName->text();
//settings->Address = ui->editPassword->text();
//settings->Address = ui->editHostName->text();
//settings->Port = ui->editPort->text();
saveSettings();
this->accept();
}
bool DialogSettingsTray::saveSettings()
{
QFile file(settingsName);
@@ -143,7 +137,7 @@ bool DialogSettingsTray::saveSettings()
xmlWriter.writeStartElement("DataBaseSettings");
xmlWriter.writeAttribute("Type", settings->Type);
xmlWriter.writeAttribute("Name", settings->Name);
xmlWriter.writeAttribute("Name", settings->NameDB);
xmlWriter.writeAttribute("UserName", settings->UserName);
xmlWriter.writeAttribute("Password", settings->Password);
xmlWriter.writeAttribute("HostName", settings->HostName);
@@ -160,6 +154,28 @@ bool DialogSettingsTray::saveSettings()
return true;
}
void DialogSettingsTray::on_btnSave_clicked()
{
if(ui->cmbLanguage->currentText() == QStringLiteral("English"))
{
settings->Language = "ENG";
}
else
{
settings->Language = "RUS";
}
settings->NameDB = ui->editNameDB->text();
settings->HostName = ui->editHostName->text();
settings->Port = ui->editPort->text();
settings->UserName = ui->editUserName->text();
settings->Password = ui->editPassword->text();
saveSettings();
this->accept();
}
void DialogSettingsTray::on_cmbLanguage_currentIndexChanged(int index)
{
ui->btnSave->setEnabled(true);
@@ -176,3 +192,33 @@ void DialogSettingsTray::on_DialogSettingsTray_accepted()
emit signal_LanguageChanged(language);
}
void DialogSettingsTray::on_editNameDB_textChanged(const QString &arg1)
{
ui->btnSave->setEnabled(true);
flSettingsServerChanged = true;
}
void DialogSettingsTray::on_editHostName_textChanged(const QString &arg1)
{
ui->btnSave->setEnabled(true);
flSettingsServerChanged = true;
}
void DialogSettingsTray::on_editPort_textChanged(const QString &arg1)
{
ui->btnSave->setEnabled(true);
flSettingsServerChanged = true;
}
void DialogSettingsTray::on_editUserName_textChanged(const QString &arg1)
{
ui->btnSave->setEnabled(true);
flSettingsServerChanged = true;
}
void DialogSettingsTray::on_editPassword_textChanged(const QString &arg1)
{
ui->btnSave->setEnabled(true);
flSettingsServerChanged = true;
}