00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
#ifndef __QGPGME_EVENTLOOPINTERACTOR_H__
00022
#define __QGPGME_EVENTLOOPINTERACTOR_H__
00023
00024
#include <gpgmepp/eventloopinteractor.h>
00025
00026
#include <qobject.h>
00027
00028
namespace GpgME {
00029
class Context;
00030
class Error;
00031
class TrustItem;
00032
class Key;
00033 }
00034
00035
namespace QGpgME {
00036
00037
class EventLoopInteractor :
public QObject,
public GpgME::EventLoopInteractor {
00038 Q_OBJECT
00039
protected:
00040 EventLoopInteractor(
QObject * parent,
const char * name=0 );
00041
public:
00042
virtual ~EventLoopInteractor();
00043
00044
static EventLoopInteractor * instance();
00045
00046 signals:
00047
void nextTrustItemEventSignal( GpgME::Context * context,
const GpgME::TrustItem & item );
00048
void nextKeyEventSignal( GpgME::Context * context,
const GpgME::Key & key );
00049
void operationDoneEventSignal( GpgME::Context * context,
const GpgME::Error & e );
00050
00051
void aboutToDestroy();
00052
00053
protected slots:
00054
void slotWriteActivity(
int socket );
00055
void slotReadActivity(
int socket );
00056
00057
protected:
00058
00059
00060
00061
00063
void * registerWatcher(
int fd, Direction dir,
bool & ok );
00065
void unregisterWatcher(
void * tag );
00066
00067
00068
00069
00070
00072
void nextTrustItemEvent( GpgME::Context * context,
const GpgME::TrustItem & item );
00074
void nextKeyEvent( GpgME::Context * context,
const GpgME::Key & key );
00076
void operationDoneEvent( GpgME::Context * context,
const GpgME::Error & e );
00077
00078
private:
00079
class Private;
00080 Private * d;
00081
static EventLoopInteractor * mSelf;
00082 };
00083
00084 }
00085
00086
#endif // __QGPGME_EVENTLOOPINTERACTOR_H__
00087
00088