#ifndef __ACCOUNT_ITEM #define __ACCOUNT_ITEM #include #include //Added by qt3to4: #include #include #include #include class POP3wrapper; class RecMail; class RecBody; class Q3PopupMenu; class Selectstore; class AccountView; class POP3account; class NNTPaccount; class IMAPaccount; class AbstractMail; class Folder; #define RECBODYP Opie::Core::OSmartPointer class AccountViewItem : public Q3ListViewItem { public: AccountViewItem( AccountView *parent ); AccountViewItem( Q3ListViewItem *parent); AccountViewItem( Q3ListViewItem *parent , Q3ListViewItem*after ); AccountViewItem( const Opie::Core::OSmartPointer&folderInit,Q3ListViewItem *parent , Q3ListViewItem*after ); virtual ~AccountViewItem(); virtual void refresh(Q3ValueList >&)=0; virtual RECBODYP fetchBody(const Opie::Core::OSmartPointer&)=0; virtual Q3PopupMenu * getContextMenu(){return 0;}; virtual void contextMenuSelected(int){} virtual AccountView*accountView(); virtual bool matchName(const QString&name)const; virtual bool isDraftfolder(); Opie::Core::OSmartPointer getFolder() { return folder; }; protected: AccountViewItem*findSubItem(const QString&path,AccountViewItem*start=0); virtual void init(); virtual void removeChilds(); virtual void deleteAllMail(AbstractMail*wrapper,const Opie::Core::OSmartPointer&f); static const QString contextName; AccountView*m_Backlink; Opie::Core::OSmartPointer folder; }; class POP3viewItem : public AccountViewItem { public: POP3viewItem( POP3account *a, AccountView *parent ); virtual ~POP3viewItem(); virtual void refresh(Q3ValueList >&target ); virtual RECBODYP fetchBody( const Opie::Core::OSmartPointer &mail ); AbstractMail *getWrapper(); virtual Q3PopupMenu * getContextMenu(); virtual void contextMenuSelected(int); protected: POP3account *account; virtual void refresh(); AbstractMail *wrapper; void disconnect(); void setOnOffline(); }; class POP3folderItem : public AccountViewItem { public: POP3folderItem( const Opie::Core::OSmartPointer&folder, POP3viewItem *parent , Q3ListViewItem*after ); virtual ~POP3folderItem(); virtual void refresh(Q3ValueList >&); virtual RECBODYP fetchBody(const Opie::Core::OSmartPointer&); virtual Q3PopupMenu * getContextMenu(); virtual void contextMenuSelected(int); protected: void downloadMails(); POP3viewItem *pop3; }; class NNTPviewItem : public AccountViewItem { public: NNTPviewItem( NNTPaccount *a, AccountView *parent ); virtual ~NNTPviewItem(); virtual void refresh(Q3ValueList >&target ); virtual RECBODYP fetchBody( const Opie::Core::OSmartPointer &mail ); AbstractMail *getWrapper(); virtual Q3PopupMenu * getContextMenu(); virtual void contextMenuSelected(int); protected: NNTPaccount *account; virtual void refresh(); AbstractMail *wrapper; void disconnect(); void setOnOffline(); void subscribeGroups(); }; class NNTPfolderItem : public AccountViewItem { public: NNTPfolderItem(const Opie::Core::OSmartPointer&folder, NNTPviewItem *parent , Q3ListViewItem*after ); virtual ~NNTPfolderItem(); virtual void refresh(Q3ValueList >&); virtual RECBODYP fetchBody(const Opie::Core::OSmartPointer&); virtual Q3PopupMenu * getContextMenu(); virtual void contextMenuSelected(int); protected: void downloadMails(); NNTPviewItem *nntp; }; class IMAPviewItem : public AccountViewItem { friend class IMAPfolderItem; public: IMAPviewItem( IMAPaccount *a, AccountView *parent ); virtual ~IMAPviewItem(); virtual void refresh(Q3ValueList >&); virtual RECBODYP fetchBody(const Opie::Core::OSmartPointer&); AbstractMail *getWrapper(); virtual Q3PopupMenu * getContextMenu(); virtual void contextMenuSelected(int); const QStringList&subFolders(); virtual void refreshFolders(bool force=false); bool offline(); protected: virtual void createNewFolder(); IMAPaccount *account; AbstractMail *wrapper; QStringList currentFolders; }; class IMAPfolderItem : public AccountViewItem { public: IMAPfolderItem( const Opie::Core::OSmartPointer&folder, IMAPviewItem *parent , Q3ListViewItem*after ); IMAPfolderItem( const Opie::Core::OSmartPointer&folder, IMAPfolderItem *parent , Q3ListViewItem*after, IMAPviewItem *master ); virtual ~IMAPfolderItem(); virtual void refresh(Q3ValueList >&); virtual RECBODYP fetchBody(const Opie::Core::OSmartPointer&); virtual Q3PopupMenu * getContextMenu(); virtual void contextMenuSelected(int); virtual const QString& Delemiter()const; protected: virtual void createNewFolder(); virtual void deleteFolder(); virtual void downloadMails(); IMAPviewItem *imap; }; class MHviewItem : public AccountViewItem { friend class MHfolderItem; public: MHviewItem( const QString&aMboxPath, AccountView *parent ); virtual ~MHviewItem(); virtual void refresh(Q3ValueList >&target ); virtual RECBODYP fetchBody( const Opie::Core::OSmartPointer &mail ); AbstractMail *getWrapper(); virtual Q3PopupMenu * getContextMenu(); virtual void contextMenuSelected(int); QStringList subFolders(); virtual void refresh(bool force=false); protected: void downloadMails(); virtual void createFolder(); QString m_Path; AbstractMail *wrapper; QStringList currentFolders; }; class MHfolderItem : public AccountViewItem { public: MHfolderItem( const Opie::Core::OSmartPointer&folder, MHviewItem *parent , Q3ListViewItem*after ); MHfolderItem( const Opie::Core::OSmartPointer&folder, MHfolderItem *parent, Q3ListViewItem*after, MHviewItem*master); virtual ~MHfolderItem(); virtual void refresh(Q3ValueList >&); virtual RECBODYP fetchBody(const Opie::Core::OSmartPointer&); virtual Q3PopupMenu * getContextMenu(); virtual void contextMenuSelected(int); virtual const Opie::Core::OSmartPointer&getFolder()const; virtual bool isDraftfolder(); protected: void downloadMails(); virtual void createFolder(); virtual void deleteFolder(); void initName(); MHviewItem *mbox; }; #endif