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

0001 /*
0002     cryptooperationsconfigwidget.h
0003 
0004     This file is part of kleopatra, the KDE key manager
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 "labelledwidget.h"
0013 
0014 #include <QWidget>
0015 
0016 #include <utils/pimpl_ptr.h>
0017 
0018 class QCheckBox;
0019 class QComboBox;
0020 class QBoxLayout;
0021 class QPushButton;
0022 
0023 namespace Kleo
0024 {
0025 class FileOperationsPreferences;
0026 class Settings;
0027 class ClassifyConfig;
0028 
0029 namespace Config
0030 {
0031 
0032 class CryptoOperationsConfigWidget : public QWidget
0033 {
0034     Q_OBJECT
0035 public:
0036     explicit CryptoOperationsConfigWidget(QWidget *parent = nullptr, Qt::WindowFlags f = {});
0037     ~CryptoOperationsConfigWidget() override;
0038 
0039     void load();
0040     void save();
0041     void defaults();
0042 
0043 Q_SIGNALS:
0044     void changed();
0045 
0046 private:
0047     void setupGui();
0048 
0049     void load(const Kleo::FileOperationsPreferences &filePrefs, const Kleo::Settings &settings, const Kleo::ClassifyConfig &classifyConfig);
0050 
0051 private:
0052     QCheckBox *mPGPFileExtCB = nullptr;
0053     QCheckBox *mTreatP7mEmailCB = nullptr;
0054     QCheckBox *mAutoDecryptVerifyCB = nullptr;
0055     QCheckBox *mAutoExtractArchivesCB = nullptr;
0056     QCheckBox *mASCIIArmorCB = nullptr;
0057     QCheckBox *mTmpDirCB = nullptr;
0058     QCheckBox *mSymmetricOnlyCB = nullptr;
0059     Kleo::LabelledWidget<QComboBox> mChecksumDefinitionCB;
0060     Kleo::LabelledWidget<QComboBox> mArchiveDefinitionCB;
0061     QPushButton *mApplyBtn = nullptr;
0062 };
0063 
0064 }
0065 }