File indexing completed on 2024-06-16 04:55:55
0001 /* -*- mode: c++; c-basic-offset:4 -*- 0002 crypto/createchecksumscontroller.h 0003 0004 This file is part of Kleopatra, the KDE keymanager 0005 SPDX-FileCopyrightText: 2010 Klarälvdalens Datakonsult AB 0006 0007 SPDX-License-Identifier: GPL-2.0-or-later 0008 */ 0009 0010 #pragma once 0011 0012 #include <crypto/controller.h> 0013 0014 #include <utils/pimpl_ptr.h> 0015 0016 #include <gpgme++/global.h> 0017 0018 #include <memory> 0019 #include <vector> 0020 0021 namespace Kleo 0022 { 0023 namespace Crypto 0024 { 0025 0026 class CreateChecksumsController : public Controller 0027 { 0028 Q_OBJECT 0029 public: 0030 explicit CreateChecksumsController(QObject *parent = nullptr); 0031 explicit CreateChecksumsController(const std::shared_ptr<const ExecutionContext> &ctx, QObject *parent = nullptr); 0032 ~CreateChecksumsController() override; 0033 0034 void setAllowAddition(bool allow); 0035 bool allowAddition() const; 0036 0037 void setFiles(const QStringList &files); 0038 0039 void start(); 0040 0041 public Q_SLOTS: 0042 void cancel(); 0043 0044 private: 0045 class Private; 0046 kdtools::pimpl_ptr<Private> d; 0047 Q_PRIVATE_SLOT(d, void slotOperationFinished()) 0048 Q_PRIVATE_SLOT(d, void slotProgress(int, int, QString)) 0049 }; 0050 0051 } 0052 }