kmacctimap.h
00001
00022 #ifndef KMAcctImap_h
00023 #define KMAcctImap_h
00024
00025 #include "imapaccountbase.h"
00026
00027 class KMFolderImap;
00028 class KMFolderTreeItem;
00029 namespace KMail {
00030 class ImapJob;
00031 }
00032 namespace KIO {
00033 class Job;
00034 }
00035
00036
00037 class KMAcctImap: public KMail::ImapAccountBase
00038 {
00039 Q_OBJECT
00040 friend class KMail::ImapJob;
00041
00042 protected:
00043 void setPrefixHook();
00044
00045 public:
00046 virtual ~KMAcctImap();
00047
00049 virtual void pseudoAssign( const KMAccount * a );
00050
00054 virtual QString type(void) const;
00055 virtual void processNewMail(bool);
00056
00060 virtual void ignoreJobsForMessage( KMMessage * msg );
00061 virtual void ignoreJobsForFolder( KMFolder * folder );
00062 virtual void removeSlaveJobsForFolder( KMFolder * folder );
00063
00067 void killAllJobs( bool disconnectSlave=false );
00068
00072 void setIdle(bool aIdle) { mIdle = aIdle; }
00073
00077 virtual void setImapFolder(KMFolderImap *);
00078
00085 void listDirectory(QString path, bool onlySubscribed,
00086 bool secondStep = FALSE, KMFolder* parent = NULL, bool reset = false);
00087
00091 virtual void listDirectory();
00092
00098 virtual void readConfig(KConfig& config);
00099
00100 public slots:
00101 void processNewMail() { processNewMail(TRUE); }
00102
00106 void slotSlaveError(KIO::Slave *aSlave, int, const QString &errorMsg);
00107
00111 void slotUpdateFolderList();
00112
00113 protected:
00114 friend class KMAcctMgr;
00115 friend class KMPasswdDialog;
00116 KMAcctImap(KMAcctMgr* owner, const QString& accountName);
00117
00118 QPtrList<KMail::ImapJob> mJobList;
00119 QGuardedPtr<KMFolderImap> mFolder;
00120
00121 protected slots:
00125 void slotIdleTimeout();
00126
00130 void slotAbortRequested();
00131
00135 void slotSimpleResult(KIO::Job * job);
00136
00138 void postProcessNewMail(KMFolderImap*, bool);
00139 void postProcessNewMail( KMFolder * f ) { ImapAccountBase::postProcessNewMail( f ); }
00140
00141 };
00142
00143 #endif
This file is part of the documentation for kmail Library Version 3.2.2.