korganizer
customlistviewitem.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef CUSTOMLISTVIEWITEM_H
00025 #define CUSTOMLISTVIEWITEM_H
00026
00027 #include <QMap>
00028 #include <QString>
00029 #include <k3listview.h>
00030
00031 template<class T>
00032 class CustomListViewItem : public K3ListViewItem
00033 {
00034 public:
00035 CustomListViewItem( T data, K3ListView *parent ) :
00036 K3ListViewItem( parent ), mData( data ) { updateItem(); }
00037 CustomListViewItem( T data, K3ListView *parent, K3ListViewItem *after ) :
00038 K3ListViewItem( parent, after ), mData( data ) { updateItem(); }
00039 ~CustomListViewItem() {}
00040
00041 void updateItem() {}
00042
00043 T data() const { return mData; }
00044
00045 QString key( int column, bool ) const
00046 {
00047 QMap<int,QString>::ConstIterator it = mKeyMap.find(column);
00048 if ( it == mKeyMap.end() ) {
00049 return text( column );
00050 } else {
00051 return *it;
00052 }
00053 }
00054
00055 void setSortKey( int column, const QString &key )
00056 {
00057 mKeyMap.insert( column, key );
00058 }
00059
00060 private:
00061 T mData;
00062
00063 QMap<int,QString> mKeyMap;
00064 };
00065
00066 #endif