kmail
kmmimeparttree.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035 #ifndef KMMIMEPARTTREE_H
00036 #define KMMIMEPARTTREE_H
00037
00038 #include <klistview.h>
00039 #include <kio/global.h>
00040
00041 #include <qstring.h>
00042
00043 class partNode;
00044 class KMReaderWin;
00045 class KMMimePartTreeItem;
00046
00047 class KMMimePartTree : public KListView
00048 {
00049 Q_OBJECT
00050 friend class ::KMReaderWin;
00051
00052 public:
00053 KMMimePartTree( KMReaderWin* readerWin,
00054 QWidget* parent,
00055 const char* name = 0 );
00056 virtual ~KMMimePartTree();
00057
00058 void correctSize( QListViewItem * item );
00059
00060 protected slots:
00061 void itemClicked( QListViewItem* );
00062 void itemRightClicked( QListViewItem*, const QPoint& );
00063 void slotSaveAs();
00064 void slotSaveAsEncoded();
00065 void slotSaveAll();
00066 void slotDelete();
00067 void slotEdit();
00068
00069 protected:
00072 void styleChange( QStyle& oldStyle );
00073
00076 void setStyleDependantFrameWidth();
00077
00078 void saveSelectedBodyParts( bool encoded );
00079 void restoreLayoutIfPresent();
00080
00081
00082 void startDrag();
00083
00084 protected:
00085 KMReaderWin* mReaderWin;
00086 KMMimePartTreeItem* mCurrentContextMenuItem;
00087 int mSizeColumn;
00088 };
00089
00090 class KMMimePartTreeItem :public QListViewItem
00091 {
00092 public:
00093 KMMimePartTreeItem( KMMimePartTree * parent,
00094 partNode* node,
00095 const QString & labelDescr,
00096 const QString & labelCntType = QString::null,
00097 const QString & labelEncoding = QString::null,
00098 KIO::filesize_t size=0 );
00099 KMMimePartTreeItem( KMMimePartTreeItem * parent,
00100 partNode* node,
00101 const QString & labelDescr,
00102 const QString & labelCntType = QString::null,
00103 const QString & labelEncoding = QString::null,
00104 KIO::filesize_t size=0,
00105 bool revertOrder = false );
00106 partNode* node() const { return mPartNode; }
00107
00108 KIO::filesize_t origSize() const { return mOrigSize; }
00109 void setOrigSize( KIO::filesize_t size ) { mOrigSize = size; }
00110
00111 private:
00112 void setIconAndTextForType( const QString & mimetype );
00113
00114 partNode* mPartNode;
00115 KIO::filesize_t mOrigSize;
00116 };
00117
00118 #endif // KMMIMEPARTTREE_H
|