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_TQGPGMESIGNJOB_H__
00034 #define __KLEO_TQGPGMESIGNJOB_H__
00035
00036 #include <kleo/signjob.h>
00037
00038 #include "qgpgmejob.h"
00039
00040 #include <gpgmepp/signingresult.h>
00041
00042 #include <tqcstring.h>
00043
00044 namespace GpgME {
00045 class Error;
00046 class Context;
00047 class Key;
00048 }
00049
00050 namespace Kleo {
00051
00052 class QGpgMESignJob : public SignJob, private QGpgMEJob {
00053 Q_OBJECT
00054 TQ_OBJECT TQGPGME_JOB
00055 public:
00056 QGpgMESignJob( GpgME::Context * context );
00057 ~QGpgMESignJob();
00058
00060 GpgME::Error start( const std::vector<GpgME::Key> & signers,
00061 const TQByteArray & plainText,
00062 GpgME::Context::SignatureMode mode );
00063
00065 GpgME::SigningResult exec( const std::vector<GpgME::Key> & signers,
00066 const TQByteArray & plainText,
00067 GpgME::Context::SignatureMode mode,
00068 TQByteArray & signature );
00069
00071 void showErrorDialog( TQWidget * parent, const TQString & caption ) const;
00072
00073 private slots:
00074 void slotOperationDoneEvent( GpgME::Context * context, const GpgME::Error & e ) {
00075 QGpgMEJob::doSlotOperationDoneEvent( context, e );
00076 }
00077
00078 private:
00079 void doOperationDoneEvent( const GpgME::Error & e );
00080 GpgME::Error setup( const std::vector<GpgME::Key> &, const TQByteArray & );
00081
00082 private:
00083 GpgME::SigningResult mResult;
00084 };
00085
00086 }
00087
00088 #endif // __KLEO_TQGPGMESIGNJOB_H__