kmail
kmfolderdir.h
00001 #ifndef kmfolderdir_h 00002 #define kmfolderdir_h 00003 00004 #include <qstring.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 00019 public: 00020 KMFolderDir( KMFolder * owner, KMFolderDir * parent = 0, 00021 const QString& path = QString::null, 00022 KMFolderDirType = KMStandardDir ); 00023 virtual ~KMFolderDir(); 00024 00025 virtual bool isDir() const { return true; } 00026 00030 void addDirToParent( const QString &dirName, KMFolder *parentFolder ); 00031 00033 virtual bool reload(); 00034 00036 virtual QString path() const; 00037 00039 QString label() const; 00040 00042 virtual QString prettyURL() const; 00043 00047 virtual KMFolder* createFolder(const QString& folderName, 00048 bool sysFldr=false, 00049 KMFolderType folderType=KMFolderTypeMbox); 00050 00052 virtual KMFolderNode* hasNamedFolder(const QString& name); 00053 00055 virtual KMFolderMgr* manager() const; 00056 00058 KMFolder* owner() const { return mOwner; } 00059 00060 virtual KMFolderDirType type() const { return mDirType; } 00061 00062 protected: 00063 KMFolder * mOwner; 00064 KMFolderDirType mDirType; 00065 }; 00066 00067 00068 //----------------------------------------------------------------------------- 00069 00070 class KMFolderRootDir: public KMFolderDir 00071 { 00072 Q_OBJECT 00073 00074 public: 00075 KMFolderRootDir(KMFolderMgr* manager, 00076 const QString& path=QString::null, 00077 KMFolderDirType dirType = KMStandardDir); 00078 virtual ~KMFolderRootDir(); 00079 virtual QString path() const; 00080 00082 virtual void setPath(const QString&); 00083 00084 virtual QString prettyURL() const; 00085 00086 void setBaseURL( const QCString& baseURL ); 00087 00088 virtual KMFolderMgr* manager() const; 00089 00090 protected: 00091 QString mPath; 00092 KMFolderMgr *mManager; 00093 QCString mBaseURL; 00094 }; 00095 00096 #endif /*kmfolderdir_h*/ 00097