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, 12 insertions, 0 deletions
diff --git a/kmicromail/editaccounts.cpp b/kmicromail/editaccounts.cpp
index d272c3b..e7d2750 100644
--- a/kmicromail/editaccounts.cpp
+++ b/kmicromail/editaccounts.cpp
@@ -1,114 +1,115 @@
1 1
2#include "defines.h" 2#include "defines.h"
3#include "editaccounts.h" 3#include "editaccounts.h"
4#include "kapplication.h" 4#include "kapplication.h"
5/* OPIE */ 5/* OPIE */
6#include <qpe/qpeapplication.h> 6#include <qpe/qpeapplication.h>
7 7
8/* QT */ 8/* QT */
9#include <qstringlist.h> 9#include <qstringlist.h>
10 10
11#include <qcombobox.h> 11#include <qcombobox.h>
12#include <qcheckbox.h> 12#include <qcheckbox.h>
13#include <qmessagebox.h> 13#include <qmessagebox.h>
14#include <qpushbutton.h> 14#include <qpushbutton.h>
15#include <qlineedit.h> 15#include <qlineedit.h>
16#include <qlabel.h> 16#include <qlabel.h>
17#include <qtabwidget.h> 17#include <qtabwidget.h>
18#include <qlistview.h> 18#include <qlistview.h>
19#include <qspinbox.h>
19 20
20#include <libmailwrapper/nntpwrapper.h> 21#include <libmailwrapper/nntpwrapper.h>
21 22
22using namespace Opie::Core; 23using namespace Opie::Core;
23 24
24AccountListItem::AccountListItem( QListView *parent, Account *a) 25AccountListItem::AccountListItem( QListView *parent, Account *a)
25 : QListViewItem( parent ) 26 : QListViewItem( parent )
26{ 27{
27 account = a; 28 account = a;
28 setText( 0, account->getAccountName() ); 29 setText( 0, account->getAccountName() );
29 QString ttext = ""; 30 QString ttext = "";
30 switch (account->getType()) { 31 switch (account->getType()) {
31 case MAILLIB::A_NNTP: 32 case MAILLIB::A_NNTP:
32 ttext="NNTP"; 33 ttext="NNTP";
33 break; 34 break;
34 case MAILLIB::A_POP3: 35 case MAILLIB::A_POP3:
35 ttext = "POP3"; 36 ttext = "POP3";
36 break; 37 break;
37 case MAILLIB::A_IMAP: 38 case MAILLIB::A_IMAP:
38 ttext = "IMAP"; 39 ttext = "IMAP";
39 break; 40 break;
40 case MAILLIB::A_SMTP: 41 case MAILLIB::A_SMTP:
41 ttext = "SMTP"; 42 ttext = "SMTP";
42 break; 43 break;
43 default: 44 default:
44 ttext = "UNKNOWN"; 45 ttext = "UNKNOWN";
45 break; 46 break;
46 } 47 }
47 setText( 1, ttext); 48 setText( 1, ttext);
48} 49}
49 50
50EditAccounts::EditAccounts( Settings *s, QWidget *parent, const char *name, bool modal, WFlags flags ) 51EditAccounts::EditAccounts( Settings *s, QWidget *parent, const char *name, bool modal, WFlags flags )
51 : EditAccountsUI( parent, name, modal, flags ) 52 : EditAccountsUI( parent, name, modal, flags )
52{ 53{
53 settings = s; 54 settings = s;
54 55
55 mailList->addColumn( tr( "Account" ) ); 56 mailList->addColumn( tr( "Account" ) );
56 mailList->addColumn( tr( "Type" ) ); 57 mailList->addColumn( tr( "Type" ) );
57 58
58 newsList->addColumn( tr( "Account" ) ); 59 newsList->addColumn( tr( "Account" ) );
59 60
60 connect( newMail, SIGNAL( clicked() ), SLOT( slotNewMail() ) ); 61 connect( newMail, SIGNAL( clicked() ), SLOT( slotNewMail() ) );
61 connect( editMail, SIGNAL( clicked() ), SLOT( slotEditMail() ) ); 62 connect( editMail, SIGNAL( clicked() ), SLOT( slotEditMail() ) );
62 connect( deleteMail, SIGNAL( clicked() ), SLOT( slotDeleteMail() ) ); 63 connect( deleteMail, SIGNAL( clicked() ), SLOT( slotDeleteMail() ) );
63 connect( newNews, SIGNAL( clicked() ), SLOT( slotNewNews() ) ); 64 connect( newNews, SIGNAL( clicked() ), SLOT( slotNewNews() ) );
64 connect( editNews, SIGNAL( clicked() ), SLOT( slotEditNews() ) ); 65 connect( editNews, SIGNAL( clicked() ), SLOT( slotEditNews() ) );
65 connect( deleteNews, SIGNAL( clicked() ), SLOT( slotDeleteNews() ) ); 66 connect( deleteNews, SIGNAL( clicked() ), SLOT( slotDeleteNews() ) );
66 67
67 slotFillLists(); 68 slotFillLists();
68} 69}
69 70
70void EditAccounts::slotFillLists() 71void EditAccounts::slotFillLists()
71{ 72{
72 mailList->clear(); 73 mailList->clear();
73 newsList->clear(); 74 newsList->clear();
74 75
75 QList<Account> accounts = settings->getAccounts(); 76 QList<Account> accounts = settings->getAccounts();
76 Account *it; 77 Account *it;
77 for ( it = accounts.first(); it; it = accounts.next() ) 78 for ( it = accounts.first(); it; it = accounts.next() )
78 { 79 {
79 if ( it->getType()==MAILLIB::A_NNTP ) 80 if ( it->getType()==MAILLIB::A_NNTP )
80 { 81 {
81 (void) new AccountListItem( newsList, it ); 82 (void) new AccountListItem( newsList, it );
82 } 83 }
83 else 84 else
84 { 85 {
85 (void) new AccountListItem( mailList, it ); 86 (void) new AccountListItem( mailList, it );
86 } 87 }
87 } 88 }
88} 89}
89 90
90void EditAccounts::slotNewMail() 91void EditAccounts::slotNewMail()
91{ 92{
92 QString *selection = new QString(); 93 QString *selection = new QString();
93 SelectMailType selType( selection, this, 0, true ); 94 SelectMailType selType( selection, this, 0, true );
94 selType.show(); 95 selType.show();
95 if ( QDialog::Accepted == selType.exec() ) 96 if ( QDialog::Accepted == selType.exec() )
96 { 97 {
97 slotNewAccount( *selection ); 98 slotNewAccount( *selection );
98 } 99 }
99} 100}
100 101
101void EditAccounts::slotNewAccount( const QString &type ) 102void EditAccounts::slotNewAccount( const QString &type )
102{ 103{
103 if ( type.compare( "IMAP" ) == 0 ) 104 if ( type.compare( "IMAP" ) == 0 )
104 { 105 {
105 IMAPaccount *account = new IMAPaccount(); 106 IMAPaccount *account = new IMAPaccount();
106 IMAPconfig imap( account, this, 0, true ); 107 IMAPconfig imap( account, this, 0, true );
107 imap.showMaximized(); 108 imap.showMaximized();
108 if ( QDialog::Accepted == imap.exec() ) 109 if ( QDialog::Accepted == imap.exec() )
109 { 110 {
110 settings->addAccount( account ); 111 settings->addAccount( account );
111 account->save(); 112 account->save();
112 slotFillLists(); 113 slotFillLists();
113 } 114 }
114 else 115 else
@@ -327,202 +328,213 @@ IMAPconfig::IMAPconfig( IMAPaccount *account, QWidget *parent, const char *name,
327 328
328 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) ); 329 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) );
329 ComboBox1->insertItem( "Only if available", 0 ); 330 ComboBox1->insertItem( "Only if available", 0 );
330 ComboBox1->insertItem( "Always, Negotiated", 1 ); 331 ComboBox1->insertItem( "Always, Negotiated", 1 );
331 ComboBox1->insertItem( "Connect on secure port", 2 ); 332 ComboBox1->insertItem( "Connect on secure port", 2 );
332 ComboBox1->insertItem( "Run command instead", 3 ); 333 ComboBox1->insertItem( "Run command instead", 3 );
333 CommandEdit->hide(); 334 CommandEdit->hide();
334 ComboBox1->setCurrentItem( data->ConnectionType() ); 335 ComboBox1->setCurrentItem( data->ConnectionType() );
335} 336}
336 337
337void IMAPconfig::slotConnectionToggle( int index ) 338void IMAPconfig::slotConnectionToggle( int index )
338{ 339{
339 if ( index == 2 ) 340 if ( index == 2 )
340 { 341 {
341 portLine->setText( IMAP_SSL_PORT ); 342 portLine->setText( IMAP_SSL_PORT );
342 } 343 }
343 else if ( index == 3 ) 344 else if ( index == 3 )
344 { 345 {
345 portLine->setText( IMAP_PORT ); 346 portLine->setText( IMAP_PORT );
346 CommandEdit->show(); 347 CommandEdit->show();
347 } 348 }
348 else 349 else
349 { 350 {
350 portLine->setText( IMAP_PORT ); 351 portLine->setText( IMAP_PORT );
351 } 352 }
352} 353}
353 354
354void IMAPconfig::fillValues() 355void IMAPconfig::fillValues()
355{ 356{
356 accountLine->setText( data->getAccountName() ); 357 accountLine->setText( data->getAccountName() );
357 serverLine->setText( data->getServer() ); 358 serverLine->setText( data->getServer() );
358 portLine->setText( data->getPort() ); 359 portLine->setText( data->getPort() );
359 ComboBox1->setCurrentItem( data->ConnectionType() ); 360 ComboBox1->setCurrentItem( data->ConnectionType() );
360 userLine->setText( data->getUser() ); 361 userLine->setText( data->getUser() );
361 passLine->setText( data->getPassword() ); 362 passLine->setText( data->getPassword() );
362 prefixLine->setText(data->getPrefix()); 363 prefixLine->setText(data->getPrefix());
363} 364}
364 365
365void IMAPconfig::accept() 366void IMAPconfig::accept()
366{ 367{
367 data->setAccountName( accountLine->text() ); 368 data->setAccountName( accountLine->text() );
368 data->setServer( serverLine->text() ); 369 data->setServer( serverLine->text() );
369 data->setPort( portLine->text() ); 370 data->setPort( portLine->text() );
370 data->setConnectionType( ComboBox1->currentItem() ); 371 data->setConnectionType( ComboBox1->currentItem() );
371 data->setUser( userLine->text() ); 372 data->setUser( userLine->text() );
372 data->setPassword( passLine->text() ); 373 data->setPassword( passLine->text() );
373 data->setPrefix(prefixLine->text()); 374 data->setPrefix(prefixLine->text());
374 375
375 QDialog::accept(); 376 QDialog::accept();
376} 377}
377 378
378/** 379/**
379 * POP3config 380 * POP3config
380 */ 381 */
381 382
382POP3config::POP3config( POP3account *account, QWidget *parent, const char *name, bool modal, WFlags flags ) 383POP3config::POP3config( POP3account *account, QWidget *parent, const char *name, bool modal, WFlags flags )
383 : POP3configUI( parent, name, modal, flags ) 384 : POP3configUI( parent, name, modal, flags )
384{ 385{
385 data = account; 386 data = account;
386 fillValues(); 387 fillValues();
387 388
388 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) ); 389 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) );
389 ComboBox1->insertItem( "Only if available", 0 ); 390 ComboBox1->insertItem( "Only if available", 0 );
390 ComboBox1->insertItem( "Always, Negotiated", 1 ); 391 ComboBox1->insertItem( "Always, Negotiated", 1 );
391 ComboBox1->insertItem( "Connect on secure port", 2 ); 392 ComboBox1->insertItem( "Connect on secure port", 2 );
392 ComboBox1->insertItem( "Run command instead", 3 ); 393 ComboBox1->insertItem( "Run command instead", 3 );
393 CommandEdit->hide(); 394 CommandEdit->hide();
394 ComboBox1->setCurrentItem( data->ConnectionType() ); 395 ComboBox1->setCurrentItem( data->ConnectionType() );
395} 396}
396 397
397void POP3config::slotConnectionToggle( int index ) 398void POP3config::slotConnectionToggle( int index )
398{ 399{
399 // 2 is ssl connection 400 // 2 is ssl connection
400 if ( index == 2 ) 401 if ( index == 2 )
401 { 402 {
402 portLine->setText( POP3_SSL_PORT ); 403 portLine->setText( POP3_SSL_PORT );
403 } 404 }
404 else if ( index == 3 ) 405 else if ( index == 3 )
405 { 406 {
406 portLine->setText( POP3_PORT ); 407 portLine->setText( POP3_PORT );
407 CommandEdit->show(); 408 CommandEdit->show();
408 } 409 }
409 else 410 else
410 { 411 {
411 portLine->setText( POP3_PORT ); 412 portLine->setText( POP3_PORT );
412 } 413 }
413} 414}
414 415
415void POP3config::fillValues() 416void POP3config::fillValues()
416{ 417{
417 accountLine->setText( data->getAccountName() ); 418 accountLine->setText( data->getAccountName() );
418 serverLine->setText( data->getServer() ); 419 serverLine->setText( data->getServer() );
419 portLine->setText( data->getPort() ); 420 portLine->setText( data->getPort() );
420 ComboBox1->setCurrentItem( data->ConnectionType() ); 421 ComboBox1->setCurrentItem( data->ConnectionType() );
421 userLine->setText( data->getUser() ); 422 userLine->setText( data->getUser() );
422 passLine->setText( data->getPassword() ); 423 passLine->setText( data->getPassword() );
424 localFolder->setText( data->getLocalFolder() );
425 int max = data->getMaxMailSize() ;
426 if ( max ) {
427 CheckBoxDown->setChecked( true );
428 SpinBoxDown->setValue ( max );
429 } else {
430 CheckBoxDown->setChecked( false );
431 SpinBoxDown->setValue ( 5 );
432 }
423} 433}
424 434
425void POP3config::accept() 435void POP3config::accept()
426{ 436{
427 data->setAccountName( accountLine->text() ); 437 data->setAccountName( accountLine->text() );
428 data->setServer( serverLine->text() ); 438 data->setServer( serverLine->text() );
429 data->setPort( portLine->text() ); 439 data->setPort( portLine->text() );
430 data->setConnectionType( ComboBox1->currentItem() ); 440 data->setConnectionType( ComboBox1->currentItem() );
431 data->setUser( userLine->text() ); 441 data->setUser( userLine->text() );
432 data->setPassword( passLine->text() ); 442 data->setPassword( passLine->text() );
443 data->setLocalFolder( localFolder->text() );
444 data->setMaxMailSize( CheckBoxDown->isChecked()?SpinBoxDown->value():0 ) ;
433 445
434 QDialog::accept(); 446 QDialog::accept();
435} 447}
436 448
437/** 449/**
438 * SMTPconfig 450 * SMTPconfig
439 */ 451 */
440 452
441SMTPconfig::SMTPconfig( SMTPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags ) 453SMTPconfig::SMTPconfig( SMTPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags )
442 : SMTPconfigUI( parent, name, modal, flags ) 454 : SMTPconfigUI( parent, name, modal, flags )
443{ 455{
444 data = account; 456 data = account;
445 457
446 connect( loginBox, SIGNAL( toggled(bool) ), userLine, SLOT( setEnabled(bool) ) ); 458 connect( loginBox, SIGNAL( toggled(bool) ), userLine, SLOT( setEnabled(bool) ) );
447 connect( loginBox, SIGNAL( toggled(bool) ), passLine, SLOT( setEnabled(bool) ) ); 459 connect( loginBox, SIGNAL( toggled(bool) ), passLine, SLOT( setEnabled(bool) ) );
448 460
449 fillValues(); 461 fillValues();
450 462
451 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) ); 463 connect( ComboBox1, SIGNAL( activated(int) ), SLOT( slotConnectionToggle(int) ) );
452 ComboBox1->insertItem( "Only if available", 0 ); 464 ComboBox1->insertItem( "Only if available", 0 );
453 ComboBox1->insertItem( "Always, Negotiated", 1 ); 465 ComboBox1->insertItem( "Always, Negotiated", 1 );
454 ComboBox1->insertItem( "Connect on secure port", 2 ); 466 ComboBox1->insertItem( "Connect on secure port", 2 );
455 ComboBox1->insertItem( "Run command instead", 3 ); 467 ComboBox1->insertItem( "Run command instead", 3 );
456 CommandEdit->hide(); 468 CommandEdit->hide();
457 ComboBox1->setCurrentItem( data->ConnectionType() ); 469 ComboBox1->setCurrentItem( data->ConnectionType() );
458} 470}
459 471
460void SMTPconfig::slotConnectionToggle( int index ) 472void SMTPconfig::slotConnectionToggle( int index )
461{ 473{
462 // 2 is ssl connection 474 // 2 is ssl connection
463 if ( index == 2 ) 475 if ( index == 2 )
464 { 476 {
465 portLine->setText( SMTP_SSL_PORT ); 477 portLine->setText( SMTP_SSL_PORT );
466 } 478 }
467 else if ( index == 3 ) 479 else if ( index == 3 )
468 { 480 {
469 portLine->setText( SMTP_PORT ); 481 portLine->setText( SMTP_PORT );
470 CommandEdit->show(); 482 CommandEdit->show();
471 } 483 }
472 else 484 else
473 { 485 {
474 portLine->setText( SMTP_PORT ); 486 portLine->setText( SMTP_PORT );
475 } 487 }
476} 488}
477 489
478void SMTPconfig::fillValues() 490void SMTPconfig::fillValues()
479{ 491{
480 accountLine->setText( data->getAccountName() ); 492 accountLine->setText( data->getAccountName() );
481 serverLine->setText( data->getServer() ); 493 serverLine->setText( data->getServer() );
482 portLine->setText( data->getPort() ); 494 portLine->setText( data->getPort() );
483 ComboBox1->setCurrentItem( data->ConnectionType() ); 495 ComboBox1->setCurrentItem( data->ConnectionType() );
484 loginBox->setChecked( data->getLogin() ); 496 loginBox->setChecked( data->getLogin() );
485 userLine->setText( data->getUser() ); 497 userLine->setText( data->getUser() );
486 passLine->setText( data->getPassword() ); 498 passLine->setText( data->getPassword() );
487} 499}
488 500
489void SMTPconfig::accept() 501void SMTPconfig::accept()
490{ 502{
491 data->setAccountName( accountLine->text() ); 503 data->setAccountName( accountLine->text() );
492 data->setServer( serverLine->text() ); 504 data->setServer( serverLine->text() );
493 data->setPort( portLine->text() ); 505 data->setPort( portLine->text() );
494 data->setConnectionType( ComboBox1->currentItem() ); 506 data->setConnectionType( ComboBox1->currentItem() );
495 data->setLogin( loginBox->isChecked() ); 507 data->setLogin( loginBox->isChecked() );
496 data->setUser( userLine->text() ); 508 data->setUser( userLine->text() );
497 data->setPassword( passLine->text() ); 509 data->setPassword( passLine->text() );
498 510
499 QDialog::accept(); 511 QDialog::accept();
500} 512}
501 513
502/** 514/**
503 * NNTPconfig 515 * NNTPconfig
504 */ 516 */
505 517
506NNTPconfig::NNTPconfig( NNTPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags ) 518NNTPconfig::NNTPconfig( NNTPaccount *account, QWidget *parent, const char *name, bool modal, WFlags flags )
507 : NNTPconfigUI( parent, name, modal, flags ) 519 : NNTPconfigUI( parent, name, modal, flags )
508{ 520{
509 data = account; 521 data = account;
510 522
511 connect( loginBox, SIGNAL( toggled(bool) ), userLine, SLOT( setEnabled(bool) ) ); 523 connect( loginBox, SIGNAL( toggled(bool) ), userLine, SLOT( setEnabled(bool) ) );
512 connect( loginBox, SIGNAL( toggled(bool) ), passLine, SLOT( setEnabled(bool) ) ); 524 connect( loginBox, SIGNAL( toggled(bool) ), passLine, SLOT( setEnabled(bool) ) );
513 connect( GetNGButton, SIGNAL( clicked() ), this, SLOT( slotGetNG() ) ); 525 connect( GetNGButton, SIGNAL( clicked() ), this, SLOT( slotGetNG() ) );
514 fillValues(); 526 fillValues();
515 527
516 connect( sslBox, SIGNAL( toggled(bool) ), SLOT( slotSSL(bool) ) ); 528 connect( sslBox, SIGNAL( toggled(bool) ), SLOT( slotSSL(bool) ) );
517} 529}
518 530
519void NNTPconfig::slotGetNG() { 531void NNTPconfig::slotGetNG() {
520 save(); 532 save();
521 data->save(); 533 data->save();
522 NNTPwrapper* tmp = new NNTPwrapper( data ); 534 NNTPwrapper* tmp = new NNTPwrapper( data );
523 QStringList list = tmp->listAllNewsgroups(); 535 QStringList list = tmp->listAllNewsgroups();
524 536
525 ListViewGroups->clear(); 537 ListViewGroups->clear();
526 538
527 for ( QStringList::Iterator it = list.begin(); it != list.end(); ++it ) { 539 for ( QStringList::Iterator it = list.begin(); it != list.end(); ++it ) {
528 QCheckListItem *item; 540 QCheckListItem *item;