diff options
author | Saturneric <[email protected]> | 2022-01-02 23:54:56 +0000 |
---|---|---|
committer | Saturneric <[email protected]> | 2022-01-02 23:54:56 +0000 |
commit | efabb4fa3d543a1d4443b75a1f23c564ccffd8e2 (patch) | |
tree | 6531273480a7e0385fe25455c1aa44c5918e8360 /src | |
parent | <refactor>(ui): Enhanced sending email function. (diff) | |
download | GpgFrontend-efabb4fa3d543a1d4443b75a1f23c564ccffd8e2.tar.gz GpgFrontend-efabb4fa3d543a1d4443b75a1f23c564ccffd8e2.zip |
<fixed, refactor>(ui): Enhanced sending email function.
1. make options changeable when init in sending email dialog.
Diffstat (limited to 'src')
-rw-r--r-- | src/ui/UserInterfaceUtils.cpp | 4 | ||||
-rw-r--r-- | src/ui/UserInterfaceUtils.h | 2 | ||||
-rw-r--r-- | src/ui/main_window/MainWindowSlotFunction.cpp | 2 | ||||
-rw-r--r-- | src/ui/smtp/SendMailDialog.cpp | 17 | ||||
-rw-r--r-- | src/ui/smtp/SendMailDialog.h | 4 |
5 files changed, 26 insertions, 3 deletions
diff --git a/src/ui/UserInterfaceUtils.cpp b/src/ui/UserInterfaceUtils.cpp index f7f5cb82..967dcc32 100644 --- a/src/ui/UserInterfaceUtils.cpp +++ b/src/ui/UserInterfaceUtils.cpp @@ -41,7 +41,7 @@ std::unique_ptr<GpgFrontend::UI::CommonUtils> #ifdef SMTP_SUPPORT void send_an_email(QWidget* parent, InfoBoardWidget* info_board, - const QString& text) { + const QString& text, bool attach_signature) { info_board->addOptionalAction(_("Send Encrypted Mail"), [=]() { bool smtp_enabled = false; try { @@ -52,6 +52,8 @@ void send_an_email(QWidget* parent, InfoBoardWidget* info_board, } if (smtp_enabled) { auto dialog = new SendMailDialog(text, parent); + dialog->setContentEncryption(false); + dialog->setAttachSignature(attach_signature); dialog->show(); } else { QMessageBox::warning(nullptr, _("Function Disabled"), diff --git a/src/ui/UserInterfaceUtils.h b/src/ui/UserInterfaceUtils.h index 76b6ce0d..d64b06b0 100644 --- a/src/ui/UserInterfaceUtils.h +++ b/src/ui/UserInterfaceUtils.h @@ -40,7 +40,7 @@ class TextEdit; #ifdef SMTP_SUPPORT void send_an_email(QWidget* parent, InfoBoardWidget* info_board, - const QString& text); + const QString& text, bool attach_signature = true); #endif void show_verify_details(QWidget* parent, InfoBoardWidget* info_board, diff --git a/src/ui/main_window/MainWindowSlotFunction.cpp b/src/ui/main_window/MainWindowSlotFunction.cpp index 67ade3ae..53f7dd9c 100644 --- a/src/ui/main_window/MainWindowSlotFunction.cpp +++ b/src/ui/main_window/MainWindowSlotFunction.cpp @@ -352,7 +352,7 @@ void MainWindow::slotEncryptSign() { infoBoard->resetOptionActionsMenu(); #ifdef SMTP_SUPPORT if (check_gpg_error_2_err_code(error) == GPG_ERR_NO_ERROR) - send_an_email(this, infoBoard, edit->curTextPage()->toPlainText()); + send_an_email(this, infoBoard, edit->curTextPage()->toPlainText(), false); #endif #ifdef ADVANCE_SUPPORT diff --git a/src/ui/smtp/SendMailDialog.cpp b/src/ui/smtp/SendMailDialog.cpp index 3c98dab5..e8f188c9 100644 --- a/src/ui/smtp/SendMailDialog.cpp +++ b/src/ui/smtp/SendMailDialog.cpp @@ -92,6 +92,16 @@ SendMailDialog::SendMailDialog(const QString& text, QWidget* parent) ui->recipientEdit->setText(editor->getEmailList()); }); + connect(ui->ccEditButton, &QPushButton::clicked, this, [=]() { + auto editor = new EmailListEditor(ui->ccEdit->text(), this); + ui->ccEdit->setText(editor->getEmailList()); + }); + + connect(ui->bccEditButton, &QPushButton::clicked, this, [=]() { + auto editor = new EmailListEditor(ui->bccEdit->text(), this); + ui->bccEdit->setText(editor->getEmailList()); + }); + ui->ccButton->setText(_("CC")); ui->bccButton->setText(_("BCC")); ui->senderLabel->setText(_("Sender")); @@ -380,5 +390,12 @@ void SendMailDialog::slotTestSMTPConnectionResult(const QString& result) { QMessageBox::critical(this, _("Fail"), _("Unknown error.")); } } +void SendMailDialog::setContentEncryption(bool on) { + ui->contentEncryptCheckBox->setCheckState(on ? Qt::Checked : Qt::Unchecked); +} + +void SendMailDialog::setAttachSignature(bool on) { + ui->attacSignatureCheckBox->setCheckState(on ? Qt::Checked : Qt::Unchecked); +} } // namespace GpgFrontend::UI diff --git a/src/ui/smtp/SendMailDialog.h b/src/ui/smtp/SendMailDialog.h index bf082c39..a9494675 100644 --- a/src/ui/smtp/SendMailDialog.h +++ b/src/ui/smtp/SendMailDialog.h @@ -36,6 +36,10 @@ class SendMailDialog : public QDialog { public: explicit SendMailDialog(const QString& text, QWidget* parent = nullptr); + void setContentEncryption(bool on); + + void setAttachSignature(bool on); + private slots: void slotConfirm(); |