From 037c272d7a53078870e552a0c7ae8dc00a46f23a Mon Sep 17 00:00:00 2001 From: Raul Metsma Date: Mon, 25 Nov 2024 11:12:04 +0200 Subject: [PATCH] Enc SSL cert Signed-off-by: Raul Metsma --- client/dialogs/MobileProgress.ui | 2 +- client/dialogs/SettingsDialog.cpp | 67 ++- client/dialogs/SettingsDialog.h | 1 + client/dialogs/SettingsDialog.ui | 969 +++++++++++++++--------------- client/translations/en.ts | 32 +- client/translations/et.ts | 34 +- client/translations/ru.ts | 34 +- 7 files changed, 612 insertions(+), 527 deletions(-) diff --git a/client/dialogs/MobileProgress.ui b/client/dialogs/MobileProgress.ui index 5bc2a796a..9fe7e5240 100644 --- a/client/dialogs/MobileProgress.ui +++ b/client/dialogs/MobileProgress.ui @@ -138,7 +138,7 @@ background-color: #2F70B6; 30 - QLayout::SizeConstraint::SetFixedSize + QLayout::SetFixedSize 40 diff --git a/client/dialogs/SettingsDialog.cpp b/client/dialogs/SettingsDialog.cpp index 4a5e78a38..5147a2ffc 100644 --- a/client/dialogs/SettingsDialog.cpp +++ b/client/dialogs/SettingsDialog.cpp @@ -67,6 +67,10 @@ SettingsDialog::SettingsDialog(int page, QWidget *parent) w->setAttribute(Qt::WA_MacShowFocusRect, false); for(QCheckBox *w: findChildren()) w->setAttribute(Qt::WA_MacShowFocusRect, false); + for(QToolButton *b: findChildren()) + b->setCursor(Qt::PointingHandCursor); + for(QPushButton *b: findChildren()) + b->setCursor(Qt::PointingHandCursor); // pageGeneral selectLanguage(); @@ -151,7 +155,7 @@ SettingsDialog::SettingsDialog(int page, QWidget *parent) ui->txtMIDUUID->setReadOnly(Settings::MID_UUID.isLocked()); ui->txtMIDUUID->setVisible(ui->rdMIDUUIDCustom->isChecked()); ui->txtMIDUUID->setText(Settings::MID_UUID); - connect(ui->rdMIDUUIDCustom, &QRadioButton::toggled, ui->txtMIDUUID, [=](bool checked) { + connect(ui->rdMIDUUIDCustom, &QRadioButton::toggled, ui->txtMIDUUID, [this](bool checked) { ui->txtMIDUUID->setVisible(checked); Settings::MID_UUID_CUSTOM = checked; Settings::SID_UUID_CUSTOM = checked; @@ -218,13 +222,17 @@ SettingsDialog::SettingsDialog(int page, QWidget *parent) ui->txtCdoc2Fetch->setText(data.value(QLatin1String("FETCH")).toString(Settings::CDOC2_GET)); ui->txtCdoc2Post->setText(data.value(QLatin1String("POST")).toString(Settings::CDOC2_POST)); bool disabled = ui->cmbCdoc2Name->currentIndex() < ui->cmbCdoc2Name->count() - 1; - ui->txtCdoc2UUID->setReadOnly(disabled); - ui->txtCdoc2Fetch->setReadOnly(disabled); - ui->txtCdoc2Post->setReadOnly(disabled); + ui->txtCdoc2UUID->setDisabled(disabled); + ui->txtCdoc2Fetch->setDisabled(disabled); + ui->txtCdoc2Post->setDisabled(disabled); + ui->txtCdoc2UUID->setClearButtonEnabled(!disabled); + ui->txtCdoc2Fetch->setClearButtonEnabled(!disabled); + ui->txtCdoc2Post->setClearButtonEnabled(!disabled); + ui->wgtCDoc2Cert->setHidden(disabled); }; for(QJsonObject::const_iterator i = list.constBegin(); i != list.constEnd(); ++i) ui->cmbCdoc2Name->addItem(i.value().toObject().value(QLatin1String("NAME")).toString(), i.key()); - ui->cmbCdoc2Name->addItem(tr("Custom"), Settings::CDOC2_UUID); + ui->cmbCdoc2Name->addItem(tr("Use a manually specified key transfer server for encryption"), Settings::CDOC2_UUID); QString cdoc2Service = Settings::CDOC2_DEFAULT_KEYSERVER; ui->cmbCdoc2Name->setCurrentIndex(ui->cmbCdoc2Name->findData(cdoc2Service)); connect(ui->cmbCdoc2Name, qOverload(&QComboBox::currentIndexChanged), this, [this, setCDoc2Values] (int index) { @@ -234,14 +242,40 @@ SettingsDialog::SettingsDialog(int page, QWidget *parent) }); setCDoc2Values(cdoc2Service); connect(ui->txtCdoc2UUID, &QLineEdit::textEdited, this, Settings::CDOC2_UUID); - connect(ui->txtCdoc2Fetch, &QLineEdit::textEdited, this, Settings::CDOC2_GET); - connect(ui->txtCdoc2Post, &QLineEdit::textEdited, this, Settings::CDOC2_POST); + connect(ui->txtCdoc2Fetch, &QLineEdit::textEdited, this, [this](const QString &url) { + Settings::CDOC2_GET = url; + if(url.isEmpty()) + { + Settings::CDOC2_GET_CERT.clear(); + Settings::CDOC2_POST_CERT.clear(); + updateCDoc2Cert(QSslCertificate()); + } + }); + connect(ui->txtCdoc2Post, &QLineEdit::textEdited, this, [this](const QString &url) { + Settings::CDOC2_POST = url; + if(url.isEmpty()) + { + Settings::CDOC2_GET_CERT.clear(); + Settings::CDOC2_POST_CERT.clear(); + updateCDoc2Cert(QSslCertificate()); + } + }); #else ui->cmbCdoc2Name->addItem(QStringLiteral("Default")); ui->txtCdoc2UUID->setText(QStringLiteral("00000000-0000-0000-0000-000000000000")); ui->txtCdoc2Fetch->setText(QStringLiteral(CDOC2_GET_URL)); ui->txtCdoc2Post->setText(QStringLiteral(CDOC2_POST_URL)); #endif + connect(ui->btInstallCDoc2Cert, &QPushButton::clicked, this, [this] { + QSslCertificate cert = selectCert(tr("Select a key transfer server certificate"), + tr("Key transfer server SSL certificate")); + if(cert.isNull()) + return; + Settings::CDOC2_GET_CERT = cert.toDer().toBase64(); + Settings::CDOC2_POST_CERT = cert.toDer().toBase64(); + updateCDoc2Cert(cert); + }); + updateCDoc2Cert(QSslCertificate(QByteArray::fromBase64(Settings::CDOC2_GET_CERT), QSsl::Der)); // pageProxy connect(this, &SettingsDialog::finished, this, &SettingsDialog::saveProxy); @@ -313,7 +347,7 @@ SettingsDialog::SettingsDialog(int page, QWidget *parent) dlg->open(); }); #ifdef CONFIG_URL - connect(qApp->conf(), &Configuration::finished, this, [=](bool /*update*/, const QString &error){ + connect(qApp->conf(), &Configuration::finished, this, [this](bool /*update*/, const QString &error){ if(!error.isEmpty()) { WarningDialog::show(this, tr("Checking updates has failed.") + "
" + tr("Please try again."), error); return; @@ -334,10 +368,10 @@ SettingsDialog::SettingsDialog(int page, QWidget *parent) Application::updateTSLCache({}); }); connect(ui->btnNavUseByDefault, &QPushButton::clicked, this, &SettingsDialog::useDefaultSettings); - connect(ui->btnNavSaveReport, &QPushButton::clicked, this, [=]{ + connect(ui->btnNavSaveReport, &QPushButton::clicked, this, [this]{ saveFile(QStringLiteral("diagnostics.txt"), ui->txtDiagnostics->toPlainText().toUtf8()); }); - connect(ui->btnNavSaveLibdigidocpp, &QPushButton::clicked, this, [=]{ + connect(ui->btnNavSaveLibdigidocpp, &QPushButton::clicked, this, [this]{ Settings::LIBDIGIDOCPP_DEBUG = false; QString log = QStringLiteral("%1/libdigidocpp.log").arg(QDir::tempPath()); saveFile(QStringLiteral("libdigidocpp.txt"), log); @@ -424,6 +458,8 @@ void SettingsDialog::retranslate(const QString& lang) ui->retranslateUi(this); updateVersion(); updateDiagnostics(); + ui->cmbCdoc2Name->setItemText(ui->cmbCdoc2Name->count() - 1, + tr("Use a manually specified key transfer server for encryption")); } void SettingsDialog::updateCert(const QSslCertificate &c, QPushButton *btn, CertLabel *lbl) @@ -439,6 +475,11 @@ void SettingsDialog::updateCert(const QSslCertificate &c, QPushButton *btn, Cert }); } +void SettingsDialog::updateCDoc2Cert(const QSslCertificate &c) +{ + updateCert(c, ui->btShowCDoc2Cert, ui->txtCDoc2Cert); +} + void SettingsDialog::updateSiVaCert(const QSslCertificate &c) { updateCert(c, ui->btShowSiVaCert, ui->txtSiVaCert); @@ -469,8 +510,8 @@ void SettingsDialog::selectLanguage() void SettingsDialog::updateVersion() { - ui->txtNavVersion->setText(tr("%1 version %2, released %3") - .arg(tr("DigiDoc4 Client"), QApplication::applicationVersion(), QStringLiteral(BUILD_DATE))); + ui->txtNavVersion->setText(tr("DigiDoc4 version %1, released %2") + .arg(QApplication::applicationVersion(), QStringLiteral(BUILD_DATE))); } void SettingsDialog::saveProxy() @@ -519,7 +560,7 @@ void SettingsDialog::updateDiagnostics() QApplication::setOverrideCursor( Qt::WaitCursor ); auto *worker = new Diagnostics(); connect(worker, &Diagnostics::update, ui->txtDiagnostics, &QTextBrowser::insertHtml, Qt::QueuedConnection); - connect(worker, &Diagnostics::destroyed, this, [=]{ + connect(worker, &Diagnostics::destroyed, this, [this]{ ui->txtDiagnostics->setEnabled(true); ui->txtDiagnostics->moveCursor(QTextCursor::Start); ui->txtDiagnostics->ensureCursorVisible(); diff --git a/client/dialogs/SettingsDialog.h b/client/dialogs/SettingsDialog.h index 72beee7b9..03be4eb68 100644 --- a/client/dialogs/SettingsDialog.h +++ b/client/dialogs/SettingsDialog.h @@ -71,6 +71,7 @@ class SettingsDialog final: public QDialog QSslCertificate selectCert(const QString &label, const QString &format); void selectLanguage(); void updateCert(const QSslCertificate &c, QPushButton *btn, CertLabel *lbl); + void updateCDoc2Cert(const QSslCertificate &c); void updateSiVaCert(const QSslCertificate &c); void updateTSACert(const QSslCertificate &c); void updateVersion(); diff --git a/client/dialogs/SettingsDialog.ui b/client/dialogs/SettingsDialog.ui index d11659c16..c62b659b5 100644 --- a/client/dialogs/SettingsDialog.ui +++ b/client/dialogs/SettingsDialog.ui @@ -3,35 +3,35 @@ SettingsDialog - Qt::WindowModality::WindowModal + Qt::WindowModal 0 0 - 994 + 1010 570 - 994 + 1010 570 - 994 + 1010 570 QWidget { -color: #000000; +color: #07142A; font-family: Roboto, Helvetica; font-size: 14px; } -#lblMenuSettings, #lblGeneralLang, #lblDefaultDirectory, #lblTimeStamp, #lblTSACert, #lblMID, #lblSiVa, #lblSiVaCert, #pageEncryptionLabel, #pageProxyLabel { +#lblMenuSettings, #lblGeneralLang, #lblDefaultDirectory, #lblTimeStamp, #lblMID, #lblSiVa, #pageEncryptionLabel, #pageProxyLabel { color: #003168; font-weight: 700; font-size: 18px; @@ -57,29 +57,28 @@ font-size: 18px; - 203 + 220 0 - 203 + 220 16777215 #leftPane { background-color: #ffffff; -border-right: 1px solid #E7EAEF +border-right: 1px solid #E7EAEF; } #lblMenuSettings { -padding-left: 24; +padding-left: 24px; } QRadioButton { color: #003168; border: none; -padding-left: 24; -min-height: 40px; +padding: 13px 24px; } QRadioButton::indicator { width: 0px; @@ -98,13 +97,13 @@ background-color: #E9ECF3; 0 - 2 + 0 0 - 1 + 0 0 @@ -117,8 +116,14 @@ background-color: #E9ECF3; 61 + + + 16777215 + 61 + + - Qt::FocusPolicy::TabFocus + Qt::TabFocus Settings @@ -204,7 +209,7 @@ background-color: #E9ECF3; - Qt::Orientation::Vertical + Qt::Vertical @@ -217,20 +222,151 @@ background-color: #E9ECF3; + + + + + 0 + 48 + + + + + 16777215 + 48 + + + + #navigationArea { +border-top: 1px solid #E7EAEF; +background-color: #F3F5F7; +} +QPushButton { +padding: 10px 12px; +border-radius: 4px; +color: #2F70B6; +font-size: 12px; +font-weight: 700; +} +QPushButton:hover { +background-color: #EAF1F8; +} +QPushButton:pressed { +background-color: #BFD3E8; +} +QPushButton:default { +color: #ffffff; +background-color: #2F70B6; +} +QPushButton:default:hover { +background-color: #2B66A6; +} +QPushButton:default:pressed { +background-color: #215081; +} +QPushButton:default:disabled { +background-color: #2F70B6; +} + + + + 16 + + + 24 + + + 0 + + + 24 + + + 0 + + + + + Qt::TabFocus + + + DigiDoc4 4.0.1.0, released 01.02.2024 + + + + + + + First run + + + + + + + Refresh configuration + + + + + + + Check connection + + + + + + + Save diagnostics report + + + + + + + Save log + + + + + + + Remove old certificates + + + + + + + Use default settings + + + + + + + Close + + + true + + + + + + #pageGeneral, #pageServices, #pageValidation, #pageEncryption, #pageProxy, #pageDiagnostics, #pageInfo { background-color: #ffffff; } -#lblProxyHost, #lblProxyPort, #lblProxyUsername, #lblProxyPassword { -color: #07142A; -} QLineEdit, QComboBox { padding: 10px 14px; border: 1px solid #C4CBD8; border-radius: 4px; -color: #07142A; +background-color: white; placeholder-text-color: #607496; font-size: 16px; } @@ -250,7 +386,6 @@ QComboBox QPushButton { margin: 3px; padding: 0px 12px 0px 4px; border: 0px; -color: #07142A; text-align: left; font-weight: normal; font-size: 16px; @@ -276,7 +411,6 @@ left: 1px; } QCheckBox, QRadioButton { spacing: 8px; -color: #07142A; border: none; /*Workaround for right padding*/ border: 2px solid transparent; border-radius: 4px; @@ -325,10 +459,11 @@ QRadioButton::indicator:checked:disabled { image: url(:/images/icon_radio_check_disabled.svg); } QPushButton { -padding: 9px 12px; +padding: 10px 12px; border: 1px solid #2F70B6; border-radius: 4px; color: #2F70B6; +font-size: 12px; font-weight: 700; } QPushButton:hover { @@ -365,7 +500,7 @@ max-height: 22px; - Qt::FocusPolicy::TabFocus + Qt::TabFocus Language @@ -435,7 +570,7 @@ max-height: 22px; - Qt::FocusPolicy::TabFocus + Qt::TabFocus Container default location @@ -472,9 +607,6 @@ max-height: 22px; - - PointingHandCursor - ... @@ -488,7 +620,7 @@ max-height: 22px; - Qt::Orientation::Vertical + Qt::Vertical @@ -502,7 +634,7 @@ max-height: 22px; - QFrame::Shape::NoFrame + QFrame::NoFrame true @@ -512,8 +644,8 @@ max-height: 22px; 0 0 - 791 - 577 + 467 + 573 @@ -537,7 +669,7 @@ max-height: 22px; - Qt::FocusPolicy::TabFocus + Qt::TabFocus Access to Time-Stamping service @@ -549,9 +681,6 @@ max-height: 22px; - - PointingHandCursor - Help @@ -570,7 +699,7 @@ max-height: 22px; - Qt::Orientation::Horizontal + Qt::Horizontal @@ -640,7 +769,7 @@ max-height: 22px; - Qt::FocusPolicy::TabFocus + Qt::TabFocus Time-Stamping service SSL certificate @@ -650,7 +779,7 @@ max-height: 22px; - Qt::FocusPolicy::TabFocus + Qt::TabFocus @@ -661,9 +790,6 @@ max-height: 22px; - - PointingHandCursor - Add certificate @@ -671,9 +797,6 @@ max-height: 22px; - - PointingHandCursor - Show certificate @@ -682,7 +805,7 @@ max-height: 22px; - Qt::Orientation::Horizontal + Qt::Horizontal @@ -702,7 +825,7 @@ max-height: 22px; - Qt::FocusPolicy::TabFocus + Qt::TabFocus Access to mobile-ID and Smart-ID service @@ -711,9 +834,6 @@ max-height: 22px; - - PointingHandCursor - Help @@ -732,7 +852,7 @@ max-height: 22px; - Qt::Orientation::Horizontal + Qt::Horizontal @@ -777,7 +897,7 @@ max-height: 22px; - QLineEdit::EchoMode::Password + QLineEdit::Password 00000000-0000-0000-0000-000000000000 @@ -790,7 +910,7 @@ max-height: 22px; - Qt::Orientation::Vertical + Qt::Vertical @@ -825,7 +945,7 @@ max-height: 22px; - Qt::FocusPolicy::TabFocus + Qt::TabFocus Access to Digital Signature Validation Service SiVa @@ -837,9 +957,6 @@ max-height: 22px; - - PointingHandCursor - Help @@ -858,7 +975,7 @@ max-height: 22px; - Qt::Orientation::Horizontal + Qt::Horizontal @@ -928,7 +1045,7 @@ max-height: 22px; - Qt::FocusPolicy::TabFocus + Qt::TabFocus Digital Signature Validation Service SiVa SSL certificate @@ -938,7 +1055,7 @@ max-height: 22px; - Qt::FocusPolicy::TabFocus + Qt::TabFocus @@ -949,9 +1066,6 @@ max-height: 22px; - - PointingHandCursor - Add certificate @@ -959,9 +1073,6 @@ max-height: 22px; - - PointingHandCursor - Show certificate @@ -970,7 +1081,7 @@ max-height: 22px; - Qt::Orientation::Horizontal + Qt::Horizontal @@ -988,7 +1099,7 @@ max-height: 22px; - Qt::Orientation::Vertical + Qt::Vertical @@ -1000,8 +1111,293 @@ max-height: 22px; - - + + + QFrame::NoFrame + + + true + + + + + 0 + 0 + 790 + 610 + + + + + 24 + + + 32 + + + 19 + + + 32 + + + 32 + + + + + Qt::TabFocus + + + Encryption settings + + + + + + + 15 + + + + + Use CDOC1 file format for encryption + + + true + + + cdoc2Group + + + + + + + Use CDOC2 file format for encryption + + + cdoc2Group + + + + + + + + + + 24 + + + 24 + + + 0 + + + 0 + + + 0 + + + + + Use a key transfer server for encryption + + + + + + + + QFormLayout::AllNonFixedFieldsGrow + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + 24 + + + 24 + + + 0 + + + 0 + + + 0 + + + + + + 140 + 0 + + + + Name + + + cmbCdoc2Name + + + + + + + + + + UUID + + + txtCdoc2UUID + + + + + + + true + + + + + + + Fetch URL + + + txtCdoc2Fetch + + + + + + + true + + + + + + + Post URL + + + txtCdoc2Post + + + + + + + true + + + + + + + + 24 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + Qt::TabFocus + + + Key transfer server SSL certificate + + + + + + + Qt::TabFocus + + + + + + + 16 + + + + + Add certificate + + + + + + + Show certificate + + + + + + + Qt::Horizontal + + + + 0 + 0 + + + + + + + + + + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + 24 @@ -1018,225 +1414,22 @@ max-height: 22px; 32 - + - Qt::FocusPolicy::TabFocus + Qt::TabFocus - Encryption settings + Proxy - + 15 - - - Use default CDOC1 solution - - - true - - - cdoc2Group - - - - - - - Use default CDOC2 solution - - - cdoc2Group - - - - - - - - - - 24 - - - 24 - - - 0 - - - 0 - - - 0 - - - - - Use key server - - - - - - - - QFormLayout::FieldGrowthPolicy::AllNonFixedFieldsGrow - - - Qt::AlignmentFlag::AlignLeading|Qt::AlignmentFlag::AlignLeft|Qt::AlignmentFlag::AlignVCenter - - - 24 - - - 24 - - - 0 - - - 0 - - - 0 - - - - - - 140 - 0 - - - - Name - - - cmbCdoc2Name - - - - - - - - - - UUID - - - txtCdoc2UUID - - - - - - - true - - - true - - - - - - - Fetch URL - - - txtCdoc2Fetch - - - - - - - true - - - true - - - - - - - Post URL - - - txtCdoc2Post - - - - - - - true - - - true - - - - - - - - - - - - - Qt::Orientation::Vertical - - - - 20 - 40 - - - - - - - - - - 24 - - - 32 - - - 19 - - - 32 - - - 32 - - - - - Proxy - - - - - - - 15 - - - + No proxy @@ -1369,7 +1562,7 @@ max-height: 22px; - QLineEdit::EchoMode::Password + QLineEdit::Password @@ -1381,7 +1574,7 @@ max-height: 22px; - Qt::Orientation::Vertical + Qt::Vertical @@ -1426,22 +1619,19 @@ QScrollBar { background: #FFFFFF; } QScrollBar::handle:vertical { - background-color: #8E969D; +background-color: #8E969D; margin: 0 0 0 0; border-radius: 2px; height: 145px; } -QScrollBar::add-line:vertical { - border: none; - background: none; -} +QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical { - border: none; - background: none; +border: none; +background: none; } - QFrame::Shape::NoFrame + QFrame::NoFrame true @@ -1474,7 +1664,7 @@ QScrollBar::sub-line:vertical { 0 - + @@ -1489,7 +1679,7 @@ QScrollBar::sub-line:vertical { - Qt::FocusPolicy::TabFocus + Qt::TabFocus The project is supported by the European Regional Development Fund @@ -1499,7 +1689,7 @@ QScrollBar::sub-line:vertical { - Qt::FocusPolicy::TabFocus + Qt::TabFocus <p>Estonian ID-software is released by Information Systems's Authority<br /> @@ -1507,7 +1697,7 @@ In case of questions please contact our support via <a href="https://www Additional licenses and components - Qt::AlignmentFlag::AlignCenter + Qt::AlignCenter true @@ -1532,19 +1722,19 @@ QScrollBar { background: #FFFFFF; } QScrollBar::handle:vertical { - background-color: #8E969D; +background-color: #8E969D; margin: 0 0 0 0; border-radius: 2px; height: 145px; } QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical { - border: none; - background: none; +border: none; +background: none; } - QFrame::Shape::NoFrame + QFrame::NoFrame true @@ -1568,7 +1758,7 @@ p, li { white-space: pre-wrap; margin-top:12px; margin-bottom:12px; margin-left: <p align="center"><b>Roboto: Google’s signature family of fonts</b><br />Apache Software License, Version 2.0<br /><a href="https://github.com/google/roboto/blob/master/LICENSE" style=" text-decoration: underline; color:#006eb5;">https://github.com/google/roboto/blob/master/LICENSE</a> </p></body></html> - Qt::TextInteractionFlag::TextBrowserInteraction + Qt::TextBrowserInteraction true @@ -1579,179 +1769,6 @@ p, li { white-space: pre-wrap; margin-top:12px; margin-bottom:12px; margin-left: - - - - - 0 - 48 - - - - - 16777215 - 48 - - - - #navigationArea { -border-top: 1px solid #E7EAEF; -background-color: #F3F5F7; -} -#txtNavVersion { -color: #07142A; -} -QPushButton { -padding: 9px 12px; -border-radius: 4px; -color: #2F70B6; -font-weight: 700; -} -QPushButton:hover { -background-color: #EAF1F8; -} -QPushButton:pressed { -background-color: #BFD3E8; -} -QPushButton:default { -color: #ffffff; -background-color: #2F70B6; -} -QPushButton:default:hover { -background-color: #2B66A6; -} -QPushButton:default:pressed { -background-color: #215081; -} -QPushButton:default:disabled { -background-color: #2F70B6; -} - - - - 40 - - - 24 - - - 0 - - - 40 - - - 0 - - - - - Qt::FocusPolicy::TabFocus - - - DigiDoc4 4.0.1.0, released 01.02.2024 - - - - - - - Qt::Orientation::Horizontal - - - - 10 - 20 - - - - - - - - PointingHandCursor - - - First run - - - - - - - PointingHandCursor - - - Refresh configuration - - - - - - - PointingHandCursor - - - Check connection - - - - - - - PointingHandCursor - - - Save diagnostics report - - - - - - - PointingHandCursor - - - Save log - - - - - - - PointingHandCursor - - - Remove old certificates - - - - - - - PointingHandCursor - - - Use default settings - - - - - - - PointingHandCursor - - - Close - - - true - - - - - - @@ -1777,16 +1794,18 @@ background-color: #2F70B6;
dialogs/SettingsDialog.h
- + + + - + + - - - + + diff --git a/client/translations/en.ts b/client/translations/en.ts index c0d8ea6b1..3f5f513f9 100644 --- a/client/translations/en.ts +++ b/client/translations/en.ts @@ -2374,10 +2374,6 @@ ID-CARD The connection to certificate status service is successful! Network settings are correct, certificate status service is accessible! - - DigiDoc4 Client - DigiDoc4 Client - Checking updates has failed. Checking updates has failed. @@ -2480,8 +2476,8 @@ Additional licenses and components DigiDoc4 Client configuration update was successful. - %1 version %2, released %3 - %1 version %2, released %3 + DigiDoc4 version %1, released %2 + DigiDoc4 version %1, released %2 Use default access @@ -2556,16 +2552,28 @@ Additional licenses and components Show certificate - Use default CDOC1 solution - + Use CDOC1 file format for encryption + Use CDOC1 file format for encryption - Use default CDOC2 solution - + Use CDOC2 file format for encryption + Use CDOC2 file format for encryption - Custom - + Use a manually specified key transfer server for encryption + Use a manually specified key transfer server for encryption + + + Key transfer server SSL certificate + Key transfer server SSL certificate + + + Select a key transfer server certificate + Select a key transfer server certificate + + + Use a key transfer server for encryption + Use a key transfer server for encryption diff --git a/client/translations/et.ts b/client/translations/et.ts index 4ec7d1010..07ed44f8a 100644 --- a/client/translations/et.ts +++ b/client/translations/et.ts @@ -2374,10 +2374,6 @@ ID-KAARDIGA The connection to certificate status service is successful! Interneti seaded on korrektsed, kehtivuskinnitusteenus on kättesaadav! - - DigiDoc4 Client - DigiDoc4 klient - Checking updates has failed. Värskenduste kontrollimine on ebaõnnestunud. @@ -2480,8 +2476,8 @@ Täiendavad litsentsid ja komponendid DigiDoc4 kliendi konfiguratsiooni värskendamine õnnestus. - %1 version %2, released %3 - %1 versioon %2, avalikustatud %3 + DigiDoc4 version %1, released %2 + DigiDoc4 versioon %1, avalikustatud %2 Use default access @@ -2545,7 +2541,7 @@ Täiendavad litsentsid ja komponendid Encryption settings - Krüpteerimiseseaded + Krüpteerimisseaded Add certificate @@ -2556,16 +2552,28 @@ Täiendavad litsentsid ja komponendid Näita sertifikaati - Use default CDOC1 solution - + Use CDOC1 file format for encryption + Kasuta krüpteerimiseks CDOC1 failivormingut - Use default CDOC2 solution - + Use CDOC2 file format for encryption + Kasuta krüpteerimiseks CDOC2 failivormingut - Custom - + Use a manually specified key transfer server for encryption + Kasuta krüpteerimiseks käsitsi määratud võtmeedastusserverit + + + Key transfer server SSL certificate + Võtmeedastusserveri SSL sertifikaat + + + Select a key transfer server certificate + Vali võtmeedastusserveri sertifikaat + + + Use a key transfer server for encryption + Kasuta krüpteerimiseks võtmeedastusserverit diff --git a/client/translations/ru.ts b/client/translations/ru.ts index 4d240664e..4648f3c47 100644 --- a/client/translations/ru.ts +++ b/client/translations/ru.ts @@ -2375,10 +2375,6 @@ ID-КАРТОЙ The connection to certificate status service is successful! Настройки Интернета верны, услуга подтверждения действительности доступна! - - DigiDoc4 Client - DigiDoc4 клиент - Checking updates has failed. Ошибка проверки обновлений. @@ -2481,8 +2477,8 @@ Additional licenses and components Обновление конфигурации программы DigiDoc4 удачно завершено. - %1 version %2, released %3 - %1 версия %2, выпущенный %3 + DigiDoc4 version %1, released %2 + DigiDoc4 версия %1, выпущенный %2 Use default access @@ -2546,7 +2542,7 @@ Additional licenses and components Encryption settings - + Настройки шифрования Add certificate @@ -2557,16 +2553,28 @@ Additional licenses and components Показать сертификат - Use default CDOC1 solution - + Use CDOC1 file format for encryption + Для шифрования используйте формат файла CDOC1 - Use default CDOC2 solution - + Use CDOC2 file format for encryption + Для шифрования используйте формат файла CDOC2 - Custom - + Use a manually specified key transfer server for encryption + Используйте вручную указанный сервер передачи ключей для шифрования + + + Key transfer server SSL certificate + SSL-сертификат сервера передачи ключей + + + Select a key transfer server certificate + Выберите сертификат сервера передачи ключей + + + Use a key transfer server for encryption + Используйте сервер передачи ключей для шифрования