Diffstat (limited to 'noncore/net/mail/accountview.h') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/net/mail/accountview.h | 25 |
1 files changed, 21 insertions, 4 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,15 +138,17 @@ 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; |