summaryrefslogtreecommitdiff
authoralwin <alwin>2003-12-25 20:35:46 (UTC)
committer alwin <alwin>2003-12-25 20:35:46 (UTC)
commit34a7e0451c95e8a19735610553dba064b68823d9 (patch) (unidiff)
treed6f763a9571f65743ee45f9cee998fa74babe41a
parentbde1302aed8a0e2506684eaae7c2d2d823de42c6 (diff)
downloadopie-34a7e0451c95e8a19735610553dba064b68823d9.zip
opie-34a7e0451c95e8a19735610553dba064b68823d9.tar.gz
opie-34a7e0451c95e8a19735610553dba064b68823d9.tar.bz2
context menues for single mails when holding the stylus or left mouse button
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/mainwindow.cpp43
-rw-r--r--noncore/net/mail/mainwindow.h8
2 files changed, 41 insertions, 10 deletions
diff --git a/noncore/net/mail/mainwindow.cpp b/noncore/net/mail/mainwindow.cpp
index a57fb0d..dc8c188 100644
--- a/noncore/net/mail/mainwindow.cpp
+++ b/noncore/net/mail/mainwindow.cpp
@@ -1,280 +1,309 @@
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#include <qtextstream.h>
8 8
9#include <qpe/qpeapplication.h> 9#include <qpe/qpeapplication.h>
10#include <qpe/resource.h> 10#include <qpe/resource.h>
11 11
12#include "defines.h" 12#include "defines.h"
13#include "mainwindow.h" 13#include "mainwindow.h"
14#include "settingsdialog.h" 14#include "settingsdialog.h"
15#include "viewmail.h" 15#include "viewmail.h"
16#include "mailtypes.h" 16#include "mailtypes.h"
17#include "mailistviewitem.h" 17#include "mailistviewitem.h"
18 18
19 19
20MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags ) 20MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags )
21 : QMainWindow( parent, name, flags ) 21 : QMainWindow( parent, name, flags )
22{ 22{
23 setCaption( tr( "Mail" ) ); 23 setCaption( tr( "Mail" ) );
24 setToolBarsMovable( false ); 24 setToolBarsMovable( false );
25 25
26 toolBar = new QToolBar( this ); 26 toolBar = new QToolBar( this );
27 menuBar = new QMenuBar( toolBar ); 27 menuBar = new QMenuBar( toolBar );
28 mailMenu = new QPopupMenu( menuBar ); 28 mailMenu = new QPopupMenu( menuBar );
29 menuBar->insertItem( tr( "Mail" ), mailMenu ); 29 menuBar->insertItem( tr( "Mail" ), mailMenu );
30 settingsMenu = new QPopupMenu( menuBar ); 30 settingsMenu = new QPopupMenu( menuBar );
31 menuBar->insertItem( tr( "Settings" ), settingsMenu ); 31 menuBar->insertItem( tr( "Settings" ), settingsMenu );
32 32
33 addToolBar( toolBar ); 33 addToolBar( toolBar );
34 toolBar->setHorizontalStretchable( true ); 34 toolBar->setHorizontalStretchable( true );
35 35
36 QLabel *spacer = new QLabel( toolBar ); 36 QLabel *spacer = new QLabel( toolBar );
37 spacer->setBackgroundMode( QWidget::PaletteButton ); 37 spacer->setBackgroundMode( QWidget::PaletteButton );
38 toolBar->setStretchableWidget( spacer ); 38 toolBar->setStretchableWidget( spacer );
39 39
40 composeMail = new QAction( tr( "Compose new mail" ), ICON_COMPOSEMAIL, 40 composeMail = new QAction( tr( "Compose new mail" ), ICON_COMPOSEMAIL,
41 0, 0, this ); 41 0, 0, this );
42 composeMail->addTo( toolBar ); 42 composeMail->addTo( toolBar );
43 composeMail->addTo( mailMenu ); 43 composeMail->addTo( mailMenu );
44 44
45 sendQueued = new QAction( tr( "Send queued mails" ), ICON_SENDQUEUED, 45 sendQueued = new QAction( tr( "Send queued mails" ), ICON_SENDQUEUED,
46 0, 0, this ); 46 0, 0, this );
47 sendQueued->addTo( toolBar ); 47 sendQueued->addTo( toolBar );
48 sendQueued->addTo( mailMenu ); 48 sendQueued->addTo( mailMenu );
49 49
50 /* 50 /*
51 syncFolders = new QAction( tr( "Sync mailfolders" ), ICON_SYNC, 51 syncFolders = new QAction( tr( "Sync mailfolders" ), ICON_SYNC,
52 0, 0, this ); 52 0, 0, this );
53 syncFolders->addTo( toolBar ); 53 syncFolders->addTo( toolBar );
54 syncFolders->addTo( mailMenu ); 54 syncFolders->addTo( mailMenu );
55 */ 55 */
56 56
57 showFolders = new QAction( tr( "Show/Hide folders" ), ICON_SHOWFOLDERS, 57 showFolders = new QAction( tr( "Show/Hide folders" ), ICON_SHOWFOLDERS,
58 0, 0, this, 0, true ); 58 0, 0, this, 0, true );
59 showFolders->addTo( toolBar ); 59 showFolders->addTo( toolBar );
60 showFolders->addTo( mailMenu ); 60 showFolders->addTo( mailMenu );
61 showFolders->setOn( true ); 61 showFolders->setOn( true );
62 connect(showFolders, SIGNAL( toggled( bool ) ), 62 connect(showFolders, SIGNAL( toggled( bool ) ),
63 SLOT( slotShowFolders( bool ) ) ); 63 SLOT( slotShowFolders( bool ) ) );
64 64
65 /* 65 /*
66 searchMails = new QAction( tr( "Search mails" ), ICON_SEARCHMAILS, 66 searchMails = new QAction( tr( "Search mails" ), ICON_SEARCHMAILS,
67 0, 0, this ); 67 0, 0, this );
68 searchMails->addTo( toolBar ); 68 searchMails->addTo( toolBar );
69 searchMails->addTo( mailMenu ); 69 searchMails->addTo( mailMenu );
70 */ 70 */
71 71
72 deleteMails = new QAction(tr("Delete Mail"), QIconSet(Resource::loadPixmap("mail/delete")), 0, 0, this); 72 deleteMails = new QAction(tr("Delete Mail"), QIconSet(Resource::loadPixmap("mail/delete")), 0, 0, this);
73 deleteMails->addTo( toolBar ); 73 deleteMails->addTo( toolBar );
74 deleteMails->addTo( mailMenu ); 74 deleteMails->addTo( mailMenu );
75 connect( deleteMails, SIGNAL( activated() ), 75 connect( deleteMails, SIGNAL( activated() ),
76 SLOT( slotDeleteMail() ) ); 76 SLOT( slotDeleteMail() ) );
77 77
78 editSettings = new QAction( tr( "Edit settings" ), ICON_EDITSETTINGS, 78 editSettings = new QAction( tr( "Edit settings" ), ICON_EDITSETTINGS,
79 0, 0, this ); 79 0, 0, this );
80 editSettings->addTo( settingsMenu ); 80 editSettings->addTo( settingsMenu );
81 connect( editSettings, SIGNAL( activated() ), 81 connect( editSettings, SIGNAL( activated() ),
82 SLOT( slotEditSettings() ) ); 82 SLOT( slotEditSettings() ) );
83 83
84 editAccounts = new QAction( tr( "Configure accounts" ), ICON_EDITACCOUNTS, 84 editAccounts = new QAction( tr( "Configure accounts" ), ICON_EDITACCOUNTS,
85 0, 0, this ); 85 0, 0, this );
86 editAccounts->addTo( settingsMenu ); 86 editAccounts->addTo( settingsMenu );
87 87
88 //setCentralWidget( view ); 88 //setCentralWidget( view );
89 89
90 QVBox* wrapperBox = new QVBox( this ); 90 QVBox* wrapperBox = new QVBox( this );
91 setCentralWidget( wrapperBox ); 91 setCentralWidget( wrapperBox );
92 92
93 QWidget *view = new QWidget( wrapperBox ); 93 QWidget *view = new QWidget( wrapperBox );
94 94
95 layout = new QBoxLayout ( view, QBoxLayout::LeftToRight ); 95 layout = new QBoxLayout ( view, QBoxLayout::LeftToRight );
96 96
97 folderView = new AccountView( view ); 97 folderView = new AccountView( view );
98 folderView->header()->hide(); 98 folderView->header()->hide();
99 folderView->setRootIsDecorated( true ); 99 folderView->setRootIsDecorated( true );
100 folderView->addColumn( tr( "Mailbox" ) ); 100 folderView->addColumn( tr( "Mailbox" ) );
101 101
102 layout->addWidget( folderView ); 102 layout->addWidget( folderView );
103 103
104 mailView = new QListView( view ); 104 mailView = new QListView( view );
105 mailView->addColumn( tr( "" ) ); 105 mailView->addColumn( tr( "" ) );
106 mailView->addColumn( tr( "Subject" ),QListView::Manual ); 106 mailView->addColumn( tr( "Subject" ),QListView::Manual );
107 mailView->addColumn( tr( "Sender" ),QListView::Manual ); 107 mailView->addColumn( tr( "Sender" ),QListView::Manual );
108 mailView->addColumn( tr( "Size" ),QListView::Manual); 108 mailView->addColumn( tr( "Size" ),QListView::Manual);
109 mailView->addColumn( tr( "Date" )); 109 mailView->addColumn( tr( "Date" ));
110 mailView->setAllColumnsShowFocus(true); 110 mailView->setAllColumnsShowFocus(true);
111 mailView->setSorting(-1); 111 mailView->setSorting(-1);
112 112
113 statusWidget = new StatusWidget( wrapperBox ); 113 statusWidget = new StatusWidget( wrapperBox );
114 statusWidget->hide(); 114 statusWidget->hide();
115 115
116 layout->addWidget( mailView ); 116 layout->addWidget( mailView );
117 layout->setStretchFactor( folderView, 1 ); 117 layout->setStretchFactor( folderView, 1 );
118 layout->setStretchFactor( mailView, 2 ); 118 layout->setStretchFactor( mailView, 2 );
119 119
120 120
121 slotAdjustLayout(); 121 slotAdjustLayout();
122 122
123 connect( mailView, SIGNAL( clicked( QListViewItem * ) ),this, 123 QPEApplication::setStylusOperation( mailView->viewport(),QPEApplication::RightOnHold);
124 SLOT( displayMail( QListViewItem * ) ) ); 124
125 125 connect( mailView, SIGNAL( mouseButtonClicked(int, QListViewItem *,const QPoint&,int ) ),this,
126 SLOT( mailLeftClicked( int, QListViewItem *,const QPoint&,int ) ) );
127
128 connect( mailView, SIGNAL( mouseButtonPressed(int, QListViewItem *,const QPoint&,int ) ),this,
129 SLOT( mailHold( int, QListViewItem *,const QPoint&,int ) ) );
130#if 0
131 connect( mailView, SIGNAL( rightButtonClicked( QListViewItem *,const QPoint&,int ) ),this,
132 SLOT( mailHold(QListViewItem *,const QPoint&,int) ));
133#endif
126 connect(folderView, SIGNAL(refreshMailview(QList<RecMail>*)),this,SLOT(refreshMailView(QList<RecMail>*))); 134 connect(folderView, SIGNAL(refreshMailview(QList<RecMail>*)),this,SLOT(refreshMailView(QList<RecMail>*)));
127 135
128 QTimer::singleShot( 1000, this, SLOT( slotAdjustColumns() ) ); 136 QTimer::singleShot( 1000, this, SLOT( slotAdjustColumns() ) );
129 137
130} 138}
131 139
132 140
133void MainWindow::slotAdjustLayout() { 141void MainWindow::slotAdjustLayout() {
134 142
135 QWidget *d = QApplication::desktop(); 143 QWidget *d = QApplication::desktop();
136 144
137 if ( d->width() < d->height() ) { 145 if ( d->width() < d->height() ) {
138 layout->setDirection( QBoxLayout::TopToBottom ); 146 layout->setDirection( QBoxLayout::TopToBottom );
139 } else { 147 } else {
140 layout->setDirection( QBoxLayout::LeftToRight ); 148 layout->setDirection( QBoxLayout::LeftToRight );
141 } 149 }
142} 150}
143 151
144void MainWindow::slotAdjustColumns() 152void MainWindow::slotAdjustColumns()
145{ 153{
146 bool hidden = folderView->isHidden(); 154 bool hidden = folderView->isHidden();
147 if ( hidden ) folderView->show(); 155 if ( hidden ) folderView->show();
148 folderView->setColumnWidth( 0, folderView->visibleWidth() ); 156 folderView->setColumnWidth( 0, folderView->visibleWidth() );
149 if ( hidden ) folderView->hide(); 157 if ( hidden ) folderView->hide();
150 158
151 mailView->setColumnWidth( 0, 10 ); 159 mailView->setColumnWidth( 0, 10 );
152 mailView->setColumnWidth( 1, mailView->visibleWidth() - 130 ); 160 mailView->setColumnWidth( 1, mailView->visibleWidth() - 130 );
153 mailView->setColumnWidth( 2, 80 ); 161 mailView->setColumnWidth( 2, 80 );
154 mailView->setColumnWidth( 3, 50 ); 162 mailView->setColumnWidth( 3, 50 );
155 mailView->setColumnWidth( 4, 50 ); 163 mailView->setColumnWidth( 4, 50 );
156} 164}
157 165
158void MainWindow::slotEditSettings() { 166void MainWindow::slotEditSettings() {
159 SettingsDialog settingsDialog( this, 0, true ); 167 SettingsDialog settingsDialog( this, 0, true );
160 settingsDialog.showMaximized(); 168 settingsDialog.showMaximized();
161 settingsDialog.exec(); 169 settingsDialog.exec();
162} 170}
163 171
164void MainWindow::slotShowFolders( bool show ) 172void MainWindow::slotShowFolders( bool show )
165{ 173{
166 qDebug( "Show Folders" ); 174 qDebug( "Show Folders" );
167 if ( show && folderView->isHidden() ) { 175 if ( show && folderView->isHidden() ) {
168 qDebug( "-> showing" ); 176 qDebug( "-> showing" );
169 folderView->show(); 177 folderView->show();
170 } else if ( !show && !folderView->isHidden() ) { 178 } else if ( !show && !folderView->isHidden() ) {
171 qDebug( "-> hiding" ); 179 qDebug( "-> hiding" );
172 folderView->hide(); 180 folderView->hide();
173 } 181 }
174} 182}
175 183
176void MainWindow::refreshMailView(QList<RecMail>*list) 184void MainWindow::refreshMailView(QList<RecMail>*list)
177{ 185{
178 MailListViewItem*item = 0; 186 MailListViewItem*item = 0;
179 mailView->clear(); 187 mailView->clear();
180 for (unsigned int i = 0; i < list->count();++i) { 188 for (unsigned int i = 0; i < list->count();++i) {
181 item = new MailListViewItem(mailView,item); 189 item = new MailListViewItem(mailView,item);
182 item->storeData(*(list->at(i))); 190 item->storeData(*(list->at(i)));
183 item->showEntry(); 191 item->showEntry();
184 } 192 }
185} 193}
186void MainWindow::displayMail(QListViewItem*item) 194void MainWindow::mailLeftClicked(int button, QListViewItem *item,const QPoint&,int )
187{ 195{
196 /* just LEFT button - or tap with stylus on pda */
197 if (button!=1) return;
198 if (!item) return;
199 displayMail();
200}
188 201
202void MainWindow::displayMail()
203{
204 QListViewItem*item = mailView->currentItem();
189 if (!item) return; 205 if (!item) return;
190 RecMail mail = ((MailListViewItem*)item)->data(); 206 RecMail mail = ((MailListViewItem*)item)->data();
191 RecBody body = folderView->fetchBody(mail); 207 RecBody body = folderView->fetchBody(mail);
192
193 ViewMail readMail( this ); 208 ViewMail readMail( this );
194 readMail.setBody( body ); 209 readMail.setBody( body );
195 readMail.setMail( mail ); 210 readMail.setMail( mail );
196 readMail.showMaximized(); 211 readMail.showMaximized();
197 readMail.exec(); 212 readMail.exec();
198 213
199 if ( readMail.deleted ) { 214 if ( readMail.deleted ) {
200 folderView->refreshCurrent(); 215 folderView->refreshCurrent();
201 } else { 216 } else {
202 ( (MailListViewItem*)item )->setPixmap( 0, Resource::loadPixmap( "") ); 217 ( (MailListViewItem*)item )->setPixmap( 0, Resource::loadPixmap( "") );
203 } 218 }
204} 219}
205 220
206void MainWindow::slotDeleteMail() 221void MainWindow::slotDeleteMail()
207{ 222{
208 if (!mailView->currentItem()) return; 223 if (!mailView->currentItem()) return;
209 RecMail mail = ((MailListViewItem*)mailView->currentItem() )->data(); 224 RecMail mail = ((MailListViewItem*)mailView->currentItem() )->data();
210 if ( QMessageBox::warning(this, tr("Delete Mail"), QString( tr("<p>Do you really want to delete this mail? <br><br>" ) + mail.getFrom() + " - " + mail.getSubject() ) , QMessageBox::Yes, QMessageBox::No ) == QMessageBox::Yes ) { 225 if ( QMessageBox::warning(this, tr("Delete Mail"), QString( tr("<p>Do you really want to delete this mail? <br><br>" ) + mail.getFrom() + " - " + mail.getSubject() ) , QMessageBox::Yes, QMessageBox::No ) == QMessageBox::Yes ) {
211 mail.Wrapper()->deleteMail( mail ); 226 mail.Wrapper()->deleteMail( mail );
212 folderView->refreshCurrent(); 227 folderView->refreshCurrent();
213 } 228 }
214} 229}
215 230
216 231void MainWindow::mailHold(int button, QListViewItem *item,const QPoint&,int )
232{
233 /* just the RIGHT button - or hold on pda */
234 if (button!=2) {return;}
235 qDebug("Event right/hold");
236 if (!item) return;
237 QPopupMenu *m = new QPopupMenu(0);
238 if (m) {
239 m->insertItem(tr("Read this mail"),this,SLOT(displayMail()));
240 m->insertItem(tr("Delete this mail"),this,SLOT(slotDeleteMail()));
241 m->setFocus();
242 m->exec( QPoint( QCursor::pos().x(), QCursor::pos().y()) );
243 delete m;
244 }
245}
217 246
218MailListViewItem::MailListViewItem(QListView * parent, MailListViewItem * item ) 247MailListViewItem::MailListViewItem(QListView * parent, MailListViewItem * item )
219 :QListViewItem(parent,item),mail_data() 248 :QListViewItem(parent,item),mail_data()
220{ 249{
221} 250}
222 251
223void MailListViewItem::showEntry() 252void MailListViewItem::showEntry()
224{ 253{
225 if ( mail_data.getFlags().testBit( FLAG_ANSWERED ) == true) { 254 if ( mail_data.getFlags().testBit( FLAG_ANSWERED ) == true) {
226 setPixmap( 0, Resource::loadPixmap( "mail/kmmsgreplied") ); 255 setPixmap( 0, Resource::loadPixmap( "mail/kmmsgreplied") );
227 } else if ( mail_data.getFlags().testBit( FLAG_SEEN ) == true ) { 256 } else if ( mail_data.getFlags().testBit( FLAG_SEEN ) == true ) {
228 /* I think it looks nicer if there are not such a log of icons but only on mails 257 /* I think it looks nicer if there are not such a log of icons but only on mails
229 replied or new - Alwin*/ 258 replied or new - Alwin*/
230 //setPixmap( 0, Resource::loadPixmap( "mail/kmmsgunseen") ); 259 //setPixmap( 0, Resource::loadPixmap( "mail/kmmsgunseen") );
231 } else { 260 } else {
232 setPixmap( 0, Resource::loadPixmap( "mail/kmmsgnew") ); 261 setPixmap( 0, Resource::loadPixmap( "mail/kmmsgnew") );
233 } 262 }
234 double s = mail_data.Msgsize(); 263 double s = mail_data.Msgsize();
235 int w; 264 int w;
236 w=0; 265 w=0;
237 266
238 while (s>1024) { 267 while (s>1024) {
239 s/=1024; 268 s/=1024;
240 ++w; 269 ++w;
241 if (w>=2) break; 270 if (w>=2) break;
242 } 271 }
243 272
244 QString q=""; 273 QString q="";
245 QString fsize=""; 274 QString fsize="";
246 switch(w) { 275 switch(w) {
247 case 1: 276 case 1:
248 q="k"; 277 q="k";
249 break; 278 break;
250 case 2: 279 case 2:
251 q="M"; 280 q="M";
252 break; 281 break;
253 default: 282 default:
254 break; 283 break;
255 } 284 }
256 285
257 { 286 {
258 QTextOStream o(&fsize); 287 QTextOStream o(&fsize);
259 if (w>0) o.precision(2); else o.precision(0); 288 if (w>0) o.precision(2); else o.precision(0);
260 o.setf(QTextStream::fixed); 289 o.setf(QTextStream::fixed);
261 o << s << " " << q << "Byte"; 290 o << s << " " << q << "Byte";
262 } 291 }
263 292
264 setText(1,mail_data.getSubject()); 293 setText(1,mail_data.getSubject());
265 setText(2,mail_data.getFrom()); 294 setText(2,mail_data.getFrom());
266 setText(3,fsize); 295 setText(3,fsize);
267 setText(4,mail_data.getDate()); 296 setText(4,mail_data.getDate());
268} 297}
269 298
270void MailListViewItem::storeData(const RecMail&data) 299void MailListViewItem::storeData(const RecMail&data)
271{ 300{
272 mail_data = data; 301 mail_data = data;
273} 302}
274 303
275const RecMail& MailListViewItem::data()const 304const RecMail& MailListViewItem::data()const
276{ 305{
277 return mail_data; 306 return mail_data;
278} 307}
279 308
280 309
diff --git a/noncore/net/mail/mainwindow.h b/noncore/net/mail/mainwindow.h
index 4e4f4bb..638232a 100644
--- a/noncore/net/mail/mainwindow.h
+++ b/noncore/net/mail/mainwindow.h
@@ -1,46 +1,48 @@
1#ifndef MAINWINDOW_H 1#ifndef MAINWINDOW_H
2#define MAINWINDOW_H 2#define MAINWINDOW_H
3 3
4#include <qmainwindow.h> 4#include <qmainwindow.h>
5#include <qlistview.h> 5#include <qlistview.h>
6#include <qaction.h> 6#include <qaction.h>
7 7
8#include <qtoolbar.h> 8#include <qtoolbar.h>
9#include <qmenubar.h> 9#include <qmenubar.h>
10 10
11#include "accountview.h" 11#include "accountview.h"
12#include "statuswidget.h" 12#include "statuswidget.h"
13 13
14class RecMail; 14class RecMail;
15 15
16class MainWindow : public QMainWindow 16class MainWindow : public QMainWindow
17{ 17{
18 Q_OBJECT 18 Q_OBJECT
19 19
20public: 20public:
21 MainWindow( QWidget *parent = 0, const char *name = 0, WFlags flags = 0 ); 21 MainWindow( QWidget *parent = 0, const char *name = 0, WFlags flags = 0 );
22 22
23public slots: 23public slots:
24 void slotAdjustColumns(); 24 void slotAdjustColumns();
25 25
26protected slots: 26protected slots:
27 virtual void slotShowFolders( bool show ); 27 virtual void slotShowFolders( bool show );
28 virtual void refreshMailView(QList<RecMail>*); 28 virtual void refreshMailView(QList<RecMail>*);
29 virtual void displayMail(QListViewItem*); 29 virtual void displayMail();
30 virtual void slotDeleteMail(); 30 virtual void slotDeleteMail();
31 void slotAdjustLayout(); 31 virtual void mailHold(int, QListViewItem *,const QPoint&,int);
32 void slotEditSettings(); 32 virtual void slotAdjustLayout();
33 virtual void slotEditSettings();
34 virtual void mailLeftClicked( int, QListViewItem *,const QPoint&,int );
33 35
34protected: 36protected:
35 QToolBar *toolBar; 37 QToolBar *toolBar;
36 StatusWidget *statusWidget; 38 StatusWidget *statusWidget;
37 QMenuBar *menuBar; 39 QMenuBar *menuBar;
38 QPopupMenu *mailMenu, *settingsMenu; 40 QPopupMenu *mailMenu, *settingsMenu;
39 QAction *composeMail, *sendQueued, *showFolders, *searchMails, *deleteMails, 41 QAction *composeMail, *sendQueued, *showFolders, *searchMails, *deleteMails,
40 *editSettings, *editAccounts, *syncFolders; 42 *editSettings, *editAccounts, *syncFolders;
41 AccountView *folderView; 43 AccountView *folderView;
42 QListView *mailView; 44 QListView *mailView;
43 QBoxLayout *layout; 45 QBoxLayout *layout;
44}; 46};
45 47
46#endif 48#endif