summaryrefslogtreecommitdiff
path: root/noncore/net/mail/accountview.h
Side-by-side diff
Diffstat (limited to 'noncore/net/mail/accountview.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/accountview.h27
1 files changed, 22 insertions, 5 deletions
diff --git a/noncore/net/mail/accountview.h b/noncore/net/mail/accountview.h
index 35499ac..e7fe038 100644
--- a/noncore/net/mail/accountview.h
+++ b/noncore/net/mail/accountview.h
@@ -8,22 +8,25 @@
#include "mailwrapper.h"
#include "abstractmail.h"
class POP3wrapper;
class RecMail;
class RecBody;
+class QPopupMenu;
class AccountViewItem : public QListViewItem
{
public:
AccountViewItem( QListView *parent ) : QListViewItem( parent ) {}
AccountViewItem( QListViewItem *parent) : QListViewItem( parent) {}
AccountViewItem( QListViewItem *parent , QListViewItem*after ) : QListViewItem( parent,after ) {}
virtual void refresh(QList<RecMail>&)=0;
virtual RecBody fetchBody(const RecMail&)=0;
+ virtual QPopupMenu * getContextMenu(){return 0;};
+ virtual void contextMenuSelected(int){}
};
class POP3viewItem : public AccountViewItem
{
public:
@@ -52,22 +55,26 @@ private:
};
class IMAPfolderItem;
class IMAPviewItem : public AccountViewItem
{
-
+ friend class IMAPfolderItem;
public:
IMAPviewItem( IMAPaccount *a, QListView *parent );
~IMAPviewItem();
virtual void refresh(QList<RecMail>&);
virtual RecBody fetchBody(const RecMail&);
AbstractMail *getWrapper();
+ virtual QPopupMenu * getContextMenu();
+ virtual void contextMenuSelected(int);
protected:
IMAPfolderItem*findSubItem(const QString&path,IMAPfolderItem*start=0);
+ virtual void refreshFolders(bool force=false);
+ virtual void createNewFolder();
private:
IMAPaccount *account;
AbstractMail *wrapper;
};
@@ -78,12 +85,20 @@ public:
IMAPfolderItem( Folder *folder, IMAPviewItem *parent , QListViewItem*after );
IMAPfolderItem( Folder *folder, IMAPfolderItem *parent , QListViewItem*after, IMAPviewItem *master );
~IMAPfolderItem();
virtual void refresh(QList<RecMail>&);
virtual RecBody fetchBody(const RecMail&);
bool matchName(const QString&name)const;
+ virtual void deleteAllMails();
+ virtual QPopupMenu * getContextMenu();
+ virtual void contextMenuSelected(int);
+ virtual const QString& Delemiter()const;
+protected:
+ virtual void createNewFolder();
+ virtual void deleteFolder();
+
private:
Folder *folder;
IMAPviewItem *imap;
};
class MBOXviewItem : public AccountViewItem
@@ -123,16 +138,18 @@ class AccountView : public QListView
public:
AccountView( QWidget *parent = 0, const char *name = 0, WFlags flags = 0 );
void populate( QList<Account> list );
RecBody fetchBody(const RecMail&aMail);
public slots:
- void refreshAll();
- void refresh(QListViewItem *item);
- void refreshCurrent();
-
+ virtual void refreshAll();
+ virtual void refresh(QListViewItem *item);
+ virtual void refreshCurrent();
+ virtual void slotHold(int, QListViewItem *,const QPoint&,int);
+ virtual void slotContextMenu(int id);
+
signals:
void refreshMailview(QList<RecMail>*);
private:
QListViewItem* m_currentItem;
};