author | alwin <alwin> | 2004-01-08 19:15:10 (UTC) |
---|---|---|
committer | alwin <alwin> | 2004-01-08 19:15:10 (UTC) |
commit | 6287f011db0a566d17ae1614d8129f421125d934 (patch) (unidiff) | |
tree | 8c449974e9b577fe8dcc5348c4d109e82659b218 /noncore/net/mail/accountview.cpp | |
parent | 44443aec5d4b8f974b30b1e9b4ea920d6582add1 (diff) | |
download | opie-6287f011db0a566d17ae1614d8129f421125d934.zip opie-6287f011db0a566d17ae1614d8129f421125d934.tar.gz opie-6287f011db0a566d17ae1614d8129f421125d934.tar.bz2 |
MH storage implemented
local folders will be type of MH not MBOX
Diffstat (limited to 'noncore/net/mail/accountview.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/net/mail/accountview.cpp | 64 |
1 files changed, 32 insertions, 32 deletions
diff --git a/noncore/net/mail/accountview.cpp b/noncore/net/mail/accountview.cpp index 9f4f358..62cbf62 100644 --- a/noncore/net/mail/accountview.cpp +++ b/noncore/net/mail/accountview.cpp | |||
@@ -574,13 +574,13 @@ AccountView::AccountView( QWidget *parent, const char *name, WFlags flags ) | |||
574 | setSorting(0); | 574 | setSorting(0); |
575 | } | 575 | } |
576 | 576 | ||
577 | AccountView::~AccountView() | 577 | AccountView::~AccountView() |
578 | { | 578 | { |
579 | imapAccounts.clear(); | 579 | imapAccounts.clear(); |
580 | mboxAccounts.clear(); | 580 | mhAccounts.clear(); |
581 | } | 581 | } |
582 | 582 | ||
583 | void AccountView::slotContextMenu(int id) | 583 | void AccountView::slotContextMenu(int id) |
584 | { | 584 | { |
585 | AccountViewItem *view = static_cast<AccountViewItem *>(currentItem()); | 585 | AccountViewItem *view = static_cast<AccountViewItem *>(currentItem()); |
586 | if (!view) return; | 586 | if (!view) return; |
@@ -602,15 +602,15 @@ void AccountView::slotHold(int button, QListViewItem * item,const QPoint&,int) | |||
602 | 602 | ||
603 | void AccountView::populate( QList<Account> list ) | 603 | void AccountView::populate( QList<Account> list ) |
604 | { | 604 | { |
605 | clear(); | 605 | clear(); |
606 | 606 | ||
607 | imapAccounts.clear(); | 607 | imapAccounts.clear(); |
608 | mboxAccounts.clear(); | 608 | mhAccounts.clear(); |
609 | 609 | ||
610 | mboxAccounts.append(new MBOXviewItem(AbstractMail::defaultLocalfolder(),this)); | 610 | mhAccounts.append(new MHviewItem(AbstractMail::defaultLocalfolder(),this)); |
611 | 611 | ||
612 | Account *it; | 612 | Account *it; |
613 | for ( it = list.first(); it; it = list.next() ) { | 613 | for ( it = list.first(); it; it = list.next() ) { |
614 | if ( it->getType().compare( "IMAP" ) == 0 ) { | 614 | if ( it->getType().compare( "IMAP" ) == 0 ) { |
615 | IMAPaccount *imap = static_cast<IMAPaccount *>(it); | 615 | IMAPaccount *imap = static_cast<IMAPaccount *>(it); |
616 | qDebug( "added IMAP " + imap->getAccountName() ); | 616 | qDebug( "added IMAP " + imap->getAccountName() ); |
@@ -663,16 +663,16 @@ RecBody AccountView::fetchBody(const RecMail&aMail) | |||
663 | 663 | ||
664 | void AccountView::setupFolderselect(Selectstore*sels) | 664 | void AccountView::setupFolderselect(Selectstore*sels) |
665 | { | 665 | { |
666 | sels->showMaximized(); | 666 | sels->showMaximized(); |
667 | QStringList sFolders; | 667 | QStringList sFolders; |
668 | unsigned int i = 0; | 668 | unsigned int i = 0; |
669 | for (i=0; i < mboxAccounts.count();++i) { | 669 | for (i=0; i < mhAccounts.count();++i) { |
670 | mboxAccounts[i]->refresh(false); | 670 | mhAccounts[i]->refresh(false); |
671 | sFolders = mboxAccounts[i]->subFolders(); | 671 | sFolders = mhAccounts[i]->subFolders(); |
672 | sels->addAccounts(mboxAccounts[i]->getWrapper(),sFolders); | 672 | sels->addAccounts(mhAccounts[i]->getWrapper(),sFolders); |
673 | } | 673 | } |
674 | for (i=0; i < imapAccounts.count();++i) { | 674 | for (i=0; i < imapAccounts.count();++i) { |
675 | if (imapAccounts[i]->offline()) | 675 | if (imapAccounts[i]->offline()) |
676 | continue; | 676 | continue; |
677 | imapAccounts[i]->refreshFolders(false); | 677 | imapAccounts[i]->refreshFolders(false); |
678 | sels->addAccounts(imapAccounts[i]->getWrapper(),imapAccounts[i]->subFolders()); | 678 | sels->addAccounts(imapAccounts[i]->getWrapper(),imapAccounts[i]->subFolders()); |
@@ -701,104 +701,104 @@ void AccountView::downloadMails(Folder*fromFolder,AbstractMail*fromWrapper) | |||
701 | qDebug("Fromfolder: %s",fromFolder->getName().latin1()); | 701 | qDebug("Fromfolder: %s",fromFolder->getName().latin1()); |
702 | fromWrapper->mvcpAllMails(fromFolder,targetFolder,targetMail,sels.moveMails()); | 702 | fromWrapper->mvcpAllMails(fromFolder,targetFolder,targetMail,sels.moveMails()); |
703 | refreshCurrent(); | 703 | refreshCurrent(); |
704 | } | 704 | } |
705 | 705 | ||
706 | /** | 706 | /** |
707 | * MBOX Account stuff | 707 | * MH Account stuff |
708 | */ | 708 | */ |
709 | 709 | ||
710 | MBOXviewItem::MBOXviewItem( const QString&aPath, AccountView *parent ) | 710 | MHviewItem::MHviewItem( const QString&aPath, AccountView *parent ) |
711 | : AccountViewItem( parent ) | 711 | : AccountViewItem( parent ) |
712 | { | 712 | { |
713 | m_Path = aPath; | 713 | m_Path = aPath; |
714 | /* be carefull - the space within settext is wanted - thats why the string twice */ | 714 | /* be carefull - the space within settext is wanted - thats why the string twice */ |
715 | wrapper = AbstractMail::getWrapper( m_Path,"Local Folders"); | 715 | wrapper = AbstractMail::getWrapper( m_Path,"Local Folders"); |
716 | setPixmap( 0, PIXMAP_LOCALFOLDER ); | 716 | setPixmap( 0, PIXMAP_LOCALFOLDER ); |
717 | setText( 0, " Local Folders" ); | 717 | setText( 0, " Local Folders" ); |
718 | setOpen( true ); | 718 | setOpen( true ); |
719 | } | 719 | } |
720 | 720 | ||
721 | MBOXviewItem::~MBOXviewItem() | 721 | MHviewItem::~MHviewItem() |
722 | { | 722 | { |
723 | delete wrapper; | 723 | delete wrapper; |
724 | } | 724 | } |
725 | 725 | ||
726 | AbstractMail *MBOXviewItem::getWrapper() | 726 | AbstractMail *MHviewItem::getWrapper() |
727 | { | 727 | { |
728 | return wrapper; | 728 | return wrapper; |
729 | } | 729 | } |
730 | 730 | ||
731 | void MBOXviewItem::refresh( QList<RecMail> & ) | 731 | void MHviewItem::refresh( QList<RecMail> & ) |
732 | { | 732 | { |
733 | refresh(false); | 733 | refresh(false); |
734 | } | 734 | } |
735 | 735 | ||
736 | void MBOXviewItem::refresh(bool force) | 736 | void MHviewItem::refresh(bool force) |
737 | { | 737 | { |
738 | if (childCount()>0 && force==false) return; | 738 | if (childCount()>0 && force==false) return; |
739 | QList<Folder> *folders = wrapper->listFolders(); | 739 | QList<Folder> *folders = wrapper->listFolders(); |
740 | QListViewItem *child = firstChild(); | 740 | QListViewItem *child = firstChild(); |
741 | while ( child ) { | 741 | while ( child ) { |
742 | QListViewItem *tmp = child; | 742 | QListViewItem *tmp = child; |
743 | child = child->nextSibling(); | 743 | child = child->nextSibling(); |
744 | delete tmp; | 744 | delete tmp; |
745 | } | 745 | } |
746 | Folder *it; | 746 | Folder *it; |
747 | QListViewItem*item = 0; | 747 | QListViewItem*item = 0; |
748 | for ( it = folders->first(); it; it = folders->next() ) { | 748 | for ( it = folders->first(); it; it = folders->next() ) { |
749 | item = new MBOXfolderItem( it, this , item ); | 749 | item = new MHfolderItem( it, this , item ); |
750 | item->setSelectable(it->may_select()); | 750 | item->setSelectable(it->may_select()); |
751 | } | 751 | } |
752 | // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | 752 | // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
753 | folders->setAutoDelete(false); | 753 | folders->setAutoDelete(false); |
754 | delete folders; | 754 | delete folders; |
755 | } | 755 | } |
756 | 756 | ||
757 | RecBody MBOXviewItem::fetchBody( const RecMail &mail ) | 757 | RecBody MHviewItem::fetchBody( const RecMail &mail ) |
758 | { | 758 | { |
759 | qDebug( "MBOX fetchBody" ); | 759 | qDebug( "MH fetchBody" ); |
760 | return wrapper->fetchBody( mail ); | 760 | return wrapper->fetchBody( mail ); |
761 | } | 761 | } |
762 | 762 | ||
763 | QPopupMenu * MBOXviewItem::getContextMenu() | 763 | QPopupMenu * MHviewItem::getContextMenu() |
764 | { | 764 | { |
765 | QPopupMenu *m = new QPopupMenu(0); | 765 | QPopupMenu *m = new QPopupMenu(0); |
766 | if (m) { | 766 | if (m) { |
767 | m->insertItem(QObject::tr("Refresh folder list",contextName),0); | 767 | m->insertItem(QObject::tr("Refresh folder list",contextName),0); |
768 | m->insertItem(QObject::tr("Create new folder",contextName),1); | 768 | m->insertItem(QObject::tr("Create new folder",contextName),1); |
769 | } | 769 | } |
770 | return m; | 770 | return m; |
771 | } | 771 | } |
772 | 772 | ||
773 | void MBOXviewItem::createFolder() | 773 | void MHviewItem::createFolder() |
774 | { | 774 | { |
775 | Newmdirdlg ndirdlg(0,0,true); | 775 | Newmdirdlg ndirdlg(0,0,true); |
776 | ndirdlg.showMaximized(); | 776 | ndirdlg.showMaximized(); |
777 | if (ndirdlg.exec()) { | 777 | if (ndirdlg.exec()) { |
778 | QString ndir = ndirdlg.Newdir(); | 778 | QString ndir = ndirdlg.Newdir(); |
779 | if (wrapper->createMbox(ndir)) { | 779 | if (wrapper->createMbox(ndir)) { |
780 | refresh(true); | 780 | refresh(true); |
781 | } | 781 | } |
782 | } | 782 | } |
783 | } | 783 | } |
784 | 784 | ||
785 | QStringList MBOXviewItem::subFolders() | 785 | QStringList MHviewItem::subFolders() |
786 | { | 786 | { |
787 | QStringList result; | 787 | QStringList result; |
788 | QListViewItem *child = firstChild(); | 788 | QListViewItem *child = firstChild(); |
789 | while ( child ) { | 789 | while ( child ) { |
790 | MBOXfolderItem *tmp = (MBOXfolderItem*)child; | 790 | MHfolderItem *tmp = (MHfolderItem*)child; |
791 | child = child->nextSibling(); | 791 | child = child->nextSibling(); |
792 | result.append(tmp->getFolder()->getName()); | 792 | result.append(tmp->getFolder()->getDisplayName()); |
793 | } | 793 | } |
794 | qDebug("Size of result: %i",result.count()); | 794 | qDebug("Size of result: %i",result.count()); |
795 | return result; | 795 | return result; |
796 | } | 796 | } |
797 | 797 | ||
798 | void MBOXviewItem::contextMenuSelected(int which) | 798 | void MHviewItem::contextMenuSelected(int which) |
799 | { | 799 | { |
800 | switch (which) { | 800 | switch (which) { |
801 | case 0: | 801 | case 0: |
802 | refresh(true); | 802 | refresh(true); |
803 | break; | 803 | break; |
804 | case 1: | 804 | case 1: |
@@ -806,18 +806,18 @@ void MBOXviewItem::contextMenuSelected(int which) | |||
806 | break; | 806 | break; |
807 | default: | 807 | default: |
808 | break; | 808 | break; |
809 | } | 809 | } |
810 | } | 810 | } |
811 | 811 | ||
812 | MBOXfolderItem::~MBOXfolderItem() | 812 | MHfolderItem::~MHfolderItem() |
813 | { | 813 | { |
814 | delete folder; | 814 | delete folder; |
815 | } | 815 | } |
816 | 816 | ||
817 | MBOXfolderItem::MBOXfolderItem( Folder *folderInit, MBOXviewItem *parent , QListViewItem*after ) | 817 | MHfolderItem::MHfolderItem( Folder *folderInit, MHviewItem *parent , QListViewItem*after ) |
818 | : AccountViewItem( parent,after ) | 818 | : AccountViewItem( parent,after ) |
819 | { | 819 | { |
820 | folder = folderInit; | 820 | folder = folderInit; |
821 | mbox = parent; | 821 | mbox = parent; |
822 | if (folder->getDisplayName().lower() == "outgoing") { | 822 | if (folder->getDisplayName().lower() == "outgoing") { |
823 | setPixmap( 0, PIXMAP_OUTBOXFOLDER ); | 823 | setPixmap( 0, PIXMAP_OUTBOXFOLDER ); |
@@ -826,68 +826,68 @@ MBOXfolderItem::MBOXfolderItem( Folder *folderInit, MBOXviewItem *parent , QList | |||
826 | } else { | 826 | } else { |
827 | setPixmap( 0, PIXMAP_MBOXFOLDER ); | 827 | setPixmap( 0, PIXMAP_MBOXFOLDER ); |
828 | } | 828 | } |
829 | setText( 0, folder->getDisplayName() ); | 829 | setText( 0, folder->getDisplayName() ); |
830 | } | 830 | } |
831 | 831 | ||
832 | Folder*MBOXfolderItem::getFolder() | 832 | Folder*MHfolderItem::getFolder() |
833 | { | 833 | { |
834 | return folder; | 834 | return folder; |
835 | } | 835 | } |
836 | 836 | ||
837 | void MBOXfolderItem::refresh(QList<RecMail>&target) | 837 | void MHfolderItem::refresh(QList<RecMail>&target) |
838 | { | 838 | { |
839 | if (folder->may_select()) | 839 | if (folder->may_select()) |
840 | mbox->getWrapper()->listMessages( folder->getName(),target ); | 840 | mbox->getWrapper()->listMessages( folder->getName(),target ); |
841 | } | 841 | } |
842 | 842 | ||
843 | RecBody MBOXfolderItem::fetchBody(const RecMail&aMail) | 843 | RecBody MHfolderItem::fetchBody(const RecMail&aMail) |
844 | { | 844 | { |
845 | return mbox->getWrapper()->fetchBody(aMail); | 845 | return mbox->getWrapper()->fetchBody(aMail); |
846 | } | 846 | } |
847 | 847 | ||
848 | void MBOXfolderItem::deleteFolder() | 848 | void MHfolderItem::deleteFolder() |
849 | { | 849 | { |
850 | int yesno = QMessageBox::warning(0,QObject::tr("Delete folder",contextName), | 850 | int yesno = QMessageBox::warning(0,QObject::tr("Delete folder",contextName), |
851 | QObject::tr("<center>Realy delete folder <br><b>%1</b><br>and all if it content?</center>",contextName).arg(folder->getDisplayName()), | 851 | QObject::tr("<center>Realy delete folder <br><b>%1</b><br>and all if it content?</center>",contextName).arg(folder->getDisplayName()), |
852 | QObject::tr("Yes",contextName), | 852 | QObject::tr("Yes",contextName), |
853 | QObject::tr("No",contextName),QString::null,1,1); | 853 | QObject::tr("No",contextName),QString::null,1,1); |
854 | qDebug("Auswahl: %i",yesno); | 854 | qDebug("Auswahl: %i",yesno); |
855 | if (yesno == 0) { | 855 | if (yesno == 0) { |
856 | if (mbox->getWrapper()->deleteMbox(folder)) { | 856 | if (mbox->getWrapper()->deleteMbox(folder)) { |
857 | QListView*v=listView(); | 857 | QListView*v=listView(); |
858 | MBOXviewItem * box = mbox; | 858 | MHviewItem * box = mbox; |
859 | /* be carefull - after that this object is destroyd so don't use | 859 | /* be carefull - after that this object is destroyd so don't use |
860 | * any member of it after that call!!*/ | 860 | * any member of it after that call!!*/ |
861 | mbox->refresh(true); | 861 | mbox->refresh(true); |
862 | if (v) { | 862 | if (v) { |
863 | v->setSelected(box,true); | 863 | v->setSelected(box,true); |
864 | } | 864 | } |
865 | } | 865 | } |
866 | } | 866 | } |
867 | } | 867 | } |
868 | 868 | ||
869 | QPopupMenu * MBOXfolderItem::getContextMenu() | 869 | QPopupMenu * MHfolderItem::getContextMenu() |
870 | { | 870 | { |
871 | QPopupMenu *m = new QPopupMenu(0); | 871 | QPopupMenu *m = new QPopupMenu(0); |
872 | if (m) { | 872 | if (m) { |
873 | m->insertItem(QObject::tr("Delete all mails",contextName),0); | 873 | m->insertItem(QObject::tr("Delete all mails",contextName),0); |
874 | m->insertItem(QObject::tr("Delete folder",contextName),1); | 874 | m->insertItem(QObject::tr("Delete folder",contextName),1); |
875 | m->insertItem(QObject::tr("Move/Copie all mails",contextName),2); | 875 | m->insertItem(QObject::tr("Move/Copie all mails",contextName),2); |
876 | } | 876 | } |
877 | return m; | 877 | return m; |
878 | } | 878 | } |
879 | 879 | ||
880 | void MBOXfolderItem::downloadMails() | 880 | void MHfolderItem::downloadMails() |
881 | { | 881 | { |
882 | AccountView*bl = mbox->accountView(); | 882 | AccountView*bl = mbox->accountView(); |
883 | if (!bl) return; | 883 | if (!bl) return; |
884 | bl->downloadMails(folder,mbox->getWrapper()); | 884 | bl->downloadMails(folder,mbox->getWrapper()); |
885 | } | 885 | } |
886 | 886 | ||
887 | void MBOXfolderItem::contextMenuSelected(int which) | 887 | void MHfolderItem::contextMenuSelected(int which) |
888 | { | 888 | { |
889 | switch(which) { | 889 | switch(which) { |
890 | case 0: | 890 | case 0: |
891 | deleteAllMail(mbox->getWrapper(),folder); | 891 | deleteAllMail(mbox->getWrapper(),folder); |
892 | break; | 892 | break; |
893 | case 1: | 893 | case 1: |