kpilot/lib
kpilotlink.hGo to the documentation of this file.00001 #ifndef _KPILOT_KPILOTLINK_H
00002 #define _KPILOT_KPILOTLINK_H
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 #include <pi-dlp.h>
00033
00034 #include <tqobject.h>
00035 #include <tqvaluelist.h>
00036
00043 class TQThread;
00044 class KPilotUser;
00045 class KPilotSysInfo;
00046 class KPilotCard;
00047 class PilotDatabase;
00048
00049
00050
00171 class KDE_EXPORT KPilotLink : public QObject
00172 {
00173 Q_OBJECT
00174 friend class SyncAction;
00175 public:
00177 typedef TQValueList<struct DBInfo> DBInfoList;
00178
00180 KPilotLink( TQObject *parent = 0, const char *name = 0 );
00181
00186 virtual ~KPilotLink();
00187
00188
00190 virtual TQString statusString() const = 0;
00191
00196 virtual bool isConnected() const = 0;
00197
00198
00207 TQString pilotPath() const
00208 {
00209 return fPilotPath;
00210 }
00211
00220 virtual void reset(const TQString &pilotPath) = 0;
00221
00226 virtual bool event(TQEvent *e);
00227
00235 unsigned int installFiles(const TQStringList &l, const bool deleteFiles);
00236
00244 void addSyncLogEntry(const TQString &entry,bool log=true);
00245
00256 virtual int findDatabase(const char *name,
00257 struct DBInfo *info,
00258 int index=0,
00259 unsigned long type=0,
00260 unsigned long creator=0) = 0;
00261
00269 virtual bool retrieveDatabase(const TQString &path, struct DBInfo *db) = 0;
00270
00278 virtual int getNextDatabase(int index,struct DBInfo *db) = 0;
00279
00292 virtual DBInfoList getDBList(int cardno=0, int flags=dlpDBListRAM) = 0;
00293
00303 virtual PilotDatabase *database( const TQString &name ) = 0;
00304
00313 virtual PilotDatabase *database( const DBInfo *info );
00314
00323 KPilotUser &getPilotUser()
00324 {
00325 return *fPilotUser;
00326 }
00327
00335 const KPilotSysInfo &getSysInfo()
00336 {
00337 return *fPilotSysInfo;
00338 }
00339
00351 virtual const KPilotCard *getCardInfo(int card=0) = 0;
00352
00359 enum EndOfSyncFlags {
00360 NoUpdate,
00361 UpdateUserInfo
00362 } ;
00363
00367 enum CustomEvents {
00368 EventTickleTimeout = 1066
00369 };
00370
00376 virtual void endSync( EndOfSyncFlags f ) = 0;
00377
00378 signals:
00387 void timeout();
00388
00390 void logMessage(const TQString &);
00391
00393 void logError(const TQString &);
00394
00400 void logProgress(const TQString &s, int p);
00401
00406 void deviceReady( KPilotLink * );
00407
00408
00409 public slots:
00414 virtual void close() = 0;
00415
00421 virtual void reset() = 0;
00422
00424 virtual bool tickle() = 0;
00425
00426 protected:
00432 TQString fPilotPath;
00433
00442 void startTickle(unsigned int timeout=0);
00443
00449 void stopTickle();
00450
00456 virtual bool installFile( const TQString &f, const bool deleteFile ) = 0;
00457
00466 virtual int openConduit();
00467
00474 virtual int pilotSocket() const;
00475
00480 virtual void addSyncLogEntryImpl( const TQString &s ) = 0;
00481
00486 KPilotUser *fPilotUser;
00487
00492 KPilotSysInfo *fPilotSysInfo;
00493
00494
00495 private:
00496 bool fTickleDone;
00497 TQThread *fTickleThread;
00498
00499 } ;
00500
00501 #endif
|