File indexing completed on 2024-06-23 05:13:41

0001 /* -*- mode: c++; c-basic-offset:4 -*-
0002     commands/exportsecretkeycommand.h
0003 
0004     This file is part of Kleopatra, the KDE keymanager
0005     SPDX-FileCopyrightText: 2022 g10 Code GmbH
0006     SPDX-FileContributor: Ingo Klöcker <dev@ingo-kloecker.de>
0007 
0008     SPDX-License-Identifier: GPL-2.0-or-later
0009 */
0010 
0011 #pragma once
0012 
0013 #include "command.h"
0014 
0015 namespace Kleo
0016 {
0017 namespace Commands
0018 {
0019 
0020 class ExportSecretKeyCommand : public Command
0021 {
0022     Q_OBJECT
0023 public:
0024     explicit ExportSecretKeyCommand(QAbstractItemView *view, KeyListController *parent);
0025     explicit ExportSecretKeyCommand(const GpgME::Key &key);
0026     ~ExportSecretKeyCommand() override;
0027 
0028     /* reimp */ static Restrictions restrictions()
0029     {
0030         return OnlyOneKey | NeedSecretKeyData;
0031     }
0032 
0033 private:
0034     void doStart() override;
0035     void doCancel() override;
0036 
0037 private:
0038     class Private;
0039     inline Private *d_func();
0040     inline const Private *d_func() const;
0041 };
0042 
0043 }
0044 }