summaryrefslogtreecommitdiff
path: root/noncore/net/mail/accountview.h
authoralwin <alwin>2004-01-07 19:27:47 (UTC)
committer alwin <alwin>2004-01-07 19:27:47 (UTC)
commit24a62e8789083f446138aebfa11409b73886aa88 (patch) (side-by-side diff)
tree177bd3de4ad46fd29e93b87c6a0423a4ca132682 /noncore/net/mail/accountview.h
parent7fdc50c5ff3fe42aba6d940165e99ed7150df4f1 (diff)
downloadopie-24a62e8789083f446138aebfa11409b73886aa88.zip
opie-24a62e8789083f446138aebfa11409b73886aa88.tar.gz
opie-24a62e8789083f446138aebfa11409b73886aa88.tar.bz2
download mail mostly finished
accounts can be switched "offline"
Diffstat (limited to 'noncore/net/mail/accountview.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/accountview.h71
1 files changed, 40 insertions, 31 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
@@ -12,36 +12,45 @@ class POP3wrapper;
class RecMail;
class RecBody;
class QPopupMenu;
+class Selectstore;
+class AccountView;
class AccountViewItem : public QListViewItem
{
public:
- AccountViewItem( QListView *parent ) : QListViewItem( parent ) {}
- AccountViewItem( QListViewItem *parent) : QListViewItem( parent) {}
- AccountViewItem( QListViewItem *parent , QListViewItem*after ) : QListViewItem( parent,after ) {}
+ AccountViewItem( AccountView *parent );
+ AccountViewItem( QListViewItem *parent);
+ AccountViewItem( QListViewItem *parent , QListViewItem*after );
+ virtual ~AccountViewItem();
virtual void refresh(QList<RecMail>&)=0;
virtual RecBody fetchBody(const RecMail&)=0;
virtual QPopupMenu * getContextMenu(){return 0;};
virtual void contextMenuSelected(int){}
+ virtual AccountView*accountView();
protected:
virtual void deleteAllMail(AbstractMail*wrapper,Folder*f);
static const QString contextName;
+ AccountView*m_Backlink;
};
class POP3viewItem : public AccountViewItem
{
public:
- POP3viewItem( POP3account *a, QListView *parent );
- ~POP3viewItem();
+ POP3viewItem( POP3account *a, AccountView *parent );
+ virtual ~POP3viewItem();
virtual void refresh( QList<RecMail> &target );
virtual RecBody fetchBody( const RecMail &mail );
AbstractMail *getWrapper();
-private:
+ virtual QPopupMenu * getContextMenu();
+ virtual void contextMenuSelected(int);
+
+protected:
POP3account *account;
AbstractMail *wrapper;
-
+ void disconnect();
+ void setOnOffline();
};
class POP3folderItem : public AccountViewItem
@@ -49,7 +58,7 @@ class POP3folderItem : public AccountViewItem
public:
POP3folderItem( Folder *folder, POP3viewItem *parent , QListViewItem*after );
- ~POP3folderItem();
+ virtual ~POP3folderItem();
virtual void refresh(QList<RecMail>&);
virtual RecBody fetchBody(const RecMail&);
virtual QPopupMenu * getContextMenu();
@@ -57,8 +66,6 @@ public:
protected:
void downloadMails();
-
-private:
Folder *folder;
POP3viewItem *pop3;
};
@@ -69,23 +76,24 @@ class IMAPviewItem : public AccountViewItem
{
friend class IMAPfolderItem;
public:
- IMAPviewItem( IMAPaccount *a, QListView *parent );
- ~IMAPviewItem();
+ IMAPviewItem( IMAPaccount *a, AccountView *parent );
+ virtual ~IMAPviewItem();
virtual void refresh(QList<RecMail>&);
virtual RecBody fetchBody(const RecMail&);
AbstractMail *getWrapper();
virtual QPopupMenu * getContextMenu();
virtual void contextMenuSelected(int);
+ const QStringList&subFolders();
+ virtual void refreshFolders(bool force=false);
+ bool offline();
protected:
IMAPfolderItem*findSubItem(const QString&path,IMAPfolderItem*start=0);
- virtual void refreshFolders(bool force=false);
virtual void createNewFolder();
virtual void removeChilds();
-
-private:
IMAPaccount *account;
AbstractMail *wrapper;
+ QStringList currentFolders;
};
class IMAPfolderItem : public AccountViewItem
@@ -94,7 +102,7 @@ class IMAPfolderItem : public AccountViewItem
public:
IMAPfolderItem( Folder *folder, IMAPviewItem *parent , QListViewItem*after );
IMAPfolderItem( Folder *folder, IMAPfolderItem *parent , QListViewItem*after, IMAPviewItem *master );
- ~IMAPfolderItem();
+ virtual ~IMAPfolderItem();
virtual void refresh(QList<RecMail>&);
virtual RecBody fetchBody(const RecMail&);
bool matchName(const QString&name)const;
@@ -104,8 +112,7 @@ public:
protected:
virtual void createNewFolder();
virtual void deleteFolder();
-
-private:
+ virtual void downloadMails();
Folder *folder;
IMAPviewItem *imap;
};
@@ -115,21 +122,18 @@ class MBOXviewItem : public AccountViewItem
friend class MBOXfolderItem;
public:
-// MBOXviewItem( MBOXaccount *a, QListView *parent );
- MBOXviewItem( const QString&aMboxPath, QListView *parent );
- ~MBOXviewItem();
+ MBOXviewItem( const QString&aMboxPath, AccountView *parent );
+ virtual ~MBOXviewItem();
virtual void refresh( QList<RecMail> &target );
virtual RecBody fetchBody( const RecMail &mail );
AbstractMail *getWrapper();
virtual QPopupMenu * getContextMenu();
virtual void contextMenuSelected(int);
+ QStringList subFolders();
+ virtual void refresh(bool force=false);
protected:
- virtual void refresh(bool force=false);
virtual void createFolder();
-
-private:
-// MBOXaccount *account;
QString m_Path;
AbstractMail *wrapper;
@@ -140,15 +144,15 @@ class MBOXfolderItem : public AccountViewItem
public:
MBOXfolderItem( Folder *folder, MBOXviewItem *parent , QListViewItem*after );
- ~MBOXfolderItem();
+ virtual ~MBOXfolderItem();
virtual void refresh(QList<RecMail>&);
virtual RecBody fetchBody(const RecMail&);
virtual QPopupMenu * getContextMenu();
virtual void contextMenuSelected(int);
+ virtual Folder*getFolder();
protected:
virtual void deleteFolder();
-private:
Folder *folder;
MBOXviewItem *mbox;
};
@@ -159,8 +163,10 @@ 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);
+ virtual ~AccountView();
+ virtual void populate( QList<Account> list );
+ virtual RecBody fetchBody(const RecMail&aMail);
+ virtual void downloadMails(Folder*fromFolder,AbstractMail*fromWrapper);
public slots:
virtual void refreshAll();
@@ -168,12 +174,15 @@ public slots:
virtual void refreshCurrent();
virtual void slotHold(int, QListViewItem *,const QPoint&,int);
virtual void slotContextMenu(int id);
+ void setupFolderselect(Selectstore*sels);
signals:
void refreshMailview(QList<RecMail>*);
-private:
- QListViewItem* m_currentItem;
+protected:
+ QListViewItem* m_currentItem;
+ QValueList<IMAPviewItem*> imapAccounts;
+ QValueList<MBOXviewItem*> mboxAccounts;
};
#endif