summaryrefslogtreecommitdiff
authoralwin <alwin>2003-12-19 19:29:26 (UTC)
committer alwin <alwin>2003-12-19 19:29:26 (UTC)
commitb66e2d718769a3ac1ae6bc1fc135c04f532bdbf3 (patch) (unidiff)
tree0fc344b67049b17c1c9dd010a915ef4a8a644256
parent71aa0d1be1970a105d3324fcff5d88f3e042b3cd (diff)
downloadopie-b66e2d718769a3ac1ae6bc1fc135c04f532bdbf3.zip
opie-b66e2d718769a3ac1ae6bc1fc135c04f532bdbf3.tar.gz
opie-b66e2d718769a3ac1ae6bc1fc135c04f532bdbf3.tar.bz2
-size of mail will be displayed
-only new/replied mail get an icon, I think it looks somewhat cleaner
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/mainwindow.cpp40
1 files changed, 38 insertions, 2 deletions
diff --git a/noncore/net/mail/mainwindow.cpp b/noncore/net/mail/mainwindow.cpp
index 89530ab..9a37510 100644
--- a/noncore/net/mail/mainwindow.cpp
+++ b/noncore/net/mail/mainwindow.cpp
@@ -1,18 +1,19 @@
1#include <qlabel.h> 1#include <qlabel.h>
2#include <qvbox.h> 2#include <qvbox.h>
3#include <qheader.h> 3#include <qheader.h>
4#include <qtimer.h> 4#include <qtimer.h>
5#include <qlayout.h> 5#include <qlayout.h>
6#include <qmessagebox.h> 6#include <qmessagebox.h>
7#include <qtextstream.h>
7 8
8#include <qpe/qpeapplication.h> 9#include <qpe/qpeapplication.h>
9#include <qpe/resource.h> 10#include <qpe/resource.h>
10 11
11#include "defines.h" 12#include "defines.h"
12#include "mainwindow.h" 13#include "mainwindow.h"
13#include "viewmail.h" 14#include "viewmail.h"
14#include "mailtypes.h" 15#include "mailtypes.h"
15#include "mailistviewitem.h" 16#include "mailistviewitem.h"
16 17
17MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags ) 18MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags )
18 : QMainWindow( parent, name, flags ) 19 : QMainWindow( parent, name, flags )
@@ -84,24 +85,25 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags )
84 folderView = new AccountView( view ); 85 folderView = new AccountView( view );
85 folderView->header()->hide(); 86 folderView->header()->hide();
86 folderView->setRootIsDecorated( true ); 87 folderView->setRootIsDecorated( true );
87 folderView->addColumn( tr( "Mailbox" ) ); 88 folderView->addColumn( tr( "Mailbox" ) );
88 //folderView->hide(); 89 //folderView->hide();
89 90
90 layout->addWidget( folderView ); 91 layout->addWidget( folderView );
91 92
92 mailView = new QListView( view ); 93 mailView = new QListView( view );
93 mailView->addColumn( tr( "" ) ); 94 mailView->addColumn( tr( "" ) );
94 mailView->addColumn( tr( "Subject" ),QListView::Manual ); 95 mailView->addColumn( tr( "Subject" ),QListView::Manual );
95 mailView->addColumn( tr( "Sender" ),QListView::Manual ); 96 mailView->addColumn( tr( "Sender" ),QListView::Manual );
97 mailView->addColumn( tr( "Size" ),QListView::Manual);
96 mailView->addColumn( tr( "Date" )); 98 mailView->addColumn( tr( "Date" ));
97 mailView->setAllColumnsShowFocus(true); 99 mailView->setAllColumnsShowFocus(true);
98 mailView->setSorting(-1); 100 mailView->setSorting(-1);
99 101
100 layout->addWidget( mailView ); 102 layout->addWidget( mailView );
101 layout->setStretchFactor( folderView, 1 ); 103 layout->setStretchFactor( folderView, 1 );
102 layout->setStretchFactor( mailView, 2 ); 104 layout->setStretchFactor( mailView, 2 );
103 105
104 slotAdjustLayout(); 106 slotAdjustLayout();
105 107
106 connect( mailView, SIGNAL( clicked( QListViewItem * ) ),this, 108 connect( mailView, SIGNAL( clicked( QListViewItem * ) ),this,
107 SLOT( displayMail( QListViewItem * ) ) ); 109 SLOT( displayMail( QListViewItem * ) ) );
@@ -127,24 +129,25 @@ void MainWindow::slotAdjustLayout() {
127 129
128void MainWindow::slotAdjustColumns() 130void MainWindow::slotAdjustColumns()
129{ 131{
130 bool hidden = folderView->isHidden(); 132 bool hidden = folderView->isHidden();
131 if ( hidden ) folderView->show(); 133 if ( hidden ) folderView->show();
132 folderView->setColumnWidth( 0, folderView->visibleWidth() ); 134 folderView->setColumnWidth( 0, folderView->visibleWidth() );
133 if ( hidden ) folderView->hide(); 135 if ( hidden ) folderView->hide();
134 136
135 mailView->setColumnWidth( 0, 10 ); 137 mailView->setColumnWidth( 0, 10 );
136 mailView->setColumnWidth( 1, mailView->visibleWidth() - 130 ); 138 mailView->setColumnWidth( 1, mailView->visibleWidth() - 130 );
137 mailView->setColumnWidth( 2, 80 ); 139 mailView->setColumnWidth( 2, 80 );
138 mailView->setColumnWidth( 3, 50 ); 140 mailView->setColumnWidth( 3, 50 );
141 mailView->setColumnWidth( 4, 50 );
139} 142}
140 143
141void MainWindow::slotShowFolders( bool show ) 144void MainWindow::slotShowFolders( bool show )
142{ 145{
143 qDebug( "Show Folders" ); 146 qDebug( "Show Folders" );
144 if ( show && folderView->isHidden() ) { 147 if ( show && folderView->isHidden() ) {
145 qDebug( "-> showing" ); 148 qDebug( "-> showing" );
146 folderView->show(); 149 folderView->show();
147 } else if ( !show && !folderView->isHidden() ) { 150 } else if ( !show && !folderView->isHidden() ) {
148 qDebug( "-> hiding" ); 151 qDebug( "-> hiding" );
149 folderView->hide(); 152 folderView->hide();
150 } 153 }
@@ -193,31 +196,64 @@ void MainWindow::slotDeleteMail()
193 196
194 197
195MailListViewItem::MailListViewItem(QListView * parent, MailListViewItem * item ) 198MailListViewItem::MailListViewItem(QListView * parent, MailListViewItem * item )
196 :QListViewItem(parent,item),mail_data() 199 :QListViewItem(parent,item),mail_data()
197{ 200{
198} 201}
199 202
200void MailListViewItem::showEntry() 203void MailListViewItem::showEntry()
201{ 204{
202 if ( mail_data.getFlags().testBit( FLAG_ANSWERED ) == true) { 205 if ( mail_data.getFlags().testBit( FLAG_ANSWERED ) == true) {
203 setPixmap( 0, Resource::loadPixmap( "mail/kmmsgreplied") ); 206 setPixmap( 0, Resource::loadPixmap( "mail/kmmsgreplied") );
204 } else if ( mail_data.getFlags().testBit( FLAG_SEEN ) == true ) { 207 } else if ( mail_data.getFlags().testBit( FLAG_SEEN ) == true ) {
205 setPixmap( 0, Resource::loadPixmap( "mail/kmmsgunseen") ); 208 /* I think it looks nicer if there are not such a log of icons but only on mails
209 replied or new - Alwin*/
210 //setPixmap( 0, Resource::loadPixmap( "mail/kmmsgunseen") );
206 } else { 211 } else {
207 setPixmap( 0, Resource::loadPixmap( "mail/kmmsgnew") ); 212 setPixmap( 0, Resource::loadPixmap( "mail/kmmsgnew") );
208 } 213 }
214 double s = mail_data.Msgsize();
215 int w;
216 w=0;
217
218 while (s>1024) {
219 s/=1024;
220 ++w;
221 if (w>=2) break;
222 }
223
224 QString q="";
225 QString fsize="";
226 switch(w) {
227 case 1:
228 q="k";
229 break;
230 case 2:
231 q="M";
232 break;
233 default:
234 break;
235 }
236
237 {
238 QTextOStream o(&fsize);
239 if (w>0) o.precision(2); else o.precision(0);
240 o.setf(QTextStream::fixed);
241 o << s << " " << q << "Byte";
242 }
243
209 setText(1,mail_data.getSubject()); 244 setText(1,mail_data.getSubject());
210 setText(2,mail_data.getFrom()); 245 setText(2,mail_data.getFrom());
211 setText(3,mail_data.getDate()); 246 setText(3,fsize);
247 setText(4,mail_data.getDate());
212} 248}
213 249
214void MailListViewItem::storeData(const RecMail&data) 250void MailListViewItem::storeData(const RecMail&data)
215{ 251{
216 mail_data = data; 252 mail_data = data;
217} 253}
218 254
219const RecMail& MailListViewItem::data()const 255const RecMail& MailListViewItem::data()const
220{ 256{
221 return mail_data; 257 return mail_data;
222} 258}
223 259