listjob.h
00001
00028
#ifndef LISTJOB_H
00029
#define LISTJOB_H
00030
00031
#include "folderjob.h"
00032
#include "imapaccountbase.h"
00033
00034
class KMFolderImap;
00035
class KMFolderCachedImap;
00036
class KMAcctImap;
00037
class KMAcctCachedImap;
00038
class FolderStorage;
00039
class KURL;
00040
00041
namespace KIO {
00042
class Job;
00043 }
00044
00045
namespace KPIM {
00046
class ProgressItem;
00047 }
00048
00049
namespace KMail {
00050
00054 class ListJob :
public FolderJob
00055 {
00056 Q_OBJECT
00057
public:
00069
ListJob(
FolderStorage* storage, ImapAccountBase* account,
00070 ImapAccountBase::ListType type,
00071
bool secondStep =
false,
bool complete =
false,
00072
bool hasInbox =
false,
const QString& path = QString::null,
00073 KPIM::ProgressItem* item = 0 );
00074
00075
virtual ~
ListJob();
00076
00077
virtual void execute();
00078
00079
protected:
00083
void doListing(
const KURL& url,
const ImapAccountBase::jobData& jd );
00084
00085
protected slots:
00090
void slotListResult( KIO::Job* job );
00091
00095
void slotListEntries( KIO::Job* job,
const KIO::UDSEntryList& uds );
00096
00100
void slotConnectionResult(
int errorCode,
const QString& errorMsg );
00101
00102 signals:
00106
void receivedFolders(
const QStringList&,
const QStringList&,
00107
const QStringList&,
const QStringList&,
const ImapAccountBase::jobData& );
00108
00109
protected:
00110
FolderStorage* mStorage;
00111 ImapAccountBase* mAccount;
00112 ImapAccountBase::ListType mType;
00113
bool mHasInbox;
00114
bool mSecondStep;
00115
bool mComplete;
00116
QString mPath;
00117
QStringList mSubfolderNames, mSubfolderPaths,
00118 mSubfolderMimeTypes, mSubfolderAttributes;
00119 KPIM::ProgressItem* mParentProgressItem;
00120 };
00121
00122 }
00123
00124
#endif
00125
This file is part of the documentation for kmail Library Version 3.3.0.