00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
#ifndef __KLEO_KPGPWRAPPER_H__
00034
#define __KLEO_KPGPWRAPPER_H__
00035
00036
#include <kleo/cryptobackend.h>
00037
00038
#include <qstring.h>
00039
00040
namespace Kleo {
00041
class KeyListJob;
00042
class EncryptJob;
00043
class DecryptJob;
00044
class SignJob;
00045
class VerifyDetachedJob;
00046
class VerifyOpaqueJob;
00047
class KeyGenerationJob;
00048
class ImportJob;
00049
class ExportJob;
00050
class DownloadJob;
00051
class DeleteJob;
00052
class SignEncryptJob;
00053
class DecryptVerifyJob;
00054
class CryptoConfig;
00055
class RefreshKeysJob;
00056 }
00057
00058
namespace Kpgp {
00059
class Base;
00060 }
00061
00062
class KpgpWrapper :
public Kleo::CryptoBackend::Protocol {
00063
public:
00064 KpgpWrapper(
const QString & name );
00065 ~KpgpWrapper();
00066
00067
QString name() const;
00068
00069
QString displayName() const;
00070
00071 Kleo::KeyListJob * keyListJob(
bool remote=false,
bool includeSigs=false,
00072
bool validate=false ) const;
00073 Kleo::EncryptJob * encryptJob(
bool armor=false,
bool textmode=false ) const;
00074 Kleo::DecryptJob * decryptJob() const;
00075 Kleo::SignJob * signJob(
bool armor=false,
bool textMode=false ) const;
00076 Kleo::VerifyDetachedJob * verifyDetachedJob(
bool textmode=false) const;
00077 Kleo::VerifyOpaqueJob * verifyOpaqueJob(
bool textmode=false ) const;
00078 Kleo::KeyGenerationJob * keyGenerationJob() const;
00079 Kleo::ImportJob * importJob() const;
00080 Kleo::ExportJob * publicKeyExportJob(
bool armor=false ) const;
00081 Kleo::ExportJob * secretKeyExportJob(
bool armor=false ) const;
00082 Kleo::DownloadJob * downloadJob(
bool armor=false ) const;
00083 Kleo::DeleteJob * deleteJob() const;
00084 Kleo::SignEncryptJob * signEncryptJob(
bool armor=false,
00085
bool textMode=false ) const;
00086 Kleo::DecryptVerifyJob * decryptVerifyJob(
bool textmode=false ) const;
00087 Kleo::RefreshKeysJob * refreshKeysJob() const;
00088
00089 private:
00090 Kpgp::Base * pgpBase() const;
00091
00092 private:
00093
QString mName;
00094 mutable Kpgp::Base * mPgpBase;
00095 };
00096
00097 #endif