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 
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 } // namespace
00123 
00124 #endif /* LISTJOB_H */
00125 
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 Mar 23 22:43:53 2005 by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2003