summaryrefslogtreecommitdiffabout
path: root/kmicromail/editaccounts.cpp
Unidiff
Diffstat (limited to 'kmicromail/editaccounts.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--kmicromail/editaccounts.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/kmicromail/editaccounts.cpp b/kmicromail/editaccounts.cpp
index 49049f6..2c0f2d8 100644
--- a/kmicromail/editaccounts.cpp
+++ b/kmicromail/editaccounts.cpp
@@ -94,604 +94,610 @@ void EditAccounts::slotFillLists()
94void EditAccounts::slotNewMail() 94void EditAccounts::slotNewMail()
95{ 95{
96 QString *selection = new QString(); 96 QString *selection = new QString();
97 SelectMailType selType( selection, this, 0, true ); 97 SelectMailType selType( selection, this, 0, true );
98 selType.show(); 98 selType.show();
99 if ( QDialog::Accepted == selType.exec() ) 99 if ( QDialog::Accepted == selType.exec() )
100 { 100 {
101 slotNewAccount( *selection ); 101 slotNewAccount( *selection );
102 } 102 }
103} 103}
104 104
105void EditAccounts::slotNewAccount( const QString &type ) 105void EditAccounts::slotNewAccount( const QString &type )
106{ 106{
107 if ( type.compare( i18n("IMAP") ) == 0 ) 107 if ( type.compare( i18n("IMAP") ) == 0 )
108 { 108 {
109 IMAPaccount *account = new IMAPaccount(); 109 IMAPaccount *account = new IMAPaccount();
110 IMAPconfig imap( account, this, 0, true ); 110 IMAPconfig imap( account, this, 0, true );
111 111
112#ifndef DESKTOP_VERSION 112#ifndef DESKTOP_VERSION
113 imap.showMaximized(); 113 imap.showMaximized();
114#endif 114#endif
115 if ( QDialog::Accepted == imap.exec() ) 115 if ( QDialog::Accepted == imap.exec() )
116 { 116 {
117 settings->addAccount( account ); 117 settings->addAccount( account );
118 account->save(); 118 account->save();
119 slotFillLists(); 119 slotFillLists();
120 } 120 }
121 else 121 else
122 { 122 {
123 account->remove(); 123 account->remove();
124 } 124 }
125 } 125 }
126 else if ( type.compare( i18n("POP3") ) == 0 ) 126 else if ( type.compare( i18n("POP3") ) == 0 )
127 { 127 {
128 POP3account *account = new POP3account(); 128 POP3account *account = new POP3account();
129 POP3config pop3( account, this, 0, true, WStyle_ContextHelp ); 129 POP3config pop3( account, this, 0, true, WStyle_ContextHelp );
130 if ( QDialog::Accepted == KApplication::execDialog( &pop3 ) ) 130 if ( QDialog::Accepted == KApplication::execDialog( &pop3 ) )
131 { 131 {
132 settings->addAccount( account ); 132 settings->addAccount( account );
133 account->save(); 133 account->save();
134 slotFillLists(); 134 slotFillLists();
135 } 135 }
136 else 136 else
137 { 137 {
138 account->remove(); 138 account->remove();
139 } 139 }
140 } 140 }
141 else if ( type.compare( i18n("SMTP") ) == 0 ) 141 else if ( type.compare( i18n("SMTP") ) == 0 )
142 { 142 {
143 SMTPaccount *account = new SMTPaccount(); 143 SMTPaccount *account = new SMTPaccount();
144 SMTPconfig smtp( account, this, 0, true, WStyle_ContextHelp ); 144 SMTPconfig smtp( account, this, 0, true, WStyle_ContextHelp );
145 if ( QDialog::Accepted == KApplication::execDialog( &smtp ) ) 145 if ( QDialog::Accepted == KApplication::execDialog( &smtp ) )
146 { 146 {
147 settings->addAccount( account ); 147 settings->addAccount( account );
148 account->save(); 148 account->save();
149 slotFillLists(); 149 slotFillLists();
150 150
151 } 151 }
152 else 152 else
153 { 153 {
154 account->remove(); 154 account->remove();
155 } 155 }
156 } 156 }
157 else if ( type.compare( i18n("NNTP") ) == 0 ) 157 else if ( type.compare( i18n("NNTP") ) == 0 )
158 { 158 {
159 NNTPaccount *account = new NNTPaccount(); 159 NNTPaccount *account = new NNTPaccount();
160 NNTPconfig nntp( account, this, 0, true, WStyle_ContextHelp ); 160 NNTPconfig nntp( account, this, 0, true, WStyle_ContextHelp );
161 if ( QDialog::Accepted == KApplication::execDialog( &nntp ) ) 161 if ( QDialog::Accepted == KApplication::execDialog( &nntp ) )
162 { 162 {
163 settings->addAccount( account ); 163 settings->addAccount( account );
164 account->save(); 164 account->save();
165 slotFillLists(); 165 slotFillLists();
166 } 166 }
167 else 167 else
168 { 168 {
169 account->remove(); 169 account->remove();
170 } 170 }
171 } 171 }
172} 172}
173 173
174void EditAccounts::slotEditAccount( Account *account ) 174void EditAccounts::slotEditAccount( Account *account )
175{ 175{
176 if ( account->getType() == MAILLIB::A_IMAP ) 176 if ( account->getType() == MAILLIB::A_IMAP )
177 { 177 {
178 IMAPaccount *imapAcc = static_cast<IMAPaccount *>(account); 178 IMAPaccount *imapAcc = static_cast<IMAPaccount *>(account);
179 IMAPconfig imap( imapAcc, this, 0, true, WStyle_ContextHelp ); 179 IMAPconfig imap( imapAcc, this, 0, true, WStyle_ContextHelp );
180 if ( QDialog::Accepted == KApplication::execDialog( &imap ) ) 180 if ( QDialog::Accepted == KApplication::execDialog( &imap ) )
181 { 181 {
182 slotFillLists(); 182 slotFillLists();
183 } 183 }
184 } 184 }
185 else if ( account->getType()==MAILLIB::A_POP3 ) 185 else if ( account->getType()==MAILLIB::A_POP3 )
186 { 186 {
187 POP3account *pop3Acc = static_cast<POP3account *>(account); 187 POP3account *pop3Acc = static_cast<POP3account *>(account);
188 POP3config pop3( pop3Acc, this, 0, true, WStyle_ContextHelp ); 188 POP3config pop3( pop3Acc, this, 0, true, WStyle_ContextHelp );
189 if ( QDialog::Accepted == KApplication::execDialog( &pop3 ) ) 189 if ( QDialog::Accepted == KApplication::execDialog( &pop3 ) )
190 { 190 {
191 slotFillLists(); 191 slotFillLists();
192 } 192 }
193 } 193 }
194 else if ( account->getType()==MAILLIB::A_SMTP ) 194 else if ( account->getType()==MAILLIB::A_SMTP )
195 { 195 {
196 SMTPaccount *smtpAcc = static_cast<SMTPaccount *>(account); 196 SMTPaccount *smtpAcc = static_cast<SMTPaccount *>(account);
197 SMTPconfig smtp( smtpAcc, this, 0, true, WStyle_ContextHelp ); 197 SMTPconfig smtp( smtpAcc, this, 0, true, WStyle_ContextHelp );
198 if ( QDialog::Accepted == KApplication::execDialog( &smtp ) ) 198 if ( QDialog::Accepted == KApplication::execDialog( &smtp ) )
199 { 199 {
200 slotFillLists(); 200 slotFillLists();
201 } 201 }
202 } 202 }
203 else if ( account->getType()==MAILLIB::A_NNTP) 203 else if ( account->getType()==MAILLIB::A_NNTP)
204 { 204 {
205 NNTPaccount *nntpAcc = static_cast<NNTPaccount *>(account); 205 NNTPaccount *nntpAcc = static_cast<NNTPaccount *>(account);
206 NNTPconfig nntp( nntpAcc, this, 0, true, WStyle_ContextHelp ); 206 NNTPconfig nntp( nntpAcc, this, 0, true, WStyle_ContextHelp );
207 if ( QDialog::Accepted == KApplication::execDialog( &nntp ) ) 207 if ( QDialog::Accepted == KApplication::execDialog( &nntp ) )
208 { 208 {
209 slotFillLists(); 209 slotFillLists();
210 } 210 }
211 } 211 }
212} 212}
213 213
214void EditAccounts::slotDeleteAccount( Account *account ) 214void EditAccounts::slotDeleteAccount( Account *account )
215{ 215{
216 if ( QMessageBox::information( this, i18n( "Question" ), 216 if ( QMessageBox::information( this, i18n( "Question" ),
217 i18n( "<p>Do you really want to delete the selected Account?</p>" ), 217 i18n( "<p>Do you really want to delete the selected Account?</p>" ),
218 i18n( "Yes" ), i18n( "No" ) ) == 0 ) 218 i18n( "Yes" ), i18n( "No" ) ) == 0 )
219 { 219 {
220 settings->delAccount( account ); 220 settings->delAccount( account );
221 slotFillLists(); 221 slotFillLists();
222 } 222 }
223} 223}
224 224
225void EditAccounts::slotEditMail() 225void EditAccounts::slotEditMail()
226{ 226{
227 if ( !mailList->currentItem() ) 227 if ( !mailList->currentItem() )
228 { 228 {
229 QMessageBox::information( this, i18n( "Error" ), 229 QMessageBox::information( this, i18n( "Error" ),
230 i18n( "<p>Please select an account.</p>" ), 230 i18n( "<p>Please select an account.</p>" ),
231 i18n( "Ok" ) ); 231 i18n( "Ok" ) );
232 return; 232 return;
233 } 233 }
234 234
235 Account *a = ((AccountListItem *) mailList->currentItem())->getAccount(); 235 Account *a = ((AccountListItem *) mailList->currentItem())->getAccount();
236 slotEditAccount( a ); 236 slotEditAccount( a );
237} 237}
238 238
239void EditAccounts::slotDeleteMail() 239void EditAccounts::slotDeleteMail()
240{ 240{
241 if ( !mailList->currentItem() ) 241 if ( !mailList->currentItem() )
242 { 242 {
243 QMessageBox::information( this, i18n( "Error" ), 243 QMessageBox::information( this, i18n( "Error" ),
244 i18n( "<p>Please select an account.</p>" ), 244 i18n( "<p>Please select an account.</p>" ),
245 i18n( "Ok" ) ); 245 i18n( "Ok" ) );
246 return; 246 return;
247 } 247 }
248 248
249 Account *a = ((AccountListItem *) mailList->currentItem())->getAccount(); 249 Account *a = ((AccountListItem *) mailList->currentItem())->getAccount();
250 slotDeleteAccount( a ); 250 slotDeleteAccount( a );
251} 251}
252 252
253void EditAccounts::slotNewNews() 253void EditAccounts::slotNewNews()
254{ 254{
255 slotNewAccount( "NNTP" ); 255 slotNewAccount( "NNTP" );
256} 256}
257 257
258void EditAccounts::slotEditNews() 258void EditAccounts::slotEditNews()
259{ 259{
260 if ( !newsList->currentItem() ) 260 if ( !newsList->currentItem() )
261 { 261 {
262 QMessageBox::information( this, i18n( "Error" ), 262 QMessageBox::information( this, i18n( "Error" ),
263 i18n( "<p>Please select an account.</p>" ), 263 i18n( "<p>Please select an account.</p>" ),
264 i18n( "Ok" ) ); 264 i18n( "Ok" ) );
265 return; 265 return;
266 } 266 }
267 267
268 Account *a = ((AccountListItem *) newsList->currentItem())->getAccount(); 268 Account *a = ((AccountListItem *) newsList->currentItem())->getAccount();
269 slotEditAccount( a ); 269 slotEditAccount( a );
270} 270}
271 271
272void EditAccounts::slotDeleteNews() 272void EditAccounts::slotDeleteNews()
273{ 273{
274 if ( !newsList->currentItem() ) 274 if ( !newsList->currentItem() )
275 { 275 {
276 QMessageBox::information( this, i18n( "Error" ), 276 QMessageBox::information( this, i18n( "Error" ),
277 i18n( "<p>Please select an account.</p>" ), 277 i18n( "<p>Please select an account.</p>" ),
278 i18n( "Ok" ) ); 278 i18n( "Ok" ) );
279 return; 279 return;
280 } 280 }
281 281
282 Account *a = ((AccountListItem *) newsList->currentItem())->getAccount(); 282 Account *a = ((AccountListItem *) newsList->currentItem())->getAccount();
283 slotDeleteAccount( a ); 283 slotDeleteAccount( a );
284} 284}
285 285
286void EditAccounts::slotAdjustColumns() 286void EditAccounts::slotAdjustColumns()
287{ 287{
288 int currPage = configTab->currentPageIndex(); 288 int currPage = configTab->currentPageIndex();
289 289
290 configTab->showPage( mailTab ); 290 configTab->showPage( mailTab );
291 mailList->setColumnWidth( 0, mailList->visibleWidth() - 50 ); 291 mailList->setColumnWidth( 0, mailList->visibleWidth() - 50 );
292 mailList->setColumnWidth( 1, 50 ); 292 mailList->setColumnWidth( 1, 50 );
293 293
294 configTab->showPage( newsTab ); 294 configTab->showPage( newsTab );
295 newsList->setColumnWidth( 0, newsList->visibleWidth() ); 295 newsList->setColumnWidth( 0, newsList->visibleWidth() );
296 296
297 configTab->setCurrentPage( currPage ); 297 configTab->setCurrentPage( currPage );
298} 298}
299 299
300void EditAccounts::accept() 300void EditAccounts::accept()
301{ 301{
302 settings->saveAccounts(); 302 settings->saveAccounts();
303 303
304 QDialog::accept(); 304 QDialog::accept();
305} 305}
306 306
307/** 307/**
308 * SelectMailType 308 * SelectMailType
309 */ 309 */
310 310
311SelectMailType::SelectMailType( QString *selection, QWidget *parent, const char *name, bool modal, WFlags flags ) 311SelectMailType::SelectMailType( QString *selection, QWidget *parent, const char *name, bool modal, WFlags flags )
312 : SelectMailTypeUI( parent, name, modal, flags ) 312 : SelectMailTypeUI( parent, name, modal, flags )
313{ 313{
314 selected = selection; 314 selected = selection;
315 selected->replace( 0, selected->length(), typeBox->currentText() ); 315 selected->replace( 0, selected->length(), typeBox->currentText() );
316 connect( typeBox, SIGNAL( activated(const QString&) ), SLOT( slotSelection(const QString&) ) ); 316 connect( typeBox, SIGNAL( activated(const QString&) ), SLOT( slotSelection(const QString&) ) );
317} 317}
318 318
319void SelectMailType::slotSelection( const QString &sel ) 319void SelectMailType::slotSelection( const QString &sel )
320{ 320{
321 selected->replace( 0, selected->length(), sel ); 321 selected->replace( 0, selected->length(), sel );
322} 322}
323 323
324/** 324/**
325 * IMAPconfig 325 * IMAPconfig
326 */ 326 */
327 327
328IMAPconfig::IMAPconfig( IMAPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags ) 328IMAPconfig::IMAPconfig( IMAPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags )
329 : IMAPconfigUI( parent, name, modal, flags ) 329 : IMAPconfigUI( parent, name, modal, flags )
330{ 330{
331 data = account; 331 data = account;
332 332
333 //fillValues(); 333 //fillValues();
334 334
335 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) ); 335 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) );
336 ComboBox1->insertItem( "Only if available", 0 ); 336 ComboBox1->insertItem( "Only if available", 0 );
337 ComboBox1->insertItem( "Always, Negotiated", 1 ); 337 ComboBox1->insertItem( "Always, Negotiated", 1 );
338 ComboBox1->insertItem( "Connect on secure port", 2 ); 338 ComboBox1->insertItem( "Connect on secure port", 2 );
339 ComboBox1->insertItem( "Run command instead", 3 ); 339 ComboBox1->insertItem( "Run command instead", 3 );
340 CommandEdit->hide(); 340 CommandEdit->hide();
341 fillValues(); 341 fillValues();
342 // ComboBox1->setCurrentItem( data->ConnectionType() ); 342 // ComboBox1->setCurrentItem( data->ConnectionType() );
343} 343}
344 344
345void IMAPconfig::slotConnectionToggle( int index ) 345void IMAPconfig::slotConnectionToggle( int index )
346{ 346{
347 if ( index == 2 ) 347 if ( index == 2 )
348 { 348 {
349 portLine->setText( IMAP_SSL_PORT ); 349 portLine->setText( IMAP_SSL_PORT );
350 CommandEdit->hide();
350 } 351 }
351 else if ( index == 3 ) 352 else if ( index == 3 )
352 { 353 {
353 portLine->setText( IMAP_PORT ); 354 portLine->setText( IMAP_PORT );
354 CommandEdit->show(); 355 CommandEdit->show();
355 } 356 }
356 else 357 else
357 { 358 {
358 portLine->setText( IMAP_PORT ); 359 portLine->setText( IMAP_PORT );
360 CommandEdit->hide();
359 } 361 }
360} 362}
361 363
362void IMAPconfig::fillValues() 364void IMAPconfig::fillValues()
363{ 365{
364 accountLine->setText( data->getAccountName() ); 366 accountLine->setText( data->getAccountName() );
365 serverLine->setText( data->getServer() ); 367 serverLine->setText( data->getServer() );
366 portLine->setText( data->getPort() ); 368 portLine->setText( data->getPort() );
367 ComboBox1->setCurrentItem( data->ConnectionType() ); 369 ComboBox1->setCurrentItem( data->ConnectionType() );
368 userLine->setText( data->getUser() ); 370 userLine->setText( data->getUser() );
369 passLine->setText( data->getPassword() ); 371 passLine->setText( data->getPassword() );
370 prefixLine->setText(data->getPrefix()); 372 prefixLine->setText(data->getPrefix());
371 localFolder->setText( data->getLocalFolder() ); 373 localFolder->setText( data->getLocalFolder() );
372 int max = data->getMaxMailSize() ; 374 int max = data->getMaxMailSize() ;
373 if ( max ) { 375 if ( max ) {
374 CheckBoxDown->setChecked( true ); 376 CheckBoxDown->setChecked( true );
375 SpinBoxDown->setValue ( max ); 377 SpinBoxDown->setValue ( max );
376 } else { 378 } else {
377 CheckBoxDown->setChecked( false ); 379 CheckBoxDown->setChecked( false );
378 SpinBoxDown->setValue ( 5 ); 380 SpinBoxDown->setValue ( 5 );
379 } 381 }
380 CheckBoxLeaveOn->setChecked( data->getLeaveOnServer() ); 382 CheckBoxLeaveOn->setChecked( data->getLeaveOnServer() );
381} 383}
382 384
383void IMAPconfig::accept() 385void IMAPconfig::accept()
384{ 386{
385 if ( localFolder->text().contains("/") ||localFolder->text().contains("\\") ) { 387 if ( localFolder->text().contains("/") ||localFolder->text().contains("\\") ) {
386 QMessageBox::information( this, i18n( "Error" ), 388 QMessageBox::information( this, i18n( "Error" ),
387 i18n( "No paths allowed in\nlocal folder settings.\nPlease specify a folder\nname or leave empty\nto create local folder\nwith account name\nautomatically." ), 389 i18n( "No paths allowed in\nlocal folder settings.\nPlease specify a folder\nname or leave empty\nto create local folder\nwith account name\nautomatically." ),
388 i18n( "Ok" ) ); 390 i18n( "Ok" ) );
389 return; 391 return;
390 } 392 }
391 data->setAccountName( accountLine->text() ); 393 data->setAccountName( accountLine->text() );
392 data->setServer( serverLine->text() ); 394 data->setServer( serverLine->text() );
393 data->setPort( portLine->text() ); 395 data->setPort( portLine->text() );
394 data->setConnectionType( ComboBox1->currentItem() ); 396 data->setConnectionType( ComboBox1->currentItem() );
395 data->setUser( userLine->text() ); 397 data->setUser( userLine->text() );
396 data->setPassword( passLine->text() ); 398 data->setPassword( passLine->text() );
397 data->setPrefix(prefixLine->text()); 399 data->setPrefix(prefixLine->text());
398 data->setLocalFolder( localFolder->text() ); 400 data->setLocalFolder( localFolder->text() );
399 data->setMaxMailSize( CheckBoxDown->isChecked()?SpinBoxDown->value():0 ) ; 401 data->setMaxMailSize( CheckBoxDown->isChecked()?SpinBoxDown->value():0 ) ;
400 data->setLeaveOnServer( CheckBoxLeaveOn->isChecked() ); 402 data->setLeaveOnServer( CheckBoxLeaveOn->isChecked() );
401 403
402 QDialog::accept(); 404 QDialog::accept();
403} 405}
404 406
405/** 407/**
406 * POP3config 408 * POP3config
407 */ 409 */
408 410
409POP3config::POP3config( POP3account *account, QWidget *parent, const char *name, bool modal, WFlags flags ) 411POP3config::POP3config( POP3account *account, QWidget *parent, const char *name, bool modal, WFlags flags )
410 : POP3configUI( parent, name, modal, flags ) 412 : POP3configUI( parent, name, modal, flags )
411{ 413{
412 data = account; 414 data = account;
413 //fillValues(); 415 //fillValues();
414 416
415 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) ); 417 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) );
416 ComboBox1->insertItem( "Only if available", 0 ); 418 ComboBox1->insertItem( "Only if available", 0 );
417 ComboBox1->insertItem( "Always, Negotiated", 1 ); 419 ComboBox1->insertItem( "Always, Negotiated", 1 );
418 ComboBox1->insertItem( "Connect on secure port", 2 ); 420 ComboBox1->insertItem( "Connect on secure port", 2 );
419 ComboBox1->insertItem( "Run command instead", 3 ); 421 ComboBox1->insertItem( "Run command instead", 3 );
420 CommandEdit->hide(); 422 CommandEdit->hide();
421 fillValues(); 423 fillValues();
422 //ComboBox1->setCurrentItem( data->ConnectionType() ); 424 //ComboBox1->setCurrentItem( data->ConnectionType() );
423} 425}
424 426
425void POP3config::slotConnectionToggle( int index ) 427void POP3config::slotConnectionToggle( int index )
426{ 428{
427 // 2 is ssl connection 429 // 2 is ssl connection
428 if ( index == 2 ) 430 if ( index == 2 )
429 { 431 {
430 portLine->setText( POP3_SSL_PORT ); 432 portLine->setText( POP3_SSL_PORT );
433 CommandEdit->hide();
431 } 434 }
432 else if ( index == 3 ) 435 else if ( index == 3 )
433 { 436 {
434 portLine->setText( POP3_PORT ); 437 portLine->setText( POP3_PORT );
435 CommandEdit->show(); 438 CommandEdit->show();
436 } 439 }
437 else 440 else
438 { 441 {
439 portLine->setText( POP3_PORT ); 442 portLine->setText( POP3_PORT );
443 CommandEdit->hide();
440 } 444 }
441} 445}
442 446
443void POP3config::fillValues() 447void POP3config::fillValues()
444{ 448{
445 accountLine->setText( data->getAccountName() ); 449 accountLine->setText( data->getAccountName() );
446 serverLine->setText( data->getServer() ); 450 serverLine->setText( data->getServer() );
447 portLine->setText( data->getPort() ); 451 portLine->setText( data->getPort() );
448 ComboBox1->setCurrentItem( data->ConnectionType() ); 452 ComboBox1->setCurrentItem( data->ConnectionType() );
449 userLine->setText( data->getUser() ); 453 userLine->setText( data->getUser() );
450 passLine->setText( data->getPassword() ); 454 passLine->setText( data->getPassword() );
451 localFolder->setText( data->getLocalFolder() ); 455 localFolder->setText( data->getLocalFolder() );
452 int max = data->getMaxMailSize() ; 456 int max = data->getMaxMailSize() ;
453 if ( max ) { 457 if ( max ) {
454 CheckBoxDown->setChecked( true ); 458 CheckBoxDown->setChecked( true );
455 SpinBoxDown->setValue ( max ); 459 SpinBoxDown->setValue ( max );
456 } else { 460 } else {
457 CheckBoxDown->setChecked( false ); 461 CheckBoxDown->setChecked( false );
458 SpinBoxDown->setValue ( 5 ); 462 SpinBoxDown->setValue ( 5 );
459 } 463 }
460 CheckBoxLeaveOn->setChecked( data->getLeaveOnServer() ); 464 CheckBoxLeaveOn->setChecked( data->getLeaveOnServer() );
461} 465}
462 466
463void POP3config::accept() 467void POP3config::accept()
464{ 468{
465 if ( localFolder->text().contains("/") ||localFolder->text().contains("\\") ) { 469 if ( localFolder->text().contains("/") ||localFolder->text().contains("\\") ) {
466 QMessageBox::information( this, i18n( "Error" ), 470 QMessageBox::information( this, i18n( "Error" ),
467 i18n( "No paths allowed in\nlocal folder settings.\nPlease specify a folder\nname or leave empty\nto create local folder\nwith account name\nautomatically." ), 471 i18n( "No paths allowed in\nlocal folder settings.\nPlease specify a folder\nname or leave empty\nto create local folder\nwith account name\nautomatically." ),
468 i18n( "Ok" ) ); 472 i18n( "Ok" ) );
469 return; 473 return;
470 } 474 }
471 data->setAccountName( accountLine->text() ); 475 data->setAccountName( accountLine->text() );
472 data->setServer( serverLine->text() ); 476 data->setServer( serverLine->text() );
473 data->setPort( portLine->text() ); 477 data->setPort( portLine->text() );
474 data->setConnectionType( ComboBox1->currentItem() ); 478 data->setConnectionType( ComboBox1->currentItem() );
475 data->setUser( userLine->text() ); 479 data->setUser( userLine->text() );
476 data->setPassword( passLine->text() ); 480 data->setPassword( passLine->text() );
477 data->setLocalFolder( localFolder->text() ); 481 data->setLocalFolder( localFolder->text() );
478 data->setMaxMailSize( CheckBoxDown->isChecked()?SpinBoxDown->value():0 ) ; 482 data->setMaxMailSize( CheckBoxDown->isChecked()?SpinBoxDown->value():0 ) ;
479 data->setLeaveOnServer( CheckBoxLeaveOn->isChecked() ); 483 data->setLeaveOnServer( CheckBoxLeaveOn->isChecked() );
480 484
481 QDialog::accept(); 485 QDialog::accept();
482} 486}
483 487
484/** 488/**
485 * SMTPconfig 489 * SMTPconfig
486 */ 490 */
487 491
488SMTPconfig::SMTPconfig( SMTPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags ) 492SMTPconfig::SMTPconfig( SMTPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags )
489 : SMTPconfigUI( parent, name, modal, flags ) 493 : SMTPconfigUI( parent, name, modal, flags )
490{ 494{
491 data = account; 495 data = account;
492 496
493 connect( loginBox, SIGNAL( toggled(bool) ), userLine, SLOT( setEnabled(bool) ) ); 497 connect( loginBox, SIGNAL( toggled(bool) ), userLine, SLOT( setEnabled(bool) ) );
494 connect( loginBox, SIGNAL( toggled(bool) ), passLine, SLOT( setEnabled(bool) ) ); 498 connect( loginBox, SIGNAL( toggled(bool) ), passLine, SLOT( setEnabled(bool) ) );
495 499
496 // fillValues(); 500 // fillValues();
497 QIconSet icon; 501 QIconSet icon;
498 //icon = SmallIcon("fileexport"); 502 //icon = SmallIcon("fileexport");
499 icon = SmallIcon("fileopen"); 503 icon = SmallIcon("fileopen");
500 SignaturButton->setText(""); 504 SignaturButton->setText("");
501 SignaturButton->setIconSet (icon ) ; 505 SignaturButton->setIconSet (icon ) ;
502 SignaturButton->setMaximumSize ( SignaturButton->sizeHint().height()+4,SignaturButton->sizeHint().height()) ; 506 SignaturButton->setMaximumSize ( SignaturButton->sizeHint().height()+4,SignaturButton->sizeHint().height()) ;
503 connect( SignaturButton, SIGNAL( clicked() ), this, SLOT( chooseSig() ) ); 507 connect( SignaturButton, SIGNAL( clicked() ), this, SLOT( chooseSig() ) );
504 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) ); 508 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) );
505 ComboBox1->insertItem( "No secure connection, no TLS", 0 ); 509 ComboBox1->insertItem( "No secure connection, no TLS", 0 );
506 ComboBox1->insertItem( "Only if available, try TLS", 1 ); 510 ComboBox1->insertItem( "Only if available, try TLS", 1 );
507 ComboBox1->insertItem( "Always, use TLS", 2 ); 511 ComboBox1->insertItem( "Always, use TLS", 2 );
508 ComboBox1->insertItem( "Connect on secure port (SSL)", 3 ); 512 ComboBox1->insertItem( "Connect on secure port (SSL)", 3 );
509 ComboBox1->insertItem( "Run command instead", 4 ); 513 ComboBox1->insertItem( "Run command instead", 4 );
510 CommandEdit->hide(); 514 CommandEdit->hide();
511 fillValues(); 515 fillValues();
512 //ComboBox1->setCurrentItem( data->ConnectionType() ); 516 //ComboBox1->setCurrentItem( data->ConnectionType() );
513} 517}
514void SMTPconfig::chooseSig() 518void SMTPconfig::chooseSig()
515{ 519{
516 QString lnk = KFileDialog::getOpenFileName( "", "Choose Signatur File", this ); 520 QString lnk = KFileDialog::getOpenFileName( "", "Choose Signatur File", this );
517 if ( !lnk.isEmpty() ) { 521 if ( !lnk.isEmpty() ) {
518 SignaturEdit->setText( lnk ); 522 SignaturEdit->setText( lnk );
519 } 523 }
520} 524}
521void SMTPconfig::slotConnectionToggle( int index ) 525void SMTPconfig::slotConnectionToggle( int index )
522{ 526{
523 // 2 is ssl connection 527 // 3 is ssl connection
524 if ( index == 2 ) 528 if ( index == 3 )
525 { 529 {
526 portLine->setText( SMTP_SSL_PORT ); 530 portLine->setText( SMTP_SSL_PORT );
531 CommandEdit->hide();
527 } 532 }
528 else if ( index == 3 ) 533 else if ( index == 4 )
529 { 534 {
530 portLine->setText( SMTP_PORT ); 535 portLine->setText( SMTP_PORT );
531 CommandEdit->show(); 536 CommandEdit->show();
532 } 537 }
533 else 538 else
534 { 539 {
535 portLine->setText( SMTP_PORT ); 540 portLine->setText( SMTP_PORT );
541 CommandEdit->hide();
536 } 542 }
537} 543}
538 544
539void SMTPconfig::fillValues() 545void SMTPconfig::fillValues()
540{ 546{
541 accountLine->setText( data->getAccountName() ); 547 accountLine->setText( data->getAccountName() );
542 serverLine->setText( data->getServer() ); 548 serverLine->setText( data->getServer() );
543 portLine->setText( data->getPort() ); 549 portLine->setText( data->getPort() );
544 ComboBox1->setCurrentItem( data->ConnectionType() ); 550 ComboBox1->setCurrentItem( data->ConnectionType() );
545 loginBox->setChecked( data->getLogin() ); 551 loginBox->setChecked( data->getLogin() );
546 userLine->setText( data->getUser() ); 552 userLine->setText( data->getUser() );
547 passLine->setText( data->getPassword() ); 553 passLine->setText( data->getPassword() );
548 SignaturEdit->setText( data->getSigFile() ); 554 SignaturEdit->setText( data->getSigFile() );
549} 555}
550 556
551void SMTPconfig::accept() 557void SMTPconfig::accept()
552{ 558{
553 data->setAccountName( accountLine->text() ); 559 data->setAccountName( accountLine->text() );
554 data->setServer( serverLine->text() ); 560 data->setServer( serverLine->text() );
555 data->setPort( portLine->text() ); 561 data->setPort( portLine->text() );
556 data->setConnectionType( ComboBox1->currentItem() ); 562 data->setConnectionType( ComboBox1->currentItem() );
557 data->setLogin( loginBox->isChecked() ); 563 data->setLogin( loginBox->isChecked() );
558 data->setUser( userLine->text() ); 564 data->setUser( userLine->text() );
559 data->setPassword( passLine->text() ); 565 data->setPassword( passLine->text() );
560 data->setSigFile( SignaturEdit->text() ); 566 data->setSigFile( SignaturEdit->text() );
561 567
562 QDialog::accept(); 568 QDialog::accept();
563} 569}
564 570
565/** 571/**
566 * NNTPconfig 572 * NNTPconfig
567 */ 573 */
568 574
569NNTPconfig::NNTPconfig( NNTPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags ) 575NNTPconfig::NNTPconfig( NNTPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags )
570 : NNTPconfigUI( parent, name, modal, flags ) 576 : NNTPconfigUI( parent, name, modal, flags )
571{ 577{
572 data = account; 578 data = account;
573 579
574 connect( loginBox, SIGNAL( toggled(bool) ), userLine, SLOT( setEnabled(bool) ) ); 580 connect( loginBox, SIGNAL( toggled(bool) ), userLine, SLOT( setEnabled(bool) ) );
575 connect( loginBox, SIGNAL( toggled(bool) ), passLine, SLOT( setEnabled(bool) ) ); 581 connect( loginBox, SIGNAL( toggled(bool) ), passLine, SLOT( setEnabled(bool) ) );
576 connect( GetNGButton, SIGNAL( clicked() ), this, SLOT( slotGetNG() ) ); 582 connect( GetNGButton, SIGNAL( clicked() ), this, SLOT( slotGetNG() ) );
577 connect( ShowSubcribed, SIGNAL( clicked() ), this, SLOT( slotShowSub() ) ); 583 connect( ShowSubcribed, SIGNAL( clicked() ), this, SLOT( slotShowSub() ) );
578 connect( FilterButton, SIGNAL( clicked() ), this, SLOT( slotShowFilter() ) ); 584 connect( FilterButton, SIGNAL( clicked() ), this, SLOT( slotShowFilter() ) );
579 fillValues(); 585 fillValues();
580 586
581 connect( sslBox, SIGNAL( toggled(bool) ), SLOT( slotSSL(bool) ) ); 587 connect( sslBox, SIGNAL( toggled(bool) ), SLOT( slotSSL(bool) ) );
582} 588}
583 589
584void NNTPconfig::slotShowSub() 590void NNTPconfig::slotShowSub()
585{ 591{
586 save(); 592 save();
587 data->save(); 593 data->save();
588 ListViewGroups->clear(); 594 ListViewGroups->clear();
589 for ( QStringList::Iterator it = subscribedGroups.begin(); it != subscribedGroups.end(); ++it ) { 595 for ( QStringList::Iterator it = subscribedGroups.begin(); it != subscribedGroups.end(); ++it ) {
590 QCheckListItem *item; 596 QCheckListItem *item;
591 item = new QCheckListItem( ListViewGroups, (*it), QCheckListItem::CheckBox ); 597 item = new QCheckListItem( ListViewGroups, (*it), QCheckListItem::CheckBox );
592 item->setOn( true ); 598 item->setOn( true );
593 } 599 }
594 topLevelWidget()->setCaption( i18n("%1 groups subscribed").arg( subscribedGroups.count())); 600 topLevelWidget()->setCaption( i18n("%1 groups subscribed").arg( subscribedGroups.count()));
595} 601}
596void NNTPconfig::slotShowFilter() 602void NNTPconfig::slotShowFilter()
597{ 603{
598 save(); 604 save();
599 data->save(); 605 data->save();
600 ListViewGroups->clear(); 606 ListViewGroups->clear();
601 int count = 0; 607 int count = 0;
602 for ( QStringList::Iterator it = allGroups.begin(); it != allGroups.end(); ++it ) { 608 for ( QStringList::Iterator it = allGroups.begin(); it != allGroups.end(); ++it ) {
603 QCheckListItem *item; 609 QCheckListItem *item;
604 if ( GroupFilter->text().isEmpty() || (*it).find( GroupFilter->text() ) >= 0 ) { 610 if ( GroupFilter->text().isEmpty() || (*it).find( GroupFilter->text() ) >= 0 ) {
605 item = new QCheckListItem( ListViewGroups, (*it), QCheckListItem::CheckBox ); 611 item = new QCheckListItem( ListViewGroups, (*it), QCheckListItem::CheckBox );
606 ++count; 612 ++count;
607 if ( subscribedGroups.contains( (*it) ) >= 1 ) { 613 if ( subscribedGroups.contains( (*it) ) >= 1 ) {
608 item->setOn( true ); 614 item->setOn( true );
609 } 615 }
610 } 616 }
611 } 617 }
612 topLevelWidget()->setCaption( i18n("Filter found %1 groups").arg( count)); 618 topLevelWidget()->setCaption( i18n("Filter found %1 groups").arg( count));
613} 619}
614void NNTPconfig::slotGetNG() { 620void NNTPconfig::slotGetNG() {
615 save(); 621 save();
616 data->save(); 622 data->save();
617 topLevelWidget()->setCaption( i18n("Fetching group list...")); 623 topLevelWidget()->setCaption( i18n("Fetching group list..."));
618 qApp->processEvents(); 624 qApp->processEvents();
619 NNTPwrapper* tmp = new NNTPwrapper( data ); 625 NNTPwrapper* tmp = new NNTPwrapper( data );
620 allGroups = tmp->listAllNewsgroups(); 626 allGroups = tmp->listAllNewsgroups();
621 topLevelWidget()->setCaption( i18n("Downloaded %1 group names").arg( allGroups.count())); 627 topLevelWidget()->setCaption( i18n("Downloaded %1 group names").arg( allGroups.count()));
622 628
623 ListViewGroups->clear(); 629 ListViewGroups->clear();
624 630
625 for ( QStringList::Iterator it = allGroups.begin(); it != allGroups.end(); ++it ) { 631 for ( QStringList::Iterator it = allGroups.begin(); it != allGroups.end(); ++it ) {
626 QCheckListItem *item; 632 QCheckListItem *item;
627 item = new QCheckListItem( ListViewGroups, (*it), QCheckListItem::CheckBox ); 633 item = new QCheckListItem( ListViewGroups, (*it), QCheckListItem::CheckBox );
628 if ( subscribedGroups.contains( (*it) ) >= 1 ) { 634 if ( subscribedGroups.contains( (*it) ) >= 1 ) {
629 item->setOn( true ); 635 item->setOn( true );
630 636
631 } 637 }
632 } 638 }
633 delete tmp; 639 delete tmp;
634} 640}
635 641
636void NNTPconfig::slotSSL( bool enabled ) 642void NNTPconfig::slotSSL( bool enabled )
637{ 643{
638 if ( enabled ) 644 if ( enabled )
639 { 645 {
640 portLine->setText( NNTP_SSL_PORT ); 646 portLine->setText( NNTP_SSL_PORT );
641 } 647 }
642 else 648 else
643 { 649 {
644 portLine->setText( NNTP_PORT ); 650 portLine->setText( NNTP_PORT );
645 } 651 }
646} 652}
647 653
648void NNTPconfig::fillValues() 654void NNTPconfig::fillValues()
649{ 655{
650 accountLine->setText( data->getAccountName() ); 656 accountLine->setText( data->getAccountName() );
651 serverLine->setText( data->getServer() ); 657 serverLine->setText( data->getServer() );
652 portLine->setText( data->getPort() ); 658 portLine->setText( data->getPort() );
653 sslBox->setChecked( data->getSSL() ); 659 sslBox->setChecked( data->getSSL() );
654 loginBox->setChecked( data->getLogin() ); 660 loginBox->setChecked( data->getLogin() );
655 userLine->setText( data->getUser() ); 661 userLine->setText( data->getUser() );
656 passLine->setText( data->getPassword() ); 662 passLine->setText( data->getPassword() );
657 subscribedGroups = data->getGroups(); 663 subscribedGroups = data->getGroups();
658 /* don't forget that - you will overwrite values if user clicks cancel! */ 664 /* don't forget that - you will overwrite values if user clicks cancel! */
659 for ( QStringList::Iterator it = subscribedGroups.begin(); it != subscribedGroups.end(); ++it ) { 665 for ( QStringList::Iterator it = subscribedGroups.begin(); it != subscribedGroups.end(); ++it ) {
660 QCheckListItem *item; 666 QCheckListItem *item;
661 item = new QCheckListItem( ListViewGroups, (*it), QCheckListItem::CheckBox ); 667 item = new QCheckListItem( ListViewGroups, (*it), QCheckListItem::CheckBox );
662 item->setOn( true ); 668 item->setOn( true );
663 } 669 }
664} 670}
665 671
666void NNTPconfig::save() 672void NNTPconfig::save()
667{ 673{
668 data->setAccountName( accountLine->text() ); 674 data->setAccountName( accountLine->text() );
669 data->setServer( serverLine->text() ); 675 data->setServer( serverLine->text() );
670 data->setPort( portLine->text() ); 676 data->setPort( portLine->text() );
671 data->setSSL( sslBox->isChecked() ); 677 data->setSSL( sslBox->isChecked() );
672 data->setLogin( loginBox->isChecked() ); 678 data->setLogin( loginBox->isChecked() );
673 data->setUser( userLine->text() ); 679 data->setUser( userLine->text() );
674 data->setPassword( passLine->text() ); 680 data->setPassword( passLine->text() );
675 681
676 QListViewItemIterator list_it( ListViewGroups ); 682 QListViewItemIterator list_it( ListViewGroups );
677 683
678 for ( ; list_it.current(); ++list_it ) { 684 for ( ; list_it.current(); ++list_it ) {
679 685
680 if ( ( (QCheckListItem*)list_it.current() )->isOn() ) { 686 if ( ( (QCheckListItem*)list_it.current() )->isOn() ) {
681 if ( subscribedGroups.contains( list_it.current()->text(0) ) < 1 ) 687 if ( subscribedGroups.contains( list_it.current()->text(0) ) < 1 )
682 subscribedGroups.append( list_it.current()->text(0) ); 688 subscribedGroups.append( list_it.current()->text(0) );
683 } else { 689 } else {
684 if ( subscribedGroups.contains( list_it.current()->text(0) ) >= 1 ) 690 if ( subscribedGroups.contains( list_it.current()->text(0) ) >= 1 )
685 subscribedGroups.remove( list_it.current()->text(0) ); 691 subscribedGroups.remove( list_it.current()->text(0) );
686 } 692 }
687 693
688 } 694 }
689 data->setGroups( subscribedGroups ); 695 data->setGroups( subscribedGroups );
690} 696}
691 697
692void NNTPconfig::accept() 698void NNTPconfig::accept()
693{ 699{
694 save(); 700 save();
695 QDialog::accept(); 701 QDialog::accept();
696} 702}
697 703