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 }
00079
00080
#endif
00081
This file is part of the documentation for kmail Library Version 3.3.0.