kmail
foldertreebase.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef KMAIL_FOLDERTREEBASE_H
00020 #define KMAIL_FOLDERTREEBASE_H
00021
00022 #include <libkdepim/kfoldertree.h>
00023
00024 class KMFolder;
00025 class KMMainWidget;
00026
00027 namespace KMail {
00028
00029 class FolderTreeBase : public KFolderTree
00030 {
00031 Q_OBJECT
00032 public:
00033 FolderTreeBase( KMMainWidget *mainWidget, QWidget *parent = 0, const char *name = 0 );
00034
00036 KMMainWidget* mainWidget() const { return mMainWidget; }
00037
00039 virtual QListViewItem* indexOfFolder( const KMFolder* folder ) const
00040 {
00041 if ( mFolderToItem.contains( folder ) )
00042 return mFolderToItem[ folder ];
00043 else
00044 return 0;
00045 }
00046
00047 void insertIntoFolderToItemMap( const KMFolder *folder, QListViewItem* item )
00048 {
00049 mFolderToItem.insert( folder, item );
00050 }
00051
00052 void removeFromFolderToItemMap( const KMFolder *folder )
00053 {
00054 mFolderToItem.remove( folder );
00055 }
00056
00057 signals:
00059 void folderDrop(KMFolder*);
00060
00062 void folderDropCopy(KMFolder*);
00063
00064 void triggerRefresh();
00065
00066 public slots:
00068 void slotUpdateCounts(KMFolder * folder, bool force = false );
00069
00070 protected:
00071 enum {
00072 DRAG_COPY = 0,
00073 DRAG_MOVE = 1,
00074 DRAG_CANCEL = 2
00075 };
00076 int dndMode( bool alwaysAsk = false );
00077 void contentsDropEvent( QDropEvent *e );
00078
00080 virtual bool event(QEvent *e);
00081
00083 virtual void readColorConfig();
00084
00086 bool hideLocalInbox() const;
00087
00089 void handleMailListDrop( QDropEvent *event, KMFolder *destination );
00090
00091 protected:
00092 KMMainWidget *mMainWidget;
00093 QMap<const KMFolder*, QListViewItem*> mFolderToItem;
00094 };
00095
00096 }
00097
00098 #endif
|