kmail
listjob.h00001
00002
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 #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:
00068 ListJob( ImapAccountBase* account, ImapAccountBase::ListType type,
00069 FolderStorage* storage = 0, const QString& path = QString::null,
00070 bool complete = false, KPIM::ProgressItem* item = 0 );
00071
00072 virtual ~ListJob();
00073
00074 virtual void execute();
00075
00077 void setPath( const QString& path ) { mPath = path; }
00078
00080 void setStorage( FolderStorage* st ) { mStorage = st; }
00081
00083 void setComplete( bool complete ) { mComplete = complete; }
00084
00086 void setParentProgressItem( KPIM::ProgressItem* it ) {
00087 mParentProgressItem = it; }
00088
00090 void setNamespace( const QString& ns ) { mNamespace = ns; }
00091
00092 protected:
00096 void doListing( const KURL& url, const ImapAccountBase::jobData& jd );
00097
00098 protected slots:
00103 void slotListResult( KIO::Job* job );
00104
00108 void slotListEntries( KIO::Job* job, const KIO::UDSEntryList& uds );
00109
00113 void slotConnectionResult( int errorCode, const QString& errorMsg );
00114
00115 signals:
00119 void receivedFolders( const QStringList&, const QStringList&,
00120 const QStringList&, const QStringList&, const ImapAccountBase::jobData& );
00121
00122 protected:
00123 FolderStorage* mStorage;
00124 ImapAccountBase* mAccount;
00125 ImapAccountBase::ListType mType;
00126 bool mComplete;
00127 QString mPath;
00128 QStringList mSubfolderNames, mSubfolderPaths,
00129 mSubfolderMimeTypes, mSubfolderAttributes;
00130 KPIM::ProgressItem* mParentProgressItem;
00131 QString mNamespace;
00132 };
00133
00134 }
00135
00136 #endif
00137
|