kmail Library API Documentation

expirejob.h

00001 
00028 #ifndef EXPIREJOB_H
00029 #define EXPIREJOB_H
00030 
00031 #include "jobscheduler.h"
00032 #include "kmcommands.h"
00033 
00034 namespace KMail {
00035 
00036 class ExpireJob : public ScheduledJob
00037 {
00038   Q_OBJECT
00039 public:
00040   ExpireJob( KMFolder* folder, bool immediate );
00041   virtual ~ExpireJob();
00042 
00043   virtual void execute();
00044   virtual void kill();
00045 
00046 private slots:
00047   void slotDoWork();
00048   void slotMessagesMoved( KMCommand *command );
00049 
00050 private:
00051   void done();
00052 
00053 private:
00054   QTimer mTimer;
00055   QPtrList<KMMsgBase> mRemovedMsgs;
00056   int mCurrentIndex;
00057   int mMaxUnreadTime;
00058   int mMaxReadTime;
00059   bool mFolderOpen;
00060   KMFolder *mMoveToFolder;
00061 };
00062 
00064 class ScheduledExpireTask : public ScheduledTask
00065 {
00066 public:
00069   ScheduledExpireTask( KMFolder* folder, bool immediate )
00070     : ScheduledTask( folder, immediate ) {}
00071   virtual ~ScheduledExpireTask() {}
00072   virtual ScheduledJob* run() {
00073     return folder() ? new ExpireJob( folder(), isImmediate() ) : 0;
00074   }
00075   virtual int taskTypeId() const { return 1; }
00076 };
00077 
00078 } // namespace
00079 
00080 #endif /* EXPIREJOB_H */
00081 
KDE Logo
This file is part of the documentation for kmail Library Version 3.3.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Thu May 3 20:22:51 2007 by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2003