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 
KDE Home | KDE Accessibility Home | Description of Access Keys