kmail
networkaccount.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 #ifndef __KMAIL_NETWORKACCOUNT_H__
00026 #define __KMAIL_NETWORKACCOUNT_H__
00027
00028 #include <tqguardedptr.h>
00029
00030 #include "kmaccount.h"
00031
00032 #include "sieveconfig.h"
00033
00034 #include <tqstring.h>
00035
00036 class AccountManager;
00037 class KConfig;
00038 class KURL;
00039 namespace KIO {
00040 class Slave;
00041 class MetaData;
00042 }
00043
00044 namespace KMail {
00045
00046 class NetworkAccount : public KMAccount {
00047 Q_OBJECT
00048 protected:
00049 NetworkAccount( AccountManager * parent, const TQString & name, uint id );
00050 public:
00051 virtual ~NetworkAccount();
00052
00054 virtual void init();
00055
00057 virtual void pseudoAssign( const KMAccount * a );
00058
00060 TQString login() const { return mLogin; }
00061 virtual void setLogin( const TQString & login );
00062
00064 TQString passwd() const;
00065 virtual void setPasswd( const TQString & passwd, bool storeInConfig=false );
00066
00070 virtual void clearPasswd();
00071
00073 TQString auth() const { return mAuth; }
00074 virtual void setAuth( const TQString & auth );
00075
00077 bool storePasswd() const { return mStorePasswd; }
00078 virtual void setStorePasswd( bool store );
00079
00081 TQString host() const { return mHost; }
00082 virtual void setHost( const TQString & host );
00083
00085 unsigned short int port() const { return mPort; }
00086 virtual void setPort( unsigned short int port );
00087
00089 bool useSSL() const { return mUseSSL; }
00090 virtual void setUseSSL( bool use );
00091
00093 bool useTLS() const { return mUseTLS; }
00094 virtual void setUseTLS( bool use );
00095
00097 KMail::SieveConfig sieveConfig() const { return mSieveConfig; }
00098 virtual void setSieveConfig( const KMail::SieveConfig & config );
00099
00101 virtual KIO::MetaData slaveConfig() const;
00102
00103 virtual void readConfig( KConfig & config );
00104 virtual void writeConfig( KConfig & config ) ;
00105
00107 virtual KURL getUrl() const;
00108
00110 KIO::Slave * slave() const { return mSlave; }
00111
00113 virtual void killAllJobs( bool disconnectSlave = false ) = 0;
00114
00116 void readPassword();
00117
00118 virtual bool mailCheckCanProceed() const;
00119
00120 virtual void setCheckingMail( bool checking );
00121
00123 static void resetConnectionList( NetworkAccount* acct );
00124 protected:
00125 virtual TQString protocol() const = 0;
00126 virtual unsigned short int defaultPort() const = 0;
00127
00128 protected:
00129 KMail::SieveConfig mSieveConfig;
00130 TQGuardedPtr<KIO::Slave> mSlave;
00131 TQString mLogin, mPasswd, mAuth, mHost;
00132 unsigned short int mPort;
00133 bool mStorePasswd : 1;
00134 bool mUseSSL : 1;
00135 bool mUseTLS : 1;
00136 bool mAskAgain : 1;
00137 bool mPasswdDirty, mStorePasswdInConfig;
00138 };
00139
00140 }
00141
00142 #endif // __KMAIL_NETWORKACCOUNT_H__
|