Qt: Make Protocol class public API
[gpgme.git] / lang / qt / src / qgpgmebackend.h
index 3b03633..cca8b71 100644 (file)
 
 #include <QString>
 
-namespace QGpgME
-{
-class CryptoConfig;
-class KeyListJob;
-class ListAllKeysJob;
-class KeyGenerationJob;
-class ImportJob;
-class ImportFromKeyserverJob;
-class ExportJob;
-class DownloadJob;
-class DeleteJob;
-class EncryptJob;
-class DecryptJob;
-class SignJob;
-class SignKeyJob;
-class VerifyDetachedJob;
-class VerifyOpaqueJob;
-class SignEncryptJob;
-class DecryptVerifyJob;
-class RefreshKeysJob;
-class ChangeExpiryJob;
-class ChangeOwnerTrustJob;
-class ChangePasswdJob;
-class AddUserIDJob;
-class SpecialJob;
-}
+#include "protocol.h"
 
 class QString;
-class QVariant;
 template <typename T_Key, typename T_Value> class QMap;
 
 namespace QGpgME
@@ -72,19 +46,6 @@ namespace QGpgME
 class CryptoConfig;
 class Protocol;
 
-/** Obtain a reference to the OpenPGP Protocol.
- *
- * The reference is to a static object.
- * @returns Refrence to the OpenPGP Protocol.
- */
-Protocol *openpgp();
-
-/** Obtain a reference to the smime Protocol.
- *
- * The reference is to a static object.
- * @returns Refrence to the smime Protocol.
- */
-Protocol *smime();
 
 class QGpgMEBackend
 {
@@ -126,41 +87,6 @@ private:
     mutable Protocol *mSMIMEProtocol;
 };
 
-class Protocol
-{
-public:
-    virtual ~Protocol() {}
-
-    virtual QString name() const = 0;
-
-    virtual QString displayName() const = 0;
-
-    virtual KeyListJob           *keyListJob(bool remote = false, bool includeSigs = false, bool validate = false) const = 0;
-    virtual ListAllKeysJob       *listAllKeysJob(bool includeSigs = false, bool validate = false) const = 0;
-    virtual EncryptJob           *encryptJob(bool armor = false, bool textmode = false) const = 0;
-    virtual DecryptJob           *decryptJob() const = 0;
-    virtual SignJob              *signJob(bool armor = false, bool textMode = false) const = 0;
-    virtual VerifyDetachedJob    *verifyDetachedJob(bool textmode = false) const = 0;
-    virtual VerifyOpaqueJob      *verifyOpaqueJob(bool textmode = false) const = 0;
-    virtual KeyGenerationJob     *keyGenerationJob() const = 0;
-    virtual ImportJob            *importJob() const = 0;
-    virtual ImportFromKeyserverJob *importFromKeyserverJob() const = 0;
-    virtual ExportJob            *publicKeyExportJob(bool armor = false) const = 0;
-    // @param charset the encoding of the passphrase in the exported file
-    virtual ExportJob            *secretKeyExportJob(bool armor = false, const QString &charset = QString()) const = 0;
-    virtual DownloadJob          *downloadJob(bool armor = false) const = 0;
-    virtual DeleteJob            *deleteJob() const = 0;
-    virtual SignEncryptJob       *signEncryptJob(bool armor = false, bool textMode = false) const = 0;
-    virtual DecryptVerifyJob     *decryptVerifyJob(bool textmode = false) const = 0;
-    virtual RefreshKeysJob       *refreshKeysJob() const = 0;
-    virtual ChangeExpiryJob      *changeExpiryJob() const = 0;
-    virtual SignKeyJob           *signKeyJob() const = 0;
-    virtual ChangePasswdJob      *changePasswdJob() const = 0;
-    virtual ChangeOwnerTrustJob  *changeOwnerTrustJob() const = 0;
-    virtual AddUserIDJob         *addUserIDJob() const = 0;
-    virtual SpecialJob           *specialJob(const char *type, const QMap<QString, QVariant> &args) const = 0;
-};
-
 }
 
 #endif // __QGPGME_QGPGMEBACKEND_H__