kmail
favoritefolderview.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef KMAIL_FAVORITEFOLDERVIEW_H
00020 #define KMAIL_FAVORITEFOLDERVIEW_H
00021
00022 #include "kmfoldertree.h"
00023
00024 namespace KMail {
00025
00026 class FavoriteFolderView;
00027
00028 class FavoriteFolderViewItem : public KMFolderTreeItem
00029 {
00030 Q_OBJECT
00031 public:
00032 FavoriteFolderViewItem( FavoriteFolderView *parent, const QString & name, KMFolder* folder );
00033
00034 protected:
00035 bool useTopLevelIcon() const { return false; }
00036 int iconSize() const { return 22; }
00037
00038 private slots:
00039 void nameChanged();
00040
00041 private:
00042 QString mOldName;
00043 };
00044
00045 class FavoriteFolderView : public FolderTreeBase
00046 {
00047 Q_OBJECT
00048
00049 public:
00050 FavoriteFolderView( KMMainWidget *mainWidget, QWidget *parent = 0 );
00051 ~FavoriteFolderView();
00052
00053 void readConfig();
00054 void writeConfig();
00055
00056 KMFolderTreeItem* addFolder( KMFolder *folder, const QString &name = QString::null,
00057 QListViewItem *after = 0 );
00058 void addFolder( KMFolderTreeItem *fti );
00059
00060 public slots:
00061 void folderTreeSelectionChanged( KMFolder *folder );
00062 void checkMail();
00063
00064 protected:
00065 bool acceptDrag(QDropEvent* e) const;
00066 void contentsDragEnterEvent( QDragEnterEvent *e );
00067 void readColorConfig();
00068
00069 private:
00070 static QString prettyName( KMFolderTreeItem* fti );
00071 KMFolderTreeItem* findFolderTreeItem( KMFolder* folder ) const;
00072 void handleGroupwareFolder( KMFolderTreeItem *fti );
00073
00074 private slots:
00075 void selectionChanged();
00076 void itemClicked( QListViewItem *item );
00077 void folderRemoved( KMFolder *folder );
00078 void dropped( QDropEvent *e, QListViewItem *after );
00079 void contextMenu( QListViewItem *item, const QPoint &point );
00080 void removeFolder();
00081 void initializeFavorites();
00082 void renameFolder();
00083 void addFolder();
00084 void notifyInstancesOnChange();
00085 void refresh();
00086
00087 private:
00088 KMFolderTreeItem* mContextMenuItem;
00089 static QValueList<FavoriteFolderView*> mInstances;
00090 bool mReadingConfig;
00091 };
00092
00093 }
00094
00095 #endif
|