Diffstat (limited to 'korganizer/customlistviewitem.h') (more/less context) (show whitespace changes)
-rw-r--r-- | korganizer/customlistviewitem.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/korganizer/customlistviewitem.h b/korganizer/customlistviewitem.h new file mode 100644 index 0000000..94e5bce --- a/dev/null +++ b/korganizer/customlistviewitem.h @@ -0,0 +1,38 @@ +#ifndef CUSTOMLISTVIEWITEM_H +#define CUSTOMLISTVIEWITEM_H + +#include <qmap.h> +#include <qstring.h> +#include <klistview.h> + +template<class T> +class CustomListViewItem : public KListViewItem +{ + public: + CustomListViewItem( T data, KListView *parent ) : + KListViewItem( parent ), mData( data ) { updateItem(); }; + ~CustomListViewItem() {}; + + void updateItem() {}; + + T data() const { return mData; } + + QString key(int column, bool) const + { + QMap<int,QString>::ConstIterator it = mKeyMap.find(column); + if (it == mKeyMap.end()) return text(column); + else return *it; + } + + void setSortKey(int column,const QString &key) + { + mKeyMap.insert(column,key); + } + + private: + T mData; + + QMap<int,QString> mKeyMap; +}; + +#endif |