Diffstat (limited to 'noncore/net/mail/accountview.h') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/net/mail/accountview.h | 69 |
1 files changed, 39 insertions, 30 deletions
diff --git a/noncore/net/mail/accountview.h b/noncore/net/mail/accountview.h index 7131192..48f52c7 100644 --- a/noncore/net/mail/accountview.h +++ b/noncore/net/mail/accountview.h | |||
@@ -13,4 +13,6 @@ class RecMail; | |||
13 | class RecBody; | 13 | class RecBody; |
14 | class QPopupMenu; | 14 | class QPopupMenu; |
15 | class Selectstore; | ||
16 | class AccountView; | ||
15 | 17 | ||
16 | class AccountViewItem : public QListViewItem | 18 | class AccountViewItem : public QListViewItem |
@@ -18,14 +20,17 @@ class AccountViewItem : public QListViewItem | |||
18 | 20 | ||
19 | public: | 21 | public: |
20 | AccountViewItem( QListView *parent ) : QListViewItem( parent ) {} | 22 | AccountViewItem( AccountView *parent ); |
21 | AccountViewItem( QListViewItem *parent) : QListViewItem( parent) {} | 23 | AccountViewItem( QListViewItem *parent); |
22 | AccountViewItem( QListViewItem *parent , QListViewItem*after ) : QListViewItem( parent,after ) {} | 24 | AccountViewItem( QListViewItem *parent , QListViewItem*after ); |
25 | virtual ~AccountViewItem(); | ||
23 | virtual void refresh(QList<RecMail>&)=0; | 26 | virtual void refresh(QList<RecMail>&)=0; |
24 | virtual RecBody fetchBody(const RecMail&)=0; | 27 | virtual RecBody fetchBody(const RecMail&)=0; |
25 | virtual QPopupMenu * getContextMenu(){return 0;}; | 28 | virtual QPopupMenu * getContextMenu(){return 0;}; |
26 | virtual void contextMenuSelected(int){} | 29 | virtual void contextMenuSelected(int){} |
30 | virtual AccountView*accountView(); | ||
27 | protected: | 31 | protected: |
28 | virtual void deleteAllMail(AbstractMail*wrapper,Folder*f); | 32 | virtual void deleteAllMail(AbstractMail*wrapper,Folder*f); |
29 | static const QString contextName; | 33 | static const QString contextName; |
34 | AccountView*m_Backlink; | ||
30 | }; | 35 | }; |
31 | 36 | ||
@@ -34,13 +39,17 @@ class POP3viewItem : public AccountViewItem | |||
34 | 39 | ||
35 | public: | 40 | public: |
36 | POP3viewItem( POP3account *a, QListView *parent ); | 41 | POP3viewItem( POP3account *a, AccountView *parent ); |
37 | ~POP3viewItem(); | 42 | virtual ~POP3viewItem(); |
38 | virtual void refresh( QList<RecMail> &target ); | 43 | virtual void refresh( QList<RecMail> &target ); |
39 | virtual RecBody fetchBody( const RecMail &mail ); | 44 | virtual RecBody fetchBody( const RecMail &mail ); |
40 | AbstractMail *getWrapper(); | 45 | AbstractMail *getWrapper(); |
41 | private: | 46 | virtual QPopupMenu * getContextMenu(); |
47 | virtual void contextMenuSelected(int); | ||
48 | |||
49 | protected: | ||
42 | POP3account *account; | 50 | POP3account *account; |
43 | AbstractMail *wrapper; | 51 | AbstractMail *wrapper; |
44 | 52 | void disconnect(); | |
53 | void setOnOffline(); | ||
45 | }; | 54 | }; |
46 | 55 | ||
@@ -50,5 +59,5 @@ class POP3folderItem : public AccountViewItem | |||
50 | public: | 59 | public: |
51 | POP3folderItem( Folder *folder, POP3viewItem *parent , QListViewItem*after ); | 60 | POP3folderItem( Folder *folder, POP3viewItem *parent , QListViewItem*after ); |
52 | ~POP3folderItem(); | 61 | virtual ~POP3folderItem(); |
53 | virtual void refresh(QList<RecMail>&); | 62 | virtual void refresh(QList<RecMail>&); |
54 | virtual RecBody fetchBody(const RecMail&); | 63 | virtual RecBody fetchBody(const RecMail&); |
@@ -58,6 +67,4 @@ public: | |||
58 | protected: | 67 | protected: |
59 | void downloadMails(); | 68 | void downloadMails(); |
60 | |||
61 | private: | ||
62 | Folder *folder; | 69 | Folder *folder; |
63 | POP3viewItem *pop3; | 70 | POP3viewItem *pop3; |
@@ -70,6 +77,6 @@ class IMAPviewItem : public AccountViewItem | |||
70 | friend class IMAPfolderItem; | 77 | friend class IMAPfolderItem; |
71 | public: | 78 | public: |
72 | IMAPviewItem( IMAPaccount *a, QListView *parent ); | 79 | IMAPviewItem( IMAPaccount *a, AccountView *parent ); |
73 | ~IMAPviewItem(); | 80 | virtual ~IMAPviewItem(); |
74 | virtual void refresh(QList<RecMail>&); | 81 | virtual void refresh(QList<RecMail>&); |
75 | virtual RecBody fetchBody(const RecMail&); | 82 | virtual RecBody fetchBody(const RecMail&); |
@@ -77,14 +84,15 @@ public: | |||
77 | virtual QPopupMenu * getContextMenu(); | 84 | virtual QPopupMenu * getContextMenu(); |
78 | virtual void contextMenuSelected(int); | 85 | virtual void contextMenuSelected(int); |
86 | const QStringList&subFolders(); | ||
87 | virtual void refreshFolders(bool force=false); | ||
88 | bool offline(); | ||
79 | 89 | ||
80 | protected: | 90 | protected: |
81 | IMAPfolderItem*findSubItem(const QString&path,IMAPfolderItem*start=0); | 91 | IMAPfolderItem*findSubItem(const QString&path,IMAPfolderItem*start=0); |
82 | virtual void refreshFolders(bool force=false); | ||
83 | virtual void createNewFolder(); | 92 | virtual void createNewFolder(); |
84 | virtual void removeChilds(); | 93 | virtual void removeChilds(); |
85 | |||
86 | private: | ||
87 | IMAPaccount *account; | 94 | IMAPaccount *account; |
88 | AbstractMail *wrapper; | 95 | AbstractMail *wrapper; |
96 | QStringList currentFolders; | ||
89 | }; | 97 | }; |
90 | 98 | ||
@@ -95,5 +103,5 @@ public: | |||
95 | IMAPfolderItem( Folder *folder, IMAPviewItem *parent , QListViewItem*after ); | 103 | IMAPfolderItem( Folder *folder, IMAPviewItem *parent , QListViewItem*after ); |
96 | IMAPfolderItem( Folder *folder, IMAPfolderItem *parent , QListViewItem*after, IMAPviewItem *master ); | 104 | IMAPfolderItem( Folder *folder, IMAPfolderItem *parent , QListViewItem*after, IMAPviewItem *master ); |
97 | ~IMAPfolderItem(); | 105 | virtual ~IMAPfolderItem(); |
98 | virtual void refresh(QList<RecMail>&); | 106 | virtual void refresh(QList<RecMail>&); |
99 | virtual RecBody fetchBody(const RecMail&); | 107 | virtual RecBody fetchBody(const RecMail&); |
@@ -105,6 +113,5 @@ protected: | |||
105 | virtual void createNewFolder(); | 113 | virtual void createNewFolder(); |
106 | virtual void deleteFolder(); | 114 | virtual void deleteFolder(); |
107 | 115 | virtual void downloadMails(); | |
108 | private: | ||
109 | Folder *folder; | 116 | Folder *folder; |
110 | IMAPviewItem *imap; | 117 | IMAPviewItem *imap; |
@@ -116,7 +123,6 @@ class MBOXviewItem : public AccountViewItem | |||
116 | 123 | ||
117 | public: | 124 | public: |
118 | // MBOXviewItem( MBOXaccount *a, QListView *parent ); | 125 | MBOXviewItem( const QString&aMboxPath, AccountView *parent ); |
119 | MBOXviewItem( const QString&aMboxPath, QListView *parent ); | 126 | virtual ~MBOXviewItem(); |
120 | ~MBOXviewItem(); | ||
121 | virtual void refresh( QList<RecMail> &target ); | 127 | virtual void refresh( QList<RecMail> &target ); |
122 | virtual RecBody fetchBody( const RecMail &mail ); | 128 | virtual RecBody fetchBody( const RecMail &mail ); |
@@ -124,11 +130,9 @@ public: | |||
124 | virtual QPopupMenu * getContextMenu(); | 130 | virtual QPopupMenu * getContextMenu(); |
125 | virtual void contextMenuSelected(int); | 131 | virtual void contextMenuSelected(int); |
132 | QStringList subFolders(); | ||
133 | virtual void refresh(bool force=false); | ||
126 | 134 | ||
127 | protected: | 135 | protected: |
128 | virtual void refresh(bool force=false); | ||
129 | virtual void createFolder(); | 136 | virtual void createFolder(); |
130 | |||
131 | private: | ||
132 | // MBOXaccount *account; | ||
133 | QString m_Path; | 137 | QString m_Path; |
134 | AbstractMail *wrapper; | 138 | AbstractMail *wrapper; |
@@ -141,13 +145,13 @@ class MBOXfolderItem : public AccountViewItem | |||
141 | public: | 145 | public: |
142 | MBOXfolderItem( Folder *folder, MBOXviewItem *parent , QListViewItem*after ); | 146 | MBOXfolderItem( Folder *folder, MBOXviewItem *parent , QListViewItem*after ); |
143 | ~MBOXfolderItem(); | 147 | virtual ~MBOXfolderItem(); |
144 | virtual void refresh(QList<RecMail>&); | 148 | virtual void refresh(QList<RecMail>&); |
145 | virtual RecBody fetchBody(const RecMail&); | 149 | virtual RecBody fetchBody(const RecMail&); |
146 | virtual QPopupMenu * getContextMenu(); | 150 | virtual QPopupMenu * getContextMenu(); |
147 | virtual void contextMenuSelected(int); | 151 | virtual void contextMenuSelected(int); |
152 | virtual Folder*getFolder(); | ||
148 | 153 | ||
149 | protected: | 154 | protected: |
150 | virtual void deleteFolder(); | 155 | virtual void deleteFolder(); |
151 | private: | ||
152 | Folder *folder; | 156 | Folder *folder; |
153 | MBOXviewItem *mbox; | 157 | MBOXviewItem *mbox; |
@@ -160,6 +164,8 @@ class AccountView : public QListView | |||
160 | public: | 164 | public: |
161 | AccountView( QWidget *parent = 0, const char *name = 0, WFlags flags = 0 ); | 165 | AccountView( QWidget *parent = 0, const char *name = 0, WFlags flags = 0 ); |
162 | void populate( QList<Account> list ); | 166 | virtual ~AccountView(); |
163 | RecBody fetchBody(const RecMail&aMail); | 167 | virtual void populate( QList<Account> list ); |
168 | virtual RecBody fetchBody(const RecMail&aMail); | ||
169 | virtual void downloadMails(Folder*fromFolder,AbstractMail*fromWrapper); | ||
164 | 170 | ||
165 | public slots: | 171 | public slots: |
@@ -169,10 +175,13 @@ public slots: | |||
169 | virtual void slotHold(int, QListViewItem *,const QPoint&,int); | 175 | virtual void slotHold(int, QListViewItem *,const QPoint&,int); |
170 | virtual void slotContextMenu(int id); | 176 | virtual void slotContextMenu(int id); |
177 | void setupFolderselect(Selectstore*sels); | ||
171 | 178 | ||
172 | signals: | 179 | signals: |
173 | void refreshMailview(QList<RecMail>*); | 180 | void refreshMailview(QList<RecMail>*); |
174 | 181 | ||
175 | private: | 182 | protected: |
176 | QListViewItem* m_currentItem; | 183 | QListViewItem* m_currentItem; |
184 | QValueList<IMAPviewItem*> imapAccounts; | ||
185 | QValueList<MBOXviewItem*> mboxAccounts; | ||
177 | }; | 186 | }; |
178 | 187 | ||