summaryrefslogtreecommitdiffabout
path: root/kmicromail/accountitem.cpp
Unidiff
Diffstat (limited to 'kmicromail/accountitem.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--kmicromail/accountitem.cpp97
1 files changed, 49 insertions, 48 deletions
diff --git a/kmicromail/accountitem.cpp b/kmicromail/accountitem.cpp
index 49d86fc..567de87 100644
--- a/kmicromail/accountitem.cpp
+++ b/kmicromail/accountitem.cpp
@@ -6,24 +6,25 @@
6#include "defines.h" 6#include "defines.h"
7 7
8#include <libmailwrapper/mailtypes.h> 8#include <libmailwrapper/mailtypes.h>
9#include <libmailwrapper/abstractmail.h> 9#include <libmailwrapper/abstractmail.h>
10#include <libmailwrapper/mailwrapper.h> 10#include <libmailwrapper/mailwrapper.h>
11/* OPIE */ 11/* OPIE */
12//#include <qpe/qpeapplication.h> 12//#include <qpe/qpeapplication.h>
13 13
14/* QT */ 14/* QT */
15#include <qpopupmenu.h> 15#include <qpopupmenu.h>
16#include <qmessagebox.h> 16#include <qmessagebox.h>
17#include <kiconloader.h> 17#include <kiconloader.h>
18#include <klocale.h>
18 19
19#define GET_NEW_MAILS 101 20#define GET_NEW_MAILS 101
20 21
21using namespace Opie::Core; 22using namespace Opie::Core;
22#define SETPIX(x) if (!account->getOffline()) {setPixmap( 0,x);} else {setPixmap( 0, PIXMAP_OFFLINE );} 23#define SETPIX(x) if (!account->getOffline()) {setPixmap( 0,x);} else {setPixmap( 0, PIXMAP_OFFLINE );}
23/** 24/**
24 * POP3 Account stuff 25 * POP3 Account stuff
25 */ 26 */
26POP3viewItem::POP3viewItem( POP3account *a, AccountView *parent ) 27POP3viewItem::POP3viewItem( POP3account *a, AccountView *parent )
27 : AccountViewItem( parent ) 28 : AccountViewItem( parent )
28{ 29{
29 account = a; 30 account = a;
@@ -83,32 +84,32 @@ RECBODYP POP3viewItem::fetchBody( const RecMailP &mail )
83{ 84{
84 85
85 return wrapper->fetchBody( mail ); 86 return wrapper->fetchBody( mail );
86} 87}
87 88
88QPopupMenu * POP3viewItem::getContextMenu() 89QPopupMenu * POP3viewItem::getContextMenu()
89{ 90{
90 QPopupMenu *m = new QPopupMenu(0); 91 QPopupMenu *m = new QPopupMenu(0);
91 if (m) 92 if (m)
92 { 93 {
93 if (!account->getOffline()) 94 if (!account->getOffline())
94 { 95 {
95 m->insertItem(QObject::tr("Get new messages",contextName),GET_NEW_MAILS); 96 m->insertItem(i18n("Get new messages"),GET_NEW_MAILS);
96 m->insertItem(QObject::tr("Disconnect",contextName),0); 97 m->insertItem(i18n("Disconnect"),0);
97 m->insertItem(QObject::tr("Set offline",contextName),1); 98 m->insertItem(i18n("Set offline"),1);
98 } 99 }
99 else 100 else
100 { 101 {
101 m->insertItem(QObject::tr("Get new messages",contextName),GET_NEW_MAILS); 102 m->insertItem(i18n("Get new messages"),GET_NEW_MAILS);
102 m->insertItem(QObject::tr("Set online",contextName),1); 103 m->insertItem(i18n("Set online"),1);
103 } 104 }
104 } 105 }
105 return m; 106 return m;
106} 107}
107 108
108void POP3viewItem::disconnect() 109void POP3viewItem::disconnect()
109{ 110{
110 QListViewItem *child = firstChild(); 111 QListViewItem *child = firstChild();
111 while ( child ) 112 while ( child )
112 { 113 {
113 QListViewItem *tmp = child; 114 QListViewItem *tmp = child;
114 child = child->nextSibling(); 115 child = child->nextSibling();
@@ -178,28 +179,28 @@ void POP3folderItem::refresh(QValueList<RecMailP>&target)
178} 179}
179 180
180RECBODYP POP3folderItem::fetchBody(const RecMailP&aMail) 181RECBODYP POP3folderItem::fetchBody(const RecMailP&aMail)
181{ 182{
182 return pop3->getWrapper()->fetchBody(aMail); 183 return pop3->getWrapper()->fetchBody(aMail);
183} 184}
184 185
185QPopupMenu * POP3folderItem::getContextMenu() 186QPopupMenu * POP3folderItem::getContextMenu()
186{ 187{
187 QPopupMenu *m = new QPopupMenu(0); 188 QPopupMenu *m = new QPopupMenu(0);
188 if (m) 189 if (m)
189 { 190 {
190 m->insertItem(QObject::tr("Get new messages",contextName),GET_NEW_MAILS); 191 m->insertItem(i18n("Get new messages"),GET_NEW_MAILS);
191 m->insertItem(QObject::tr("Refresh header list",contextName),0); 192 m->insertItem(i18n("Refresh header list"),0);
192 m->insertItem(QObject::tr("Delete all mails",contextName),1); 193 m->insertItem(i18n("Delete all mails"),1);
193 m->insertItem(QObject::tr("Move/Copie all mails",contextName),2); 194 m->insertItem(i18n("Move/Copie all mails"),2);
194 } 195 }
195 return m; 196 return m;
196} 197}
197 198
198void POP3folderItem::downloadMails() 199void POP3folderItem::downloadMails()
199{ 200{
200 AccountView*bl = pop3->accountView(); 201 AccountView*bl = pop3->accountView();
201 if (!bl) return; 202 if (!bl) return;
202 bl->downloadMails(folder,pop3->getWrapper()); 203 bl->downloadMails(folder,pop3->getWrapper());
203} 204}
204 205
205void POP3folderItem::contextMenuSelected(int which) 206void POP3folderItem::contextMenuSelected(int which)
@@ -291,31 +292,31 @@ RECBODYP NNTPviewItem::fetchBody( const RecMailP &mail )
291{ 292{
292 293
293 return wrapper->fetchBody( mail ); 294 return wrapper->fetchBody( mail );
294} 295}
295 296
296QPopupMenu * NNTPviewItem::getContextMenu() 297QPopupMenu * NNTPviewItem::getContextMenu()
297{ 298{
298 QPopupMenu *m = new QPopupMenu(0); 299 QPopupMenu *m = new QPopupMenu(0);
299 if (m) 300 if (m)
300 { 301 {
301 if (!account->getOffline()) 302 if (!account->getOffline())
302 { 303 {
303 m->insertItem(QObject::tr("Disconnect",contextName),0); 304 m->insertItem(i18n("Disconnect"),0);
304 m->insertItem(QObject::tr("Set offline",contextName),1); 305 m->insertItem(i18n("Set offline"),1);
305 //m->insertItem(QObject::tr("(Un-)Subscribe groups",contextName),2); 306 //m->insertItem(i18n("(Un-)Subscribe groups"),2);
306 } 307 }
307 else 308 else
308 { 309 {
309 m->insertItem(QObject::tr("Set online",contextName),1); 310 m->insertItem(i18n("Set online"),1);
310 } 311 }
311 } 312 }
312 return m; 313 return m;
313} 314}
314 315
315void NNTPviewItem::subscribeGroups() 316void NNTPviewItem::subscribeGroups()
316{ 317{
317 NNTPGroupsDlg dlg(account); 318 NNTPGroupsDlg dlg(account);
318 dlg.showMaximized(); 319 dlg.showMaximized();
319 if ( dlg.exec()== QDialog::Accepted ){ 320 if ( dlg.exec()== QDialog::Accepted ){
320 refresh(); 321 refresh();
321 } 322 }
@@ -387,26 +388,26 @@ void NNTPfolderItem::refresh(QValueList<RecMailP>&target)
387} 388}
388 389
389RECBODYP NNTPfolderItem::fetchBody(const RecMailP&aMail) 390RECBODYP NNTPfolderItem::fetchBody(const RecMailP&aMail)
390{ 391{
391 return nntp->getWrapper()->fetchBody(aMail); 392 return nntp->getWrapper()->fetchBody(aMail);
392} 393}
393 394
394QPopupMenu * NNTPfolderItem::getContextMenu() 395QPopupMenu * NNTPfolderItem::getContextMenu()
395{ 396{
396 QPopupMenu *m = new QPopupMenu(0); 397 QPopupMenu *m = new QPopupMenu(0);
397 if (m) 398 if (m)
398 { 399 {
399 m->insertItem(QObject::tr("Refresh header list",contextName),0); 400 m->insertItem(i18n("Refresh header list"),0);
400 m->insertItem(QObject::tr("Copy all postings",contextName),1); 401 m->insertItem(i18n("Copy all postings"),1);
401 } 402 }
402 return m; 403 return m;
403} 404}
404 405
405void NNTPfolderItem::downloadMails() 406void NNTPfolderItem::downloadMails()
406{ 407{
407 AccountView*bl = nntp->accountView(); 408 AccountView*bl = nntp->accountView();
408 if (!bl) return; 409 if (!bl) return;
409 bl->downloadMails(folder,nntp->getWrapper()); 410 bl->downloadMails(folder,nntp->getWrapper());
410} 411}
411 412
412void NNTPfolderItem::contextMenuSelected(int which) 413void NNTPfolderItem::contextMenuSelected(int which)
@@ -508,36 +509,36 @@ void IMAPviewItem::refreshFolders(bool force)
508 } 509 }
509 } 510 }
510 delete folders; 511 delete folders;
511} 512}
512 513
513QPopupMenu * IMAPviewItem::getContextMenu() 514QPopupMenu * IMAPviewItem::getContextMenu()
514{ 515{
515 QPopupMenu *m = new QPopupMenu(0); 516 QPopupMenu *m = new QPopupMenu(0);
516 if (m) 517 if (m)
517 { 518 {
518 if (!account->getOffline()) 519 if (!account->getOffline())
519 { 520 {
520 m->insertItem(QObject::tr("Get new messages",contextName),GET_NEW_MAILS); 521 m->insertItem(i18n("Get new messages"),GET_NEW_MAILS);
521 m->insertItem(QObject::tr("Refresh folder list",contextName),0); 522 m->insertItem(i18n("Refresh folder list"),0);
522 m->insertItem(QObject::tr("Create new folder",contextName),1); 523 m->insertItem(i18n("Create new folder"),1);
523 m->insertSeparator(); 524 m->insertSeparator();
524 m->insertItem(QObject::tr("Disconnect",contextName),2); 525 m->insertItem(i18n("Disconnect"),2);
525 m->insertItem(QObject::tr("Set offline",contextName),3); 526 m->insertItem(i18n("Set offline"),3);
526 m->insertSeparator(); 527 m->insertSeparator();
527 } 528 }
528 else 529 else
529 { 530 {
530 m->insertItem(QObject::tr("Get new messages",contextName),GET_NEW_MAILS); 531 m->insertItem(i18n("Get new messages"),GET_NEW_MAILS);
531 m->insertItem(QObject::tr("Set online",contextName),3); 532 m->insertItem(i18n("Set online"),3);
532 } 533 }
533 } 534 }
534 return m; 535 return m;
535} 536}
536 537
537void IMAPviewItem::createNewFolder() 538void IMAPviewItem::createNewFolder()
538{ 539{
539 Newmdirdlg ndirdlg; 540 Newmdirdlg ndirdlg;
540 541
541 ndirdlg.showMaximized(); 542 ndirdlg.showMaximized();
542 if ( ndirdlg.exec() ) 543 if ( ndirdlg.exec() )
543 { 544 {
@@ -663,63 +664,63 @@ void IMAPfolderItem::refresh(QValueList<RecMailP>&target)
663RECBODYP IMAPfolderItem::fetchBody(const RecMailP&aMail) 664RECBODYP IMAPfolderItem::fetchBody(const RecMailP&aMail)
664{ 665{
665 return imap->getWrapper()->fetchBody(aMail); 666 return imap->getWrapper()->fetchBody(aMail);
666} 667}
667 668
668QPopupMenu * IMAPfolderItem::getContextMenu() 669QPopupMenu * IMAPfolderItem::getContextMenu()
669{ 670{
670 QPopupMenu *m = new QPopupMenu(0); 671 QPopupMenu *m = new QPopupMenu(0);
671 if (m) 672 if (m)
672 { 673 {
673 if (folder->may_select()) 674 if (folder->may_select())
674 { 675 {
675 m->insertItem(QObject::tr("Get new messages",contextName),GET_NEW_MAILS); 676 m->insertItem(i18n("Get new messages"),GET_NEW_MAILS);
676 m->insertItem(QObject::tr("Refresh header list",contextName),0); 677 m->insertItem(i18n("Refresh header list"),0);
677 m->insertItem(QObject::tr("Move/Copie all mails",contextName),4); 678 m->insertItem(i18n("Move/Copie all mails"),4);
678 m->insertItem(QObject::tr("Delete all mails",contextName),1); 679 m->insertItem(i18n("Delete all mails"),1);
679 } 680 }
680 if (folder->no_inferior()==false) 681 if (folder->no_inferior()==false)
681 { 682 {
682 m->insertItem(QObject::tr("Create new subfolder",contextName),2); 683 m->insertItem(i18n("Create new subfolder"),2);
683 } 684 }
684 if (folder->getDisplayName().lower()!="inbox") 685 if (folder->getDisplayName().lower()!="inbox")
685 { 686 {
686 m->insertItem(QObject::tr("Delete folder",contextName),3); 687 m->insertItem(i18n("Delete folder"),3);
687 } 688 }
688 } 689 }
689 return m; 690 return m;
690} 691}
691 692
692void IMAPfolderItem::createNewFolder() 693void IMAPfolderItem::createNewFolder()
693{ 694{
694 Newmdirdlg ndirdlg; 695 Newmdirdlg ndirdlg;
695 ndirdlg.showMaximized(); 696 ndirdlg.showMaximized();
696 if ( ndirdlg.exec() ) 697 if ( ndirdlg.exec() )
697 { 698 {
698 QString ndir = ndirdlg.Newdir(); 699 QString ndir = ndirdlg.Newdir();
699 bool makesubs = ndirdlg.subpossible(); 700 bool makesubs = ndirdlg.subpossible();
700 QString delemiter = Delemiter(); 701 QString delemiter = Delemiter();
701 if (imap->wrapper->createMbox(ndir,folder,delemiter,makesubs)) 702 if (imap->wrapper->createMbox(ndir,folder,delemiter,makesubs))
702 { 703 {
703 imap->refreshFolders(true); 704 imap->refreshFolders(true);
704 } 705 }
705 } 706 }
706} 707}
707 708
708void IMAPfolderItem::deleteFolder() 709void IMAPfolderItem::deleteFolder()
709{ 710{
710 int yesno = QMessageBox::warning(0,QObject::tr("Delete folder",contextName), 711 int yesno = QMessageBox::warning(0,i18n("Delete folder"),
711 QObject::tr("<center>Realy delete folder <br><b>%1</b><br>and all if it content?</center>",contextName).arg(folder->getDisplayName()), 712 i18n("<center>Realy delete folder <br><b>%1</b><br>and all if it content?</center>").arg(folder->getDisplayName()),
712 QObject::tr("Yes",contextName), 713 i18n("Yes"),
713 QObject::tr("No",contextName),QString::null,1,1); 714 i18n("No"),QString::null,1,1);
714 715
715 if (yesno == 0) 716 if (yesno == 0)
716 { 717 {
717 if (imap->getWrapper()->deleteMbox(folder)) 718 if (imap->getWrapper()->deleteMbox(folder))
718 { 719 {
719 QListView*v=listView(); 720 QListView*v=listView();
720 IMAPviewItem * box = imap; 721 IMAPviewItem * box = imap;
721 /* be carefull - after that this object is destroyd so don't use 722 /* be carefull - after that this object is destroyd so don't use
722 * any member of it after that call!!*/ 723 * any member of it after that call!!*/
723 imap->refreshFolders(true); 724 imap->refreshFolders(true);
724 if (v) 725 if (v)
725 { 726 {
@@ -848,28 +849,28 @@ void MHviewItem::refresh(bool force)
848 849
849RECBODYP MHviewItem::fetchBody( const RecMailP &mail ) 850RECBODYP MHviewItem::fetchBody( const RecMailP &mail )
850{ 851{
851 852
852 return wrapper->fetchBody( mail ); 853 return wrapper->fetchBody( mail );
853} 854}
854 855
855QPopupMenu * MHviewItem::getContextMenu() 856QPopupMenu * MHviewItem::getContextMenu()
856{ 857{
857 QPopupMenu *m = new QPopupMenu(0); 858 QPopupMenu *m = new QPopupMenu(0);
858 if (m) 859 if (m)
859 { 860 {
860 m->insertItem(QObject::tr("Refresh folder list",contextName),0); 861 m->insertItem(i18n("Refresh folder list"),0);
861 m->insertItem(QObject::tr("Create new folder",contextName),1); 862 m->insertItem(i18n("Create new folder"),1);
862 m->insertItem(QObject::tr("Delete all mails",contextName),2); 863 m->insertItem(i18n("Delete all mails"),2);
863 m->insertItem(QObject::tr("Move/Copie all mails",contextName),3); 864 m->insertItem(i18n("Move/Copie all mails"),3);
864 } 865 }
865 return m; 866 return m;
866} 867}
867 868
868void MHviewItem::createFolder() 869void MHviewItem::createFolder()
869{ 870{
870 Newmdirdlg ndirdlg(0,0,true); 871 Newmdirdlg ndirdlg(0,0,true);
871 ndirdlg.showMaximized(); 872 ndirdlg.showMaximized();
872 if ( ndirdlg.exec() ) 873 if ( ndirdlg.exec() )
873 { 874 {
874 QString ndir = ndirdlg.Newdir(); 875 QString ndir = ndirdlg.Newdir();
875 if (wrapper->createMbox(ndir)) 876 if (wrapper->createMbox(ndir))
@@ -966,55 +967,55 @@ void MHfolderItem::refresh(QValueList<RecMailP>&target)
966{ 967{
967 if (folder->may_select()) 968 if (folder->may_select())
968 mbox->getWrapper()->listMessages( folder->getName(),target ); 969 mbox->getWrapper()->listMessages( folder->getName(),target );
969} 970}
970 971
971RECBODYP MHfolderItem::fetchBody(const RecMailP&aMail) 972RECBODYP MHfolderItem::fetchBody(const RecMailP&aMail)
972{ 973{
973 return mbox->getWrapper()->fetchBody(aMail); 974 return mbox->getWrapper()->fetchBody(aMail);
974} 975}
975 976
976void MHfolderItem::deleteFolder() 977void MHfolderItem::deleteFolder()
977{ 978{
978 int yesno = QMessageBox::warning(0,QObject::tr("Delete folder",contextName), 979 int yesno = QMessageBox::warning(0,i18n("Delete folder"),
979 QObject::tr("<center>Realy delete folder <br><b>%1</b><br>and all if it content?</center>",contextName).arg(folder->getDisplayName()), 980 i18n("<center>Realy delete folder <br><b>%1</b><br>and all if it content?</center>").arg(folder->getDisplayName()),
980 QObject::tr("Yes",contextName), 981 i18n("Yes"),
981 QObject::tr("No",contextName),QString::null,1,1); 982 i18n("No"),QString::null,1,1);
982 983
983 if (yesno == 0) 984 if (yesno == 0)
984 { 985 {
985 if (mbox->getWrapper()->deleteMbox(folder)) 986 if (mbox->getWrapper()->deleteMbox(folder))
986 { 987 {
987 QListView*v=listView(); 988 QListView*v=listView();
988 MHviewItem * box = mbox; 989 MHviewItem * box = mbox;
989 /* be carefull - after that this object is destroyd so don't use 990 /* be carefull - after that this object is destroyd so don't use
990 * any member of it after that call!!*/ 991 * any member of it after that call!!*/
991 mbox->refresh(true); 992 mbox->refresh(true);
992 if (v) 993 if (v)
993 { 994 {
994 v->setSelected(box,true); 995 v->setSelected(box,true);
995 } 996 }
996 } 997 }
997 } 998 }
998} 999}
999 1000
1000QPopupMenu * MHfolderItem::getContextMenu() 1001QPopupMenu * MHfolderItem::getContextMenu()
1001{ 1002{
1002 QPopupMenu *m = new QPopupMenu(0); 1003 QPopupMenu *m = new QPopupMenu(0);
1003 if (m) 1004 if (m)
1004 { 1005 {
1005 m->insertItem(QObject::tr("Move/Copie all mails",contextName),2); 1006 m->insertItem(i18n("Move/Copie all mails"),2);
1006 m->insertItem(QObject::tr("Delete all mails",contextName),0); 1007 m->insertItem(i18n("Delete all mails"),0);
1007 m->insertItem(QObject::tr("Create new subfolder",contextName),3); 1008 m->insertItem(i18n("Create new subfolder"),3);
1008 m->insertItem(QObject::tr("Delete folder",contextName),1); 1009 m->insertItem(i18n("Delete folder"),1);
1009 } 1010 }
1010 return m; 1011 return m;
1011} 1012}
1012 1013
1013void MHfolderItem::downloadMails() 1014void MHfolderItem::downloadMails()
1014{ 1015{
1015 AccountView*bl = mbox->accountView(); 1016 AccountView*bl = mbox->accountView();
1016 if (!bl) return; 1017 if (!bl) return;
1017 bl->downloadMails(folder,mbox->getWrapper()); 1018 bl->downloadMails(folder,mbox->getWrapper());
1018} 1019}
1019 1020
1020void MHfolderItem::createFolder() 1021void MHfolderItem::createFolder()
@@ -1108,29 +1109,29 @@ AccountViewItem::~AccountViewItem()
1108} 1109}
1109 1110
1110AccountView*AccountViewItem::accountView() 1111AccountView*AccountViewItem::accountView()
1111{ 1112{
1112 return m_Backlink; 1113 return m_Backlink;
1113} 1114}
1114 1115
1115void AccountViewItem::deleteAllMail(AbstractMail*wrapper,const FolderP&folder) 1116void AccountViewItem::deleteAllMail(AbstractMail*wrapper,const FolderP&folder)
1116{ 1117{
1117 if (!wrapper) return; 1118 if (!wrapper) return;
1118 QString fname=""; 1119 QString fname="";
1119 if (folder) fname = folder->getDisplayName(); 1120 if (folder) fname = folder->getDisplayName();
1120 int yesno = QMessageBox::warning(0,QObject::tr("Delete all mails",contextName), 1121 int yesno = QMessageBox::warning(0,i18n("Delete all mails"),
1121 QObject::tr("<center>Realy delete all mails in box <br>%1</center>",contextName). 1122 i18n("<center>Realy delete all mails in box <br>%1</center>").
1122 arg(fname), 1123 arg(fname),
1123 QObject::tr("Yes",contextName), 1124 i18n("Yes"),
1124 QObject::tr("No",contextName),QString::null,1,1); 1125 i18n("No"),QString::null,1,1);
1125 1126
1126 if (yesno == 0) 1127 if (yesno == 0)
1127 { 1128 {
1128 if (wrapper->deleteAllMail(folder)) 1129 if (wrapper->deleteAllMail(folder))
1129 { 1130 {
1130 AccountView * view = (AccountView*)listView(); 1131 AccountView * view = (AccountView*)listView();
1131 if (view) view->refreshCurrent(); 1132 if (view) view->refreshCurrent();
1132 } 1133 }
1133 } 1134 }
1134} 1135}
1135 1136
1136void AccountViewItem::removeChilds() 1137void AccountViewItem::removeChilds()