1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
/* -*- c++ -*-
sieveconfig.h
KMail, the KDE mail client.
Copyright (c) 2002 Marc Mutz <[email protected]>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License,
version 2.0, as published by the Free Software Foundation.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, US
*/
#ifndef __KMAIL_SIEVECONFIG_H__
#define __KMAIL_SIEVECONFIG_H__
#include <tqwidget.h>
#include <kurl.h>
class TQCheckBox;
class TQLineEdit;
class KIntSpinBox;
class KConfigBase;
namespace KMail {
class SieveConfig {
public:
SieveConfig( bool managesieveSupported=false, bool reuseConfig=true,
unsigned int port=2000, const KURL & alternateURL=KURL(),
const TQString& vacationFileName = TQString() )
: mManagesieveSupported( managesieveSupported ),
mReuseConfig( reuseConfig ),
mPort( port ),
mAlternateURL( alternateURL ),
mVacationFileName( vacationFileName ) {}
SieveConfig( const SieveConfig & other )
: mManagesieveSupported( other.managesieveSupported() ),
mReuseConfig( other.reuseConfig() ),
mPort( other.port() ),
mAlternateURL( other.alternateURL() ),
mVacationFileName( other.vacationFileName() ) {}
bool managesieveSupported() const {
return mManagesieveSupported;
}
void setManagesieveSupported( bool enable ) {
mManagesieveSupported = enable;
}
bool reuseConfig() const {
return mReuseConfig;
}
void setReuseConfig( bool reuse ) {
mReuseConfig = reuse;
}
unsigned short port() const {
return mPort;
}
void setPort( unsigned short port ) {
mPort = port;
}
KURL alternateURL() const {
return mAlternateURL;
}
void setAlternateURL( const KURL & url ) {
mAlternateURL = url;
}
TQString vacationFileName() const { return mVacationFileName; }
void readConfig( const KConfigBase & config );
void writeConfig( KConfigBase & config ) const;
protected:
bool mManagesieveSupported;
bool mReuseConfig;
unsigned short mPort;
KURL mAlternateURL;
TQString mVacationFileName;
};
class SieveConfigEditor : public TQWidget {
Q_OBJECT
TQ_OBJECT
public:
SieveConfigEditor( TQWidget * parent=0, const char * name=0 );
bool managesieveSupported() const;
virtual void setManagesieveSupported( bool enable );
bool reuseConfig() const;
virtual void setReuseConfig( bool reuse );
unsigned short port() const;
virtual void setPort( unsigned short port );
KURL alternateURL() const;
virtual void setAlternateURL( const KURL & url );
TQString vacationFileName() const;
virtual void setVacationFileName( const TQString & url );
SieveConfig config() const {
return SieveConfig( managesieveSupported(), reuseConfig(),
port(), alternateURL(), vacationFileName() );
}
virtual void setConfig( const SieveConfig & config );
protected slots:
void slotEnableWidgets();
protected:
TQCheckBox * mManagesieveCheck;
TQCheckBox * mSameConfigCheck;
KIntSpinBox * mPortSpin;
TQLineEdit * mAlternateURLEdit;
TQString mVacationFileName;
};
} // namespace KMail
#endif // __KMAIL_SIEVECONFIG_H__
|