kmail Library API Documentation

listjob.h

00001 
00028 #ifndef LISTJOB_H
00029 #define LISTJOB_H
00030 
00031 #include "folderjob.h"
00032 #include "imapaccountbase.h"
00033 #include "qguardedptr.h"
00034 
00035 class KMFolderImap;
00036 class KMFolderCachedImap;
00037 class KMAcctImap;
00038 class KMAcctCachedImap;
00039 class FolderStorage;
00040 class KURL;
00041 
00042 namespace KIO {
00043   class Job;
00044 }
00045 
00046 namespace KPIM {
00047   class ProgressItem;
00048 }
00049 
00050 namespace KMail {
00051 
00055 class ListJob : public FolderJob
00056 {
00057   Q_OBJECT
00058 public:
00070   ListJob( FolderStorage* storage, ImapAccountBase* account,
00071            ImapAccountBase::ListType type,
00072            bool secondStep = false, bool complete = false, 
00073            bool hasInbox = false, const QString& path = QString::null,
00074            KPIM::ProgressItem* item = 0 );
00075 
00076   virtual ~ListJob();
00077 
00083   void setHonorLocalSubscription( bool value );
00084   
00090   bool honorLocalSubscription() const;
00091 
00092   virtual void execute();
00093 
00094 protected:
00098   void doListing( const KURL& url, const ImapAccountBase::jobData& jd );
00099 
00100 protected slots:
00105   void slotListResult( KIO::Job* job );
00106 
00110   void slotListEntries( KIO::Job* job, const KIO::UDSEntryList& uds );
00111 
00115   void slotConnectionResult( int errorCode, const QString& errorMsg );
00116 
00117 signals:
00121   void receivedFolders( const QStringList&, const QStringList&,
00122       const QStringList&, const QStringList&, const ImapAccountBase::jobData& );
00123 
00124 protected:
00125   FolderStorage* mStorage;
00126   ImapAccountBase* mAccount;
00127   ImapAccountBase::ListType mType;
00128   bool mHasInbox;
00129   bool mSecondStep;
00130   bool mComplete;
00131   bool mHonorLocalSubscription;
00132   QString mPath;
00133   QStringList mSubfolderNames, mSubfolderPaths, 
00134               mSubfolderMimeTypes, mSubfolderAttributes;
00135   QGuardedPtr<KPIM::ProgressItem> mParentProgressItem;
00136 };
00137 
00138 } // namespace
00139 
00140 #endif /* LISTJOB_H */
00141 
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 Wed Jul 25 11:20:18 2007 by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2003