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

0001 /* -*- mode: c++; c-basic-offset:4 -*-
0002     crypto/gui/verifychecksumsdialog.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 <QDialog>
0013 #include <QMetaType>
0014 
0015 #ifndef QT_NO_DIRMODEL
0016 
0017 #include <utils/pimpl_ptr.h>
0018 
0019 namespace Kleo
0020 {
0021 namespace Crypto
0022 {
0023 namespace Gui
0024 {
0025 
0026 class VerifyChecksumsDialog : public QDialog
0027 {
0028     Q_OBJECT
0029     Q_ENUMS(Status)
0030 public:
0031     explicit VerifyChecksumsDialog(QWidget *parent = nullptr);
0032     ~VerifyChecksumsDialog() override;
0033 
0034     enum Status {
0035         Unknown,
0036         OK,
0037         Failed,
0038         Error,
0039         NumStatii,
0040     };
0041 
0042 public Q_SLOTS:
0043     void setBaseDirectories(const QStringList &bases);
0044     void setProgress(int current, int total);
0045     void setStatus(const QString &file, Kleo::Crypto::Gui::VerifyChecksumsDialog::Status status);
0046     void setErrors(const QStringList &errors);
0047     void clearStatusInformation();
0048 
0049 Q_SIGNALS:
0050     void canceled();
0051 
0052 private:
0053     Q_PRIVATE_SLOT(d, void slotErrorButtonClicked())
0054     class Private;
0055     kdtools::pimpl_ptr<Private> d;
0056 };
0057 }
0058 }
0059 }
0060 
0061 Q_DECLARE_METATYPE(Kleo::Crypto::Gui::VerifyChecksumsDialog::Status)
0062 
0063 #endif // QT_NO_DIRMODEL