kmail

kmfolderdir.h
00001 #ifndef kmfolderdir_h
00002 #define kmfolderdir_h
00003 
00004 #include <tqstring.h>
00005 #include "kmfoldernode.h"
00006 #include "kmfoldertype.h"
00007 
00008 class KMFolder;
00009 class KMFolderMgr;
00010 
00011 
00015 class KMFolderDir: public KMFolderNode, public KMFolderNodeList
00016 {
00017   Q_OBJECT
00018   TQ_OBJECT
00019 
00020 public:
00021   KMFolderDir( KMFolder * owner, KMFolderDir * parent = 0,
00022                const TQString& path = TQString(),
00023                KMFolderDirType = KMStandardDir );
00024   virtual ~KMFolderDir();
00025 
00026   virtual bool isDir() const { return true; }
00027 
00031   void addDirToParent( const TQString &dirName, KMFolder *parentFolder );
00032 
00034   virtual bool reload();
00035 
00037   virtual TQString path() const;
00038 
00040   TQString label() const;
00041 
00043   virtual TQString prettyURL() const;
00044 
00048   virtual KMFolder* createFolder( const TQString& folderName,
00049                                   bool sysFldr=false,
00050                                   KMFolderType folderType=KMFolderTypeMbox );
00051 
00053   virtual KMFolderNode* hasNamedFolder(const TQString& name);
00054 
00056   virtual KMFolderMgr* manager() const;
00057 
00059   KMFolder* owner() const { return mOwner; }
00060 
00061   virtual KMFolderDirType type() const { return mDirType; }
00062 
00063 protected:
00064   KMFolder * mOwner;
00065   KMFolderDirType mDirType;
00066 };
00067 
00068 
00069 //-----------------------------------------------------------------------------
00070 
00071 class KMFolderRootDir: public KMFolderDir
00072 {
00073   Q_OBJECT
00074   TQ_OBJECT
00075 
00076 public:
00077   KMFolderRootDir( KMFolderMgr* manager,
00078                    const TQString& path=TQString(),
00079                    KMFolderDirType dirType = KMStandardDir );
00080   virtual ~KMFolderRootDir();
00081   virtual TQString path() const;
00082 
00084   virtual void setPath(const TQString&);
00085 
00086   virtual TQString prettyURL() const;
00087 
00088   void setBaseURL( const TQCString& baseURL );
00089 
00090   virtual KMFolderMgr* manager() const;
00091 
00092 protected:
00093   TQString mPath;
00094   KMFolderMgr *mManager;
00095   TQCString mBaseURL;
00096 };
00097 
00098 #endif /*kmfolderdir_h*/
00099