listCat.h
00001 #ifndef LISTCAT_H
00002 #define LISTCAT_H
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 #include <qstringlist.h>
00034 #include <qlistview.h>
00035
00036 #include <klistview.h>
00037
00062 class ListCategorizer : public KListView
00063 {
00064 Q_OBJECT
00065
00066 public:
00074 ListCategorizer(QWidget *parent,
00075 const char *name = 0);
00083 ListCategorizer(const QStringList& categories,
00084 bool startOpen,
00085 QWidget *parent,
00086 const char *name = 0);
00087
00093 void addCategories(const QStringList&);
00103 QListViewItem *addCategory(const QString& name,
00104 const QString& description = QString::null);
00109 QStringList categories() const
00110 {
00111 return listSiblings(firstChild());
00112 } ;
00113
00122 QListViewItem *addItem(const QString& category,
00123 const QString& name,
00124 const QString& description = QString::null);
00133 QStringList items(const QString& category,int column=0) const
00134 {
00135 return listSiblings(findCategory(category),column);
00136 }
00137
00144 QListViewItem *findCategory(const QString& categoryName) const;
00155 QStringList listSiblings(const QListViewItem *p,int column=0) const;
00156
00163 bool startOpen() const { return fStartOpen; } ;
00169 void setStartOpen(bool b) { fStartOpen=b; } ;
00170
00171 protected:
00175 virtual bool acceptDrag (QDropEvent* event) const;
00179 virtual void startDrag();
00183 virtual void contentsDropEvent (QDropEvent*);
00184
00185
00186
00187 private:
00192 void setupWidget();
00193
00194 bool fStartOpen:1;
00195 } ;
00196
00197
00198 class RichListViewItem : public QListViewItem
00199 {
00200 public:
00201 RichListViewItem(QListViewItem *parent,
00202 QString,
00203 int);
00204 virtual ~RichListViewItem();
00205
00206 virtual void paintCell(QPainter *,
00207 const QColorGroup &,
00208 int column,
00209 int width,
00210 int alignment);
00211
00212 virtual void setup();
00213
00214 bool isRich(int c) const { return fIsRich[c]; } ;
00215 void setRich(int c,bool b) { fIsRich[c]=b; } ;
00216
00217 protected:
00218 void computeHeight(int c);
00219
00220 protected:
00221 bool *fIsRich;
00222 QRect *fRect;
00223 int fColumns;
00224
00225 } ;
00226
00227 #endif
This file is part of the documentation for kpilot Library Version 3.2.2.