summaryrefslogtreecommitdiff
path: root/noncore/net/mail/accountview.cpp
authoralwin <alwin>2003-12-14 01:54:32 (UTC)
committer alwin <alwin>2003-12-14 01:54:32 (UTC)
commit154e03927d2b97f3f76f807fe104ac9d74035215 (patch) (unidiff)
tree11ab26b6e072f79dc9ebcb78e887b7e269f908f5 /noncore/net/mail/accountview.cpp
parent898d1d9abda9889c3bb3adc44dd253e0a4ede746 (diff)
downloadopie-154e03927d2b97f3f76f807fe104ac9d74035215.zip
opie-154e03927d2b97f3f76f807fe104ac9d74035215.tar.gz
opie-154e03927d2b97f3f76f807fe104ac9d74035215.tar.bz2
order of imapfolders will be displayed as the server lists
Diffstat (limited to 'noncore/net/mail/accountview.cpp') (more/less context) (show whitespace changes)
-rw-r--r--noncore/net/mail/accountview.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/noncore/net/mail/accountview.cpp b/noncore/net/mail/accountview.cpp
index ac4f0e0..847b099 100644
--- a/noncore/net/mail/accountview.cpp
+++ b/noncore/net/mail/accountview.cpp
@@ -61,41 +61,42 @@ AbstractMail *IMAPviewItem::getWrapper()
61void IMAPviewItem::refresh(QList<RecMail>&) 61void IMAPviewItem::refresh(QList<RecMail>&)
62{ 62{
63 QList<Folder> *folders = wrapper->listFolders(); 63 QList<Folder> *folders = wrapper->listFolders();
64 64
65 QListViewItem *child = firstChild(); 65 QListViewItem *child = firstChild();
66 while ( child ) { 66 while ( child ) {
67 QListViewItem *tmp = child; 67 QListViewItem *tmp = child;
68 child = child->nextSibling(); 68 child = child->nextSibling();
69 delete tmp; 69 delete tmp;
70 } 70 }
71 71
72 Folder *it; 72 Folder *it;
73 QListViewItem*item = 0;
73 for ( it = folders->first(); it; it = folders->next() ) { 74 for ( it = folders->first(); it; it = folders->next() ) {
74 (void) new IMAPfolderItem( it, this ); 75 item = new IMAPfolderItem( it, this , item );
75 } 76 }
76} 77}
77 78
78RecBody IMAPviewItem::fetchBody(const RecMail&) 79RecBody IMAPviewItem::fetchBody(const RecMail&)
79{ 80{
80 return RecBody(); 81 return RecBody();
81} 82}
82 83
83IMAPfolderItem::~IMAPfolderItem() 84IMAPfolderItem::~IMAPfolderItem()
84{ 85{
85 delete folder; 86 delete folder;
86} 87}
87 88
88IMAPfolderItem::IMAPfolderItem( Folder *folderInit, IMAPviewItem *parent ) 89IMAPfolderItem::IMAPfolderItem( Folder *folderInit, IMAPviewItem *parent , QListViewItem*after )
89 : AccountViewItem( parent ) 90 : AccountViewItem( parent,after )
90{ 91{
91 folder = folderInit; 92 folder = folderInit;
92 imap = parent; 93 imap = parent;
93 setPixmap( 0, PIXMAP_IMAPFOLDER ); 94 setPixmap( 0, PIXMAP_IMAPFOLDER );
94 setText( 0, folder->getDisplayName() ); 95 setText( 0, folder->getDisplayName() );
95} 96}
96 97
97void IMAPfolderItem::refresh(QList<RecMail>&target) 98void IMAPfolderItem::refresh(QList<RecMail>&target)
98{ 99{
99 imap->getWrapper()->listMessages( folder->getName(),target ); 100 imap->getWrapper()->listMessages( folder->getName(),target );
100} 101}
101 102
@@ -104,24 +105,25 @@ RecBody IMAPfolderItem::fetchBody(const RecMail&aMail)
104 return imap->getWrapper()->fetchBody(aMail); 105 return imap->getWrapper()->fetchBody(aMail);
105} 106}
106 107
107/** 108/**
108 * Generic stuff 109 * Generic stuff
109 */ 110 */
110 111
111AccountView::AccountView( QWidget *parent, const char *name, WFlags flags ) 112AccountView::AccountView( QWidget *parent, const char *name, WFlags flags )
112 : QListView( parent, name, flags ) 113 : QListView( parent, name, flags )
113{ 114{
114 connect( this, SIGNAL( clicked( QListViewItem * ) ), 115 connect( this, SIGNAL( clicked( QListViewItem * ) ),
115 SLOT( refresh( QListViewItem * ) ) ); 116 SLOT( refresh( QListViewItem * ) ) );
117 setSorting(-1);
116} 118}
117 119
118void AccountView::populate( QList<Account> list ) 120void AccountView::populate( QList<Account> list )
119{ 121{
120 clear(); 122 clear();
121 123
122 Account *it; 124 Account *it;
123 for ( it = list.first(); it; it = list.next() ) { 125 for ( it = list.first(); it; it = list.next() ) {
124 if ( it->getType().compare( "IMAP" ) == 0 ) { 126 if ( it->getType().compare( "IMAP" ) == 0 ) {
125 IMAPaccount *imap = static_cast<IMAPaccount *>(it); 127 IMAPaccount *imap = static_cast<IMAPaccount *>(it);
126 qDebug( "added IMAP " + imap->getAccountName() ); 128 qDebug( "added IMAP " + imap->getAccountName() );
127 (void) new IMAPviewItem( imap, this ); 129 (void) new IMAPviewItem( imap, this );