diff options
Diffstat (limited to 'src/ui/thread/SMTPSendMailThread.h')
-rw-r--r-- | src/ui/thread/SMTPSendMailThread.h | 153 |
1 files changed, 115 insertions, 38 deletions
diff --git a/src/ui/thread/SMTPSendMailThread.h b/src/ui/thread/SMTPSendMailThread.h index 3d723670..58420bf3 100644 --- a/src/ui/thread/SMTPSendMailThread.h +++ b/src/ui/thread/SMTPSendMailThread.h @@ -1,4 +1,6 @@ /** + * Copyright (C) 2021 Saturneric + * * This file is part of GpgFrontend. * * GpgFrontend is free software: you can redistribute it and/or modify @@ -6,16 +8,16 @@ * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * - * Foobar is distributed in the hope that it will be useful, + * GpgFrontend is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with Foobar. If not, see <https://www.gnu.org/licenses/>. + * along with GpgFrontend. If not, see <https://www.gnu.org/licenses/>. * - * The initial version of the source code is inherited from gpg4usb-team. - * Their source code version also complies with GNU General Public License. + * The initial version of the source code is inherited from + * the gpg4usb project, which is under GPL-3.0-or-later. * * The source code version of this software was modified and released * by Saturneric<[email protected]><[email protected]> starting on May 12, 2021. @@ -30,9 +32,24 @@ #include "ui/GpgFrontendUI.h" namespace GpgFrontend::UI { +/** + * @brief + * + */ class SMTPSendMailThread : public QThread { Q_OBJECT public: + /** + * @brief Construct a new SMTPSendMailThread object + * + * @param host + * @param port + * @param connection_type + * @param identify + * @param username + * @param password + * @param parent + */ explicit SMTPSendMailThread(std::string host, int port, SmtpClient::ConnectionType connection_type, bool identify, std::string username, @@ -45,57 +62,117 @@ class SMTPSendMailThread : public QThread { username_(std::move(username)), password_(std::move(password)) {} - void setSender(const QString& sender); - - void setRecipient(const QString& recipients); - - void setCC(const QString& ccs); - - void setBCC(const QString& bccs); - - void setSubject(const QString& subject) { message.setSubject(subject); } - - void addTextContent(const QString& content); - - void addFileContent(const QString& file_name, const QByteArray& content); - - void setEncryptContent(bool encrypt_content, + void SetSender(const QString& sender); + + /** + * @brief Set the Recipient object + * + * @param recipients + */ + void SetRecipient(const QString& recipients); + + /** + * @brief + * + * @param ccs + */ + void SetCC(const QString& ccs); + + /** + * @brief + * + * @param bccs + */ + void SetBCC(const QString& bccs); + + /** + * @brief Set the Subject object + * + * @param subject + */ + void SetSubject(const QString& subject) { message.setSubject(subject); } + + /** + * @brief + * + * @param content + */ + void AddTextContent(const QString& content); + + /** + * @brief + * + * @param file_name + * @param content + */ + void AddFileContent(const QString& file_name, const QByteArray& content); + + /** + * @brief Set the Encrypt Content object + * + * @param encrypt_content + * @param public_key_ids + */ + void SetEncryptContent(bool encrypt_content, GpgFrontend::KeyIdArgsListPtr public_key_ids); - void setAttachSignatureFile(bool attach_signature_file, + /** + * @brief Set the Attach Signature File object + * + * @param attach_signature_file + * @param private_key_id + */ + void SetAttachSignatureFile(bool attach_signature_file, GpgFrontend::KeyId private_key_id); - void setAttachPublicKey(bool attach_public_key_file, + /** + * @brief Set the Attach Public Key object + * + * @param attach_public_key_file + * @param attached_public_key_ids + */ + void SetAttachPublicKey(bool attach_public_key_file, GpgFrontend::KeyId attached_public_key_ids); signals: - void signalSMTPResult(const QString& result); + /** + * @brief + * + * @param result + */ + void SignalSMTPResult(const QString& result); protected: + /** + * @brief + * + */ void run() override; private: // SMTP Options - std::string host_; - int port_; - SmtpClient::ConnectionType connection_type_; - bool identify_; - std::string username_; - std::string password_; + std::string host_; ///< + int port_; ///< + SmtpClient::ConnectionType connection_type_; ///< + + bool identify_; ///< + std::string username_; ///< + std::string password_; ///< - MimeMessage message; - std::vector<std::unique_ptr<MimeText>> texts_; - std::vector<std::unique_ptr<MimeText>> send_texts_; - std::vector<std::unique_ptr<MimeFile>> files_; + MimeMessage message; ///< + std::vector<std::unique_ptr<MimeText>> texts_; ///< + std::vector<std::unique_ptr<MimeText>> send_texts_; ///< + std::vector<std::unique_ptr<MimeFile>> files_; ///< // GPG Options - bool encrypt_content_ = false; - GpgFrontend::KeyIdArgsListPtr public_key_ids_; - bool attach_signature_file_ = false; - GpgFrontend::KeyId private_key_id_; - bool attach_public_key_file_ = false; - GpgFrontend::KeyId attached_public_key_ids_; + + bool encrypt_content_ = false; ///< + GpgFrontend::KeyIdArgsListPtr public_key_ids_; ///< + bool attach_signature_file_ = false; ///< + GpgFrontend::KeyId private_key_id_; ///< + bool attach_public_key_file_ = false; ///< + GpgFrontend::KeyId attached_public_key_ids_; ///< }; } // namespace GpgFrontend::UI |