summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/editaccounts.cpp29
-rw-r--r--noncore/net/mail/opiemail.cpp9
-rw-r--r--noncore/net/mail/opiemail.h5
3 files changed, 25 insertions, 18 deletions
diff --git a/noncore/net/mail/editaccounts.cpp b/noncore/net/mail/editaccounts.cpp
index 1c80adb..1246037 100644
--- a/noncore/net/mail/editaccounts.cpp
+++ b/noncore/net/mail/editaccounts.cpp
@@ -7,30 +7,30 @@ AccountListItem::AccountListItem( QListView *parent, Account *a)
7 : QListViewItem( parent ) 7 : QListViewItem( parent )
8{ 8{
9 account = a; 9 account = a;
10 setText( 0, account->getAccountName() ); 10 setText( 0, account->getAccountName() );
11 setText( 1, account->getType() ); 11 setText( 1, account->getType() );
12} 12}
13 13
14EditAccounts::EditAccounts( Settings *s, QWidget *parent, const char *name, bool modal, WFlags flags ) 14EditAccounts::EditAccounts( Settings *s, QWidget *parent, const char *name, bool modal, WFlags flags )
15 : EditAccountsUI( parent, name, modal, flags ) 15 : EditAccountsUI( parent, name, modal, flags )
16{ 16{
17 qDebug( "New Account Configuration Widget" ); 17 qDebug( "New Account Configuration Widget" );
18 settings = s; 18 settings = s;
19 19
20 mailList->addColumn( tr( "Account" ) ); 20 mailList->addColumn( tr( "Account" ) );
21 mailList->addColumn( tr( "Type" ) ); 21 mailList->addColumn( tr( "Type" ) );
22 22
23 newsList->addColumn( tr( "Account" ) ); 23 newsList->addColumn( tr( "Account" ) );
24 24
25 connect( newMail, SIGNAL( clicked() ), SLOT( slotNewMail() ) ); 25 connect( newMail, SIGNAL( clicked() ), SLOT( slotNewMail() ) );
26 connect( editMail, SIGNAL( clicked() ), SLOT( slotEditMail() ) ); 26 connect( editMail, SIGNAL( clicked() ), SLOT( slotEditMail() ) );
27 connect( deleteMail, SIGNAL( clicked() ), SLOT( slotDeleteMail() ) ); 27 connect( deleteMail, SIGNAL( clicked() ), SLOT( slotDeleteMail() ) );
28 connect( newNews, SIGNAL( clicked() ), SLOT( slotNewNews() ) ); 28 connect( newNews, SIGNAL( clicked() ), SLOT( slotNewNews() ) );
29 connect( editNews, SIGNAL( clicked() ), SLOT( slotEditNews() ) ); 29 connect( editNews, SIGNAL( clicked() ), SLOT( slotEditNews() ) );
30 connect( deleteNews, SIGNAL( clicked() ), SLOT( slotDeleteNews() ) ); 30 connect( deleteNews, SIGNAL( clicked() ), SLOT( slotDeleteNews() ) );
31 31
32 slotFillLists(); 32 slotFillLists();
33} 33}
34 34
35void EditAccounts::slotFillLists() 35void EditAccounts::slotFillLists()
36{ 36{
@@ -61,48 +61,49 @@ void EditAccounts::slotNewMail()
61 61
62void EditAccounts::slotNewAccount( const QString &type ) 62void EditAccounts::slotNewAccount( const QString &type )
63{ 63{
64 if ( type.compare( "IMAP" ) == 0 ) { 64 if ( type.compare( "IMAP" ) == 0 ) {
65 qDebug( "-> config IMAP" ); 65 qDebug( "-> config IMAP" );
66 IMAPaccount *account = new IMAPaccount(); 66 IMAPaccount *account = new IMAPaccount();
67 IMAPconfig imap( account, this, 0, true ); 67 IMAPconfig imap( account, this, 0, true );
68 imap.showMaximized(); 68 imap.showMaximized();
69 if ( QDialog::Accepted == imap.exec() ) { 69 if ( QDialog::Accepted == imap.exec() ) {
70 settings->addAccount( account ); 70 settings->addAccount( account );
71 account->save(); 71 account->save();
72 slotFillLists(); 72 slotFillLists();
73 } else { 73 } else {
74 account->remove(); 74 account->remove();
75 } 75 }
76 } else if ( type.compare( "POP3" ) == 0 ) { 76 } else if ( type.compare( "POP3" ) == 0 ) {
77 qDebug( "-> config POP3" ); 77 qDebug( "-> config POP3" );
78 POP3account *account = new POP3account(); 78 POP3account *account = new POP3account();
79 POP3config pop3( account, this, 0, true ); 79 POP3config pop3( account, this, 0, true );
80 pop3.showMaximized(); 80 pop3.showMaximized();
81 if ( QDialog::Accepted == pop3.exec() ) { 81 if ( QDialog::Accepted == pop3.exec() ) {
82 settings->addAccount( account ); 82 settings->addAccount( account );
83 account->save(); 83 account->save();
84 slotFillLists(); 84 slotFillLists();
85 } else { 85 } else {
86 account->remove(); 86 account->remove();
87 } 87 }
88 } else if ( type.compare( "SMTP" ) == 0 ) { 88 } else if ( type.compare( "SMTP" ) == 0 ) {
89 qDebug( "-> config SMTP" ); 89 qDebug( "-> config SMTP" );
90 SMTPaccount *account = new SMTPaccount(); 90 SMTPaccount *account = new SMTPaccount();
91 SMTPconfig smtp( account, this, 0, true ); 91 SMTPconfig smtp( account, this, 0, true );
92 smtp.showMaximized(); 92 smtp.showMaximized();
93 if ( QDialog::Accepted == smtp.exec() ) { 93 if ( QDialog::Accepted == smtp.exec() ) {
94 settings->addAccount( account ); 94 settings->addAccount( account );
95 account->save(); 95 account->save();
96 slotFillLists(); 96 slotFillLists();
97
97 } else { 98 } else {
98 account->remove(); 99 account->remove();
99 } 100 }
100 } else if ( type.compare( "NNTP" ) == 0 ) { 101 } else if ( type.compare( "NNTP" ) == 0 ) {
101 qDebug( "-> config NNTP" ); 102 qDebug( "-> config NNTP" );
102 NNTPaccount *account = new NNTPaccount(); 103 NNTPaccount *account = new NNTPaccount();
103 NNTPconfig nntp( account, this, 0, true ); 104 NNTPconfig nntp( account, this, 0, true );
104 nntp.showMaximized(); 105 nntp.showMaximized();
105 if ( QDialog::Accepted == nntp.exec() ) { 106 if ( QDialog::Accepted == nntp.exec() ) {
106 settings->addAccount( account ); 107 settings->addAccount( account );
107 account->save(); 108 account->save();
108 slotFillLists(); 109 slotFillLists();
@@ -138,111 +139,111 @@ void EditAccounts::slotEditAccount( Account *account )
138 } else if ( account->getType().compare( "NNTP" ) == 0 ) { 139 } else if ( account->getType().compare( "NNTP" ) == 0 ) {
139 NNTPaccount *nntpAcc = static_cast<NNTPaccount *>(account); 140 NNTPaccount *nntpAcc = static_cast<NNTPaccount *>(account);
140 NNTPconfig nntp( nntpAcc, this, 0, true ); 141 NNTPconfig nntp( nntpAcc, this, 0, true );
141 nntp.showMaximized(); 142 nntp.showMaximized();
142 if ( QDialog::Accepted == nntp.exec() ) { 143 if ( QDialog::Accepted == nntp.exec() ) {
143 slotFillLists(); 144 slotFillLists();
144 } 145 }
145 } 146 }
146} 147}
147 148
148void EditAccounts::slotDeleteAccount( Account *account ) 149void EditAccounts::slotDeleteAccount( Account *account )
149{ 150{
150 if ( QMessageBox::information( this, tr( "Question" ), 151 if ( QMessageBox::information( this, tr( "Question" ),
151 tr( "<p>Do you really want to delete the selected Account?</p>" ), 152 tr( "<p>Do you really want to delete the selected Account?</p>" ),
152 tr( "Yes" ), tr( "No" ) ) == 0 ) { 153 tr( "Yes" ), tr( "No" ) ) == 0 ) {
153 settings->delAccount( account ); 154 settings->delAccount( account );
154 slotFillLists(); 155 slotFillLists();
155 } 156 }
156} 157}
157 158
158void EditAccounts::slotEditMail() 159void EditAccounts::slotEditMail()
159{ 160{
160 qDebug( "Edit Mail Account" ); 161 qDebug( "Edit Mail Account" );
161 if ( !mailList->currentItem() ) { 162 if ( !mailList->currentItem() ) {
162 QMessageBox::information( this, tr( "Error" ), 163 QMessageBox::information( this, tr( "Error" ),
163 tr( "<p>Please select an account.</p>" ), 164 tr( "<p>Please select an account.</p>" ),
164 tr( "Ok" ) ); 165 tr( "Ok" ) );
165 return; 166 return;
166 } 167 }
167 168
168 Account *a = ((AccountListItem *) mailList->currentItem())->getAccount(); 169 Account *a = ((AccountListItem *) mailList->currentItem())->getAccount();
169 slotEditAccount( a ); 170 slotEditAccount( a );
170} 171}
171 172
172void EditAccounts::slotDeleteMail() 173void EditAccounts::slotDeleteMail()
173{ 174{
174 if ( !mailList->currentItem() ) { 175 if ( !mailList->currentItem() ) {
175 QMessageBox::information( this, tr( "Error" ), 176 QMessageBox::information( this, tr( "Error" ),
176 tr( "<p>Please select an account.</p>" ), 177 tr( "<p>Please select an account.</p>" ),
177 tr( "Ok" ) ); 178 tr( "Ok" ) );
178 return; 179 return;
179 } 180 }
180 181
181 Account *a = ((AccountListItem *) mailList->currentItem())->getAccount(); 182 Account *a = ((AccountListItem *) mailList->currentItem())->getAccount();
182 slotDeleteAccount( a ); 183 slotDeleteAccount( a );
183} 184}
184 185
185void EditAccounts::slotNewNews() 186void EditAccounts::slotNewNews()
186{ 187{
187 qDebug( "New News Account" ); 188 qDebug( "New News Account" );
188 slotNewAccount( "NNTP" ); 189 slotNewAccount( "NNTP" );
189} 190}
190 191
191void EditAccounts::slotEditNews() 192void EditAccounts::slotEditNews()
192{ 193{
193 qDebug( "Edit News Account" ); 194 qDebug( "Edit News Account" );
194 if ( !newsList->currentItem() ) { 195 if ( !newsList->currentItem() ) {
195 QMessageBox::information( this, tr( "Error" ), 196 QMessageBox::information( this, tr( "Error" ),
196 tr( "<p>Please select an account.</p>" ), 197 tr( "<p>Please select an account.</p>" ),
197 tr( "Ok" ) ); 198 tr( "Ok" ) );
198 return; 199 return;
199 } 200 }
200 201
201 Account *a = ((AccountListItem *) newsList->currentItem())->getAccount(); 202 Account *a = ((AccountListItem *) newsList->currentItem())->getAccount();
202 slotEditAccount( a ); 203 slotEditAccount( a );
203} 204}
204 205
205void EditAccounts::slotDeleteNews() 206void EditAccounts::slotDeleteNews()
206{ 207{
207 qDebug( "Delete News Account" ); 208 qDebug( "Delete News Account" );
208 if ( !newsList->currentItem() ) { 209 if ( !newsList->currentItem() ) {
209 QMessageBox::information( this, tr( "Error" ), 210 QMessageBox::information( this, tr( "Error" ),
210 tr( "<p>Please select an account.</p>" ), 211 tr( "<p>Please select an account.</p>" ),
211 tr( "Ok" ) ); 212 tr( "Ok" ) );
212 return; 213 return;
213 } 214 }
214 215
215 Account *a = ((AccountListItem *) newsList->currentItem())->getAccount(); 216 Account *a = ((AccountListItem *) newsList->currentItem())->getAccount();
216 slotDeleteAccount( a ); 217 slotDeleteAccount( a );
217} 218}
218 219
219void EditAccounts::slotAdjustColumns() 220void EditAccounts::slotAdjustColumns()
220{ 221{
221 int currPage = configTab->currentPageIndex(); 222 int currPage = configTab->currentPageIndex();
222 223
223 configTab->showPage( mailTab ); 224 configTab->showPage( mailTab );
224 mailList->setColumnWidth( 0, mailList->visibleWidth() - 50 ); 225 mailList->setColumnWidth( 0, mailList->visibleWidth() - 50 );
225 mailList->setColumnWidth( 1, 50 ); 226 mailList->setColumnWidth( 1, 50 );
226 227
227 configTab->showPage( newsTab ); 228 configTab->showPage( newsTab );
228 newsList->setColumnWidth( 0, newsList->visibleWidth() ); 229 newsList->setColumnWidth( 0, newsList->visibleWidth() );
229 230
230 configTab->setCurrentPage( currPage ); 231 configTab->setCurrentPage( currPage );
231} 232}
232 233
233void EditAccounts::accept() 234void EditAccounts::accept()
234{ 235{
235 settings->saveAccounts(); 236 settings->saveAccounts();
236 237
237 QDialog::accept(); 238 QDialog::accept();
238} 239}
239 240
240/** 241/**
241 * SelectMailType 242 * SelectMailType
242 */ 243 */
243 244
244SelectMailType::SelectMailType( QString *selection, QWidget *parent, const char *name, bool modal, WFlags flags ) 245SelectMailType::SelectMailType( QString *selection, QWidget *parent, const char *name, bool modal, WFlags flags )
245 : SelectMailTypeUI( parent, name, modal, flags ) 246 : SelectMailTypeUI( parent, name, modal, flags )
246{ 247{
247 selected = selection; 248 selected = selection;
248 selected->replace( 0, selected->length(), typeBox->currentText() ); 249 selected->replace( 0, selected->length(), typeBox->currentText() );
@@ -253,25 +254,25 @@ void SelectMailType::slotSelection( const QString &sel )
253{ 254{
254 selected->replace( 0, selected->length(), sel ); 255 selected->replace( 0, selected->length(), sel );
255} 256}
256 257
257/** 258/**
258 * IMAPconfig 259 * IMAPconfig
259 */ 260 */
260 261
261IMAPconfig::IMAPconfig( IMAPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags ) 262IMAPconfig::IMAPconfig( IMAPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags )
262 : IMAPconfigUI( parent, name, modal, flags ) 263 : IMAPconfigUI( parent, name, modal, flags )
263{ 264{
264 data = account; 265 data = account;
265 266
266 fillValues(); 267 fillValues();
267 268
268 connect( sslBox, SIGNAL( toggled( bool ) ), SLOT( slotSSL( bool ) ) ); 269 connect( sslBox, SIGNAL( toggled( bool ) ), SLOT( slotSSL( bool ) ) );
269} 270}
270 271
271void IMAPconfig::slotSSL( bool enabled ) 272void IMAPconfig::slotSSL( bool enabled )
272{ 273{
273 if ( enabled ) { 274 if ( enabled ) {
274 portLine->setText( IMAP_SSL_PORT ); 275 portLine->setText( IMAP_SSL_PORT );
275 } else { 276 } else {
276 portLine->setText( IMAP_PORT ); 277 portLine->setText( IMAP_PORT );
277 } 278 }
@@ -420,25 +421,25 @@ void SMTPconfig::accept()
420 421
421/** 422/**
422 * NNTPconfig 423 * NNTPconfig
423 */ 424 */
424 425
425NNTPconfig::NNTPconfig( NNTPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags ) 426NNTPconfig::NNTPconfig( NNTPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags )
426 : NNTPconfigUI( parent, name, modal, flags ) 427 : NNTPconfigUI( parent, name, modal, flags )
427{ 428{
428 data = account; 429 data = account;
429 430
430 connect( loginBox, SIGNAL( toggled( bool ) ), userLine, SLOT( setEnabled( bool ) ) ); 431 connect( loginBox, SIGNAL( toggled( bool ) ), userLine, SLOT( setEnabled( bool ) ) );
431 connect( loginBox, SIGNAL( toggled( bool ) ), passLine, SLOT( setEnabled( bool ) ) ); 432 connect( loginBox, SIGNAL( toggled( bool ) ), passLine, SLOT( setEnabled( bool ) ) );
432 433
433 fillValues(); 434 fillValues();
434 435
435 connect( sslBox, SIGNAL( toggled( bool ) ), SLOT( slotSSL( bool ) ) ); 436 connect( sslBox, SIGNAL( toggled( bool ) ), SLOT( slotSSL( bool ) ) );
436} 437}
437 438
438void NNTPconfig::slotSSL( bool enabled ) 439void NNTPconfig::slotSSL( bool enabled )
439{ 440{
440 if ( enabled ) { 441 if ( enabled ) {
441 portLine->setText( NNTP_SSL_PORT ); 442 portLine->setText( NNTP_SSL_PORT );
442 } else { 443 } else {
443 portLine->setText( NNTP_PORT ); 444 portLine->setText( NNTP_PORT );
444 } 445 }
diff --git a/noncore/net/mail/opiemail.cpp b/noncore/net/mail/opiemail.cpp
index 93f3bb7..740e4cf 100644
--- a/noncore/net/mail/opiemail.cpp
+++ b/noncore/net/mail/opiemail.cpp
@@ -1,23 +1,23 @@
1#include "opiemail.h" 1#include "opiemail.h"
2#include "editaccounts.h" 2#include "editaccounts.h"
3#include "composemail.h" 3#include "composemail.h"
4 4
5OpieMail::OpieMail( QWidget *parent, const char *name, WFlags flags ) 5OpieMail::OpieMail( QWidget *parent, const char *name, WFlags flags )
6 : MainWindow( parent, name, flags ) 6 : MainWindow( parent, name, flags )
7{ 7{
8 settings = new Settings(); 8 settings = new Settings();
9 9
10 folderView->populate( settings->getAccounts() ); 10 folderView->populate( settings->getAccounts() );
11 11
12 connect( composeMail, SIGNAL( activated() ), SLOT( slotComposeMail() ) ); 12 connect( composeMail, SIGNAL( activated() ), SLOT( slotComposeMail() ) );
13 connect( sendQueued, SIGNAL( activated() ), SLOT( slotSendQueued() ) ); 13 connect( sendQueued, SIGNAL( activated() ), SLOT( slotSendQueued() ) );
14 connect( searchMails, SIGNAL( activated() ), SLOT( slotSearchMails() ) ); 14 connect( searchMails, SIGNAL( activated() ), SLOT( slotSearchMails() ) );
15 connect( editSettings, SIGNAL( activated() ), SLOT( slotEditSettings() ) ); 15 connect( editSettings, SIGNAL( activated() ), SLOT( slotEditSettings() ) );
16 connect( editAccounts, SIGNAL( activated() ), SLOT( slotEditAccounts() ) ); 16 connect( editAccounts, SIGNAL( activated() ), SLOT( slotEditAccounts() ) );
17} 17}
18 18
19void OpieMail::slotComposeMail() 19void OpieMail::slotComposeMail()
20{ 20{
21 qDebug( "Compose Mail" ); 21 qDebug( "Compose Mail" );
22 ComposeMail compose( settings, this, 0 , true ); 22 ComposeMail compose( settings, this, 0 , true );
23 compose.showMaximized(); 23 compose.showMaximized();
@@ -38,13 +38,18 @@ void OpieMail::slotSearchMails()
38void OpieMail::slotEditSettings() 38void OpieMail::slotEditSettings()
39{ 39{
40 qDebug( "Edit Settings" ); 40 qDebug( "Edit Settings" );
41} 41}
42 42
43void OpieMail::slotEditAccounts() 43void OpieMail::slotEditAccounts()
44{ 44{
45 qDebug( "Edit Accounts" ); 45 qDebug( "Edit Accounts" );
46 EditAccounts eaDialog( settings, this, 0, true ); 46 EditAccounts eaDialog( settings, this, 0, true );
47 eaDialog.showMaximized(); 47 eaDialog.showMaximized();
48 eaDialog.slotAdjustColumns(); 48 eaDialog.slotAdjustColumns();
49 eaDialog.exec(); 49 eaDialog.exec();
50 if ( settings ) delete settings;
51 settings = new Settings();
52
53 folderView->populate( settings->getAccounts() );
50} 54}
55
diff --git a/noncore/net/mail/opiemail.h b/noncore/net/mail/opiemail.h
index 7bcd818..ba60297 100644
--- a/noncore/net/mail/opiemail.h
+++ b/noncore/net/mail/opiemail.h
@@ -2,25 +2,26 @@
2#define OPIEMAIL_H 2#define OPIEMAIL_H
3 3
4#include "mainwindow.h" 4#include "mainwindow.h"
5#include "settings.h" 5#include "settings.h"
6 6
7class OpieMail : public MainWindow 7class OpieMail : public MainWindow
8{ 8{
9 Q_OBJECT 9 Q_OBJECT
10 10
11public: 11public:
12 OpieMail( QWidget *parent = 0, const char *name = 0, WFlags flags = 0 ); 12 OpieMail( QWidget *parent = 0, const char *name = 0, WFlags flags = 0 );
13 static QString appName() { return QString::fromLatin1("opiemail"); } 13 static QString appName() { return QString::fromLatin1("opiemail"); }
14protected slots: 14
15public slots:
15 void slotComposeMail(); 16 void slotComposeMail();
17protected slots:
16 void slotSendQueued(); 18 void slotSendQueued();
17 void slotSearchMails(); 19 void slotSearchMails();
18 void slotEditSettings(); 20 void slotEditSettings();
19 void slotEditAccounts(); 21 void slotEditAccounts();
20
21private: 22private:
22 Settings *settings; 23 Settings *settings;
23 24
24}; 25};
25 26
26#endif 27#endif