summaryrefslogtreecommitdiff
authorharlekin <harlekin>2003-12-14 00:20:38 (UTC)
committer harlekin <harlekin>2003-12-14 00:20:38 (UTC)
commitff2b84787e454f8a11aaef7a4ce18941ac0d28fd (patch) (unidiff)
tree44bf51f9a3935542cdcfa5dafcc212e4f01ee8ce
parentb0a71314013a3367767526b68928a7168b4ad460 (diff)
downloadopie-ff2b84787e454f8a11aaef7a4ce18941ac0d28fd.zip
opie-ff2b84787e454f8a11aaef7a4ce18941ac0d28fd.tar.gz
opie-ff2b84787e454f8a11aaef7a4ce18941ac0d28fd.tar.bz2
deleting of mails working
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/accountview.cpp26
-rw-r--r--noncore/net/mail/accountview.h6
-rw-r--r--noncore/net/mail/mainwindow.cpp29
-rw-r--r--noncore/net/mail/mainwindow.h4
-rw-r--r--noncore/net/mail/viewmail.cpp8
-rw-r--r--noncore/net/mail/viewmail.h3
6 files changed, 64 insertions, 12 deletions
diff --git a/noncore/net/mail/accountview.cpp b/noncore/net/mail/accountview.cpp
index 1069b9f..ac4f0e0 100644
--- a/noncore/net/mail/accountview.cpp
+++ b/noncore/net/mail/accountview.cpp
@@ -63,3 +63,3 @@ void IMAPviewItem::refresh(QList<RecMail>&)
63 QList<Folder> *folders = wrapper->listFolders(); 63 QList<Folder> *folders = wrapper->listFolders();
64 64
65 QListViewItem *child = firstChild(); 65 QListViewItem *child = firstChild();
@@ -70,3 +70,3 @@ void IMAPviewItem::refresh(QList<RecMail>&)
70 } 70 }
71 71
72 Folder *it; 72 Folder *it;
@@ -82,3 +82,3 @@ RecBody IMAPviewItem::fetchBody(const RecMail&)
82 82
83IMAPfolderItem::~IMAPfolderItem() 83IMAPfolderItem::~IMAPfolderItem()
84{ 84{
@@ -96,3 +96,3 @@ IMAPfolderItem::IMAPfolderItem( Folder *folderInit, IMAPviewItem *parent )
96 96
97void IMAPfolderItem::refresh(QList<RecMail>&target) 97void IMAPfolderItem::refresh(QList<RecMail>&target)
98{ 98{
@@ -120,3 +120,3 @@ void AccountView::populate( QList<Account> list )
120 clear(); 120 clear();
121 121
122 Account *it; 122 Account *it;
@@ -136,4 +136,6 @@ void AccountView::populate( QList<Account> list )
136void AccountView::refresh(QListViewItem *item) { 136void AccountView::refresh(QListViewItem *item) {
137
137 qDebug("AccountView refresh..."); 138 qDebug("AccountView refresh...");
138 if ( item ) { 139 if ( item ) {
140 m_currentItem = item;
139 QList<RecMail> headerlist; 141 QList<RecMail> headerlist;
@@ -146,5 +148,15 @@ void AccountView::refresh(QListViewItem *item) {
146 148
149void AccountView::refreshCurrent()
150{
151 if ( !m_currentItem ) return;
152 QList<RecMail> headerlist;
153 headerlist.setAutoDelete(true);
154 AccountViewItem *view = static_cast<AccountViewItem *>(m_currentItem);
155 view->refresh(headerlist);
156 emit refreshMailview(&headerlist);
157}
158
147void AccountView::refreshAll() 159void AccountView::refreshAll()
148{ 160{
149 161
150} 162}
diff --git a/noncore/net/mail/accountview.h b/noncore/net/mail/accountview.h
index 83d49af..cdc87ce 100644
--- a/noncore/net/mail/accountview.h
+++ b/noncore/net/mail/accountview.h
@@ -79,5 +79,9 @@ public slots:
79 void refresh(QListViewItem *item); 79 void refresh(QListViewItem *item);
80 void refreshCurrent();
80 81
81signals: 82signals:
82 void refreshMailview(QList<RecMail>*); 83 void refreshMailview(QList<RecMail>*);
84
85private:
86 QListViewItem* m_currentItem;
83}; 87};
diff --git a/noncore/net/mail/mainwindow.cpp b/noncore/net/mail/mainwindow.cpp
index 8ef7ddd..c410829 100644
--- a/noncore/net/mail/mainwindow.cpp
+++ b/noncore/net/mail/mainwindow.cpp
@@ -62,2 +62,7 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags )
62 62
63 deleteMails = new QAction(tr("Delete Mail"), QIconSet(Resource::loadPixmap("mail/delete")), 0, 0, this);
64 deleteMails->addTo( toolBar );
65 deleteMails->addTo( mailMenu );
66 connect( deleteMails, SIGNAL( activated() ),
67 SLOT( slotDeleteMail() ) );
63 68
@@ -100,3 +105,3 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags flags )
100 105
101 connect(folderView,SIGNAL(refreshMailview(QList<RecMail>*)),this,SLOT(refreshMailView(QList<RecMail>*))); 106 connect(folderView, SIGNAL(refreshMailview(QList<RecMail>*)),this,SLOT(refreshMailView(QList<RecMail>*)));
102 107
@@ -133,3 +138,3 @@ void MainWindow::slotShowFolders( bool show )
133{ 138{
134 qDebug( "Show Folders" ); 139 qDebug( "Show Folders" );
135 if ( show && folderView->isHidden() ) { 140 if ( show && folderView->isHidden() ) {
@@ -155,2 +160,5 @@ void MainWindow::displayMail(QListViewItem*item)
155{ 160{
161
162 m_currentItem = item;
163
156 if (!item) return; 164 if (!item) return;
@@ -164,5 +172,20 @@ void MainWindow::displayMail(QListViewItem*item)
164 readMail.exec(); 172 readMail.exec();
165 ( (MailListViewItem*)item )->setPixmap( 0, Resource::loadPixmap( "opiemail/kmmsgunseen") ); 173
174 if ( readMail.deleted ) {
175 folderView->refreshCurrent();
176 } else {
177 ( (MailListViewItem*)item )->setPixmap( 0, Resource::loadPixmap( "opiemail/kmmsgunseen") );
178 }
166} 179}
167 180
181void MainWindow::slotDeleteMail()
182{
183 if (!m_currentItem) return;
184 RecMail mail = ((MailListViewItem*)m_currentItem)->data();
185 mail.Wrapper()->deleteMail( mail );
186 folderView->refreshCurrent();
187}
188
189
190
168MailListViewItem::MailListViewItem(QListView * parent, MailListViewItem * item ) 191MailListViewItem::MailListViewItem(QListView * parent, MailListViewItem * item )
diff --git a/noncore/net/mail/mainwindow.h b/noncore/net/mail/mainwindow.h
index 6c1cda0..8641510 100644
--- a/noncore/net/mail/mainwindow.h
+++ b/noncore/net/mail/mainwindow.h
@@ -28,2 +28,3 @@ protected slots:
28 virtual void displayMail(QListViewItem*); 28 virtual void displayMail(QListViewItem*);
29 virtual void slotDeleteMail();
29 void slotAdjustLayout(); 30 void slotAdjustLayout();
@@ -34,3 +35,3 @@ protected:
34 QPopupMenu *mailMenu, *settingsMenu; 35 QPopupMenu *mailMenu, *settingsMenu;
35 QAction *composeMail, *sendQueued, *showFolders, *searchMails, 36 QAction *composeMail, *sendQueued, *showFolders, *searchMails, *deleteMails,
36 *editSettings, *editAccounts, *syncFolders; 37 *editSettings, *editAccounts, *syncFolders;
@@ -38,2 +39,3 @@ protected:
38 QListView *mailView; 39 QListView *mailView;
40 QListViewItem* m_currentItem;
39 QBoxLayout *layout; 41 QBoxLayout *layout;
diff --git a/noncore/net/mail/viewmail.cpp b/noncore/net/mail/viewmail.cpp
index 42707e3..163ffb7 100644
--- a/noncore/net/mail/viewmail.cpp
+++ b/noncore/net/mail/viewmail.cpp
@@ -13,2 +13,3 @@
13#include "abstractmail.h" 13#include "abstractmail.h"
14#include "accountview.h"
14 15
@@ -171,2 +172,3 @@ ViewMail::ViewMail( QWidget *parent, const char *name, WFlags fl)
171 connect(forward, SIGNAL(activated()), SLOT(slotForward())); 172 connect(forward, SIGNAL(activated()), SLOT(slotForward()));
173 connect( deleteMail, SIGNAL( activated() ), SLOT( slotDeleteMail( ) ) );
172 174
@@ -317 +319,7 @@ void ViewMail::slotForward()
317 319
320void ViewMail::slotDeleteMail( )
321{
322 m_recMail.Wrapper()->deleteMail( m_recMail );
323 hide();
324 deleted = true;
325}
diff --git a/noncore/net/mail/viewmail.h b/noncore/net/mail/viewmail.h
index bc12da1..765464c 100644
--- a/noncore/net/mail/viewmail.h
+++ b/noncore/net/mail/viewmail.h
@@ -32,2 +32,3 @@ public:
32 void setBody( RecBody body ); 32 void setBody( RecBody body );
33 bool deleted;
33 34
@@ -41,2 +42,4 @@ protected slots:
41 void slotItemClicked( QListViewItem * item , const QPoint & point, int c ); 42 void slotItemClicked( QListViewItem * item , const QPoint & point, int c );
43 void slotDeleteMail( );
44
42 45