File indexing completed on 2024-06-23 05:14:10
0001 /* -*- mode: c++; c-basic-offset:4 -*- 0002 newcertificatewizard/resultpage_p.h 0003 0004 This file is part of Kleopatra, the KDE keymanager 0005 SPDX-FileCopyrightText: 2008 Klarälvdalens Datakonsult AB 0006 SPDX-FileCopyrightText: 2016, 2017 Bundesamt für Sicherheit in der Informationstechnik 0007 SPDX-FileContributor: Intevation GmbH 0008 SPDX-FileCopyrightText: 2022 g10 Code GmbH 0009 SPDX-FileContributor: Ingo Klöcker <dev@ingo-kloecker.de> 0010 0011 SPDX-License-Identifier: GPL-2.0-or-later 0012 */ 0013 0014 #pragma once 0015 0016 #include "wizardpage_p.h" 0017 0018 namespace GpgME 0019 { 0020 class Key; 0021 } 0022 namespace Kleo 0023 { 0024 class ExportCertificateCommand; 0025 } 0026 namespace Kleo::NewCertificateUi 0027 { 0028 0029 class ResultPage : public WizardPage 0030 { 0031 Q_OBJECT 0032 public: 0033 explicit ResultPage(QWidget *p = nullptr); 0034 ~ResultPage() override; 0035 0036 void initializePage() override; 0037 bool isError() const; 0038 bool isComplete() const override; 0039 0040 private: 0041 GpgME::Key key() const; 0042 0043 private Q_SLOTS: 0044 void slotSaveRequestToFile(); 0045 void slotSendRequestByEMail(); 0046 void slotSendCertificateByEMail(); 0047 void slotSendCertificateByEMailContinuation(); 0048 void slotUploadCertificateToDirectoryServer(); 0049 void slotBackupCertificate(); 0050 void slotCreateRevocationRequest(); 0051 void slotCreateSigningCertificate(); 0052 void slotCreateEncryptionCertificate(); 0053 0054 private: 0055 void toggleSignEncryptAndRestart(); 0056 0057 private: 0058 struct UI; 0059 std::unique_ptr<UI> ui; 0060 0061 bool initialized : 1; 0062 bool successfullyCreatedSigningCertificate : 1; 0063 bool successfullyCreatedEncryptionCertificate : 1; 0064 QPointer<Kleo::ExportCertificateCommand> exportCertificateCommand; 0065 }; 0066 0067 }