diff options
Diffstat (limited to 'src/ui/dialog/import_export/KeyImportDetailDialog.cpp')
-rw-r--r-- | src/ui/dialog/import_export/KeyImportDetailDialog.cpp | 175 |
1 files changed, 83 insertions, 92 deletions
diff --git a/src/ui/dialog/import_export/KeyImportDetailDialog.cpp b/src/ui/dialog/import_export/KeyImportDetailDialog.cpp index 32ae63fa..40a8ec80 100644 --- a/src/ui/dialog/import_export/KeyImportDetailDialog.cpp +++ b/src/ui/dialog/import_export/KeyImportDetailDialog.cpp @@ -1,5 +1,5 @@ /** - * Copyright (C) 2021 Saturneric + * Copyright (C) 2021 Saturneric <[email protected]> * * This file is part of GpgFrontend. * @@ -20,7 +20,7 @@ * the gpg4usb project, which is under GPL-3.0-or-later. * * All the source code of GpgFrontend was modified and released by - * Saturneric<[email protected]> starting on May 12, 2021. + * Saturneric <[email protected]> starting on May 12, 2021. * * SPDX-License-Identifier: GPL-3.0-or-later * @@ -28,102 +28,95 @@ #include "KeyImportDetailDialog.h" +#include "core/GpgModel.h" #include "core/function/gpg/GpgKeyGetter.h" +#include "core/model/GpgImportInformation.h" namespace GpgFrontend::UI { -KeyImportDetailDialog::KeyImportDetailDialog(GpgImportInformation result, - bool automatic, QWidget* parent) +KeyImportDetailDialog::KeyImportDetailDialog( + std::shared_ptr<GpgImportInformation> result, QWidget* parent) : GeneralDialog(typeid(KeyImportDetailDialog).name(), parent), m_result_(std::move(result)) { + this->setAttribute(Qt::WA_DeleteOnClose); + // If no key for import found, just show a message - if (m_result_.considered == 0) { - if (automatic) - QMessageBox::information(parent, _("Key Update Details"), - _("No keys found")); - else - QMessageBox::information(parent, _("Key Import Details"), - _("No keys found to import")); - emit finished(0); + if (m_result_ == nullptr || m_result_->considered == 0) { + QMessageBox::information(parent, tr("Key Import Details"), + tr("No keys found to import")); + this->close(); - this->deleteLater(); - } else { - auto* mv_box = new QVBoxLayout(); - - this->create_general_info_box(); - mv_box->addWidget(general_info_box_); - this->create_keys_table(); - mv_box->addWidget(keys_table_); - this->create_button_box(); - mv_box->addWidget(button_box_); - - this->setLayout(mv_box); - if (automatic) - this->setWindowTitle(_("Key Update Details")); - else - this->setWindowTitle(_("Key Import Details")); - - auto pos = QPoint(100, 100); - if (parent) pos += parent->pos(); - this->move(pos); - - this->setMinimumSize(QSize(600, 300)); - this->adjustSize(); - - this->setModal(true); - this->show(); + return; } + + auto* mv_box = new QVBoxLayout(); + + this->create_general_info_box(); + mv_box->addWidget(general_info_box_); + this->create_keys_table(); + mv_box->addWidget(keys_table_); + this->create_button_box(); + mv_box->addWidget(button_box_); + + this->setLayout(mv_box); + this->setWindowTitle(tr("Key Import Details")); + + this->setMinimumSize(QSize(600, 300)); + this->adjustSize(); + + movePosition2CenterOfParent(); + this->setModal(true); + this->show(); } void KeyImportDetailDialog::create_general_info_box() { // GridBox for general import information - general_info_box_ = new QGroupBox(_("General key info")); - auto* generalInfoBoxLayout = new QGridLayout(general_info_box_); + general_info_box_ = new QGroupBox(tr("General key info")); + auto* general_info_box_layout = new QGridLayout(general_info_box_); - generalInfoBoxLayout->addWidget(new QLabel(QString(_("Considered")) + ": "), - 1, 0); - generalInfoBoxLayout->addWidget( - new QLabel(QString::number(m_result_.considered)), 1, 1); + general_info_box_layout->addWidget(new QLabel(tr("Considered") + ": "), 1, 0); + general_info_box_layout->addWidget( + new QLabel(QString::number(m_result_->considered)), 1, 1); int row = 2; - if (m_result_.unchanged != 0) { - generalInfoBoxLayout->addWidget( - new QLabel(QString(_("Public unchanged")) + ": "), row, 0); - generalInfoBoxLayout->addWidget( - new QLabel(QString::number(m_result_.unchanged)), row, 1); + if (m_result_->unchanged != 0) { + general_info_box_layout->addWidget( + new QLabel(tr("Public unchanged") + ": "), row, 0); + general_info_box_layout->addWidget( + new QLabel(QString::number(m_result_->unchanged)), row, 1); row++; } - if (m_result_.imported != 0) { - generalInfoBoxLayout->addWidget(new QLabel(QString(_("Imported")) + ": "), - row, 0); - generalInfoBoxLayout->addWidget( - new QLabel(QString::number(m_result_.imported)), row, 1); + if (m_result_->imported != 0) { + general_info_box_layout->addWidget(new QLabel(tr("Imported") + ": "), row, + 0); + general_info_box_layout->addWidget( + new QLabel(QString::number(m_result_->imported)), row, 1); row++; } - if (m_result_.not_imported != 0) { - generalInfoBoxLayout->addWidget( - new QLabel(QString(_("Not Imported")) + ": "), row, 0); - generalInfoBoxLayout->addWidget( - new QLabel(QString::number(m_result_.not_imported)), row, 1); + if (m_result_->not_imported != 0) { + general_info_box_layout->addWidget(new QLabel(tr("Not Imported") + ": "), + row, 0); + general_info_box_layout->addWidget( + new QLabel(QString::number(m_result_->not_imported)), row, 1); row++; } - if (m_result_.secret_read != 0) { - generalInfoBoxLayout->addWidget( - new QLabel(QString(_("Private Read")) + ": "), row, 0); - generalInfoBoxLayout->addWidget( - new QLabel(QString::number(m_result_.secret_read)), row, 1); + if (m_result_->secret_read != 0) { + general_info_box_layout->addWidget(new QLabel(tr("Private Read") + ": "), + row, 0); + general_info_box_layout->addWidget( + new QLabel(QString::number(m_result_->secret_read)), row, 1); row++; } - if (m_result_.secret_imported != 0) { - generalInfoBoxLayout->addWidget( - new QLabel(QString(_("Private Imported")) + ": "), row, 0); - generalInfoBoxLayout->addWidget( - new QLabel(QString::number(m_result_.secret_imported)), row, 1); + if (m_result_->secret_imported != 0) { + general_info_box_layout->addWidget( + new QLabel(tr("Private Imported") + ": "), row, 0); + general_info_box_layout->addWidget( + new QLabel(QString::number(m_result_->secret_imported)), row, 1); row++; } - if (m_result_.secret_unchanged != 0) { - generalInfoBoxLayout->addWidget( - new QLabel(QString(_("Private Unchanged")) + ": "), row, 0); - generalInfoBoxLayout->addWidget( - new QLabel(QString::number(m_result_.secret_unchanged)), row, 1); + if (m_result_->secret_unchanged != 0) { + general_info_box_layout->addWidget( + new QLabel(tr("Private Unchanged") + ": "), row, 0); + general_info_box_layout->addWidget( + new QLabel(QString::number(m_result_->secret_unchanged)), row, 1); } } @@ -135,24 +128,22 @@ void KeyImportDetailDialog::create_keys_table() { // Nothing is selectable keys_table_->setSelectionMode(QAbstractItemView::NoSelection); - QStringList headerLabels; - headerLabels << _("Name") << _("Email") << _("Status") << _("Fingerprint"); + QStringList header_labels; + header_labels << tr("Name") << tr("Email") << tr("Status") + << tr("Fingerprint"); keys_table_->verticalHeader()->hide(); - keys_table_->setHorizontalHeaderLabels(headerLabels); + keys_table_->setHorizontalHeaderLabels(header_labels); int row = 0; - for (const auto& imp_key : m_result_.importedKeys) { + for (const auto& imp_key : m_result_->imported_keys) { keys_table_->setRowCount(row + 1); - GpgKey key = GpgKeyGetter::GetInstance().GetKey(imp_key.fpr); + auto key = GpgKeyGetter::GetInstance().GetKey(imp_key.fpr); if (!key.IsGood()) continue; - keys_table_->setItem( - row, 0, new QTableWidgetItem(QString::fromStdString(key.GetName()))); - keys_table_->setItem( - row, 1, new QTableWidgetItem(QString::fromStdString(key.GetEmail()))); + keys_table_->setItem(row, 0, new QTableWidgetItem(key.GetName())); + keys_table_->setItem(row, 1, new QTableWidgetItem(key.GetEmail())); keys_table_->setItem( row, 2, new QTableWidgetItem(get_status_string(imp_key.import_status))); - keys_table_->setItem( - row, 3, new QTableWidgetItem(QString::fromStdString(imp_key.fpr))); + keys_table_->setItem(row, 3, new QTableWidgetItem(imp_key.fpr)); row++; } keys_table_->horizontalHeader()->setSectionResizeMode( @@ -165,27 +156,27 @@ QString KeyImportDetailDialog::get_status_string(int key_status) { QString status_string; // keystatus is greater than 15, if key is private if (key_status > 15) { - status_string.append(_("Private")); + status_string.append(tr("Private")); key_status = key_status - 16; } else { - status_string.append(_("Public")); + status_string.append(tr("Public")); } if (key_status == 0) { - status_string.append(", " + QString(_("Unchanged"))); + status_string.append(", " + tr("Unchanged")); } else { if (key_status == 1) { - status_string.append(", " + QString(_("New Key"))); + status_string.append(", " + tr("New Key")); } else { if (key_status > 7) { - status_string.append(", " + QString(_("New Subkey"))); + status_string.append(", " + tr("New Subkey")); return status_string; } if (key_status > 3) { - status_string.append(", " + QString(_("New Signature"))); + status_string.append(", " + tr("New Signature")); return status_string; } if (key_status > 1) { - status_string.append(", " + QString(_("New UID"))); + status_string.append(", " + tr("New UID")); return status_string; } } |