Diffstat (limited to 'noncore/unsupported/mail2/listviewplus.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/unsupported/mail2/listviewplus.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/noncore/unsupported/mail2/listviewplus.h b/noncore/unsupported/mail2/listviewplus.h new file mode 100644 index 0000000..519bc39 --- a/dev/null +++ b/noncore/unsupported/mail2/listviewplus.h @@ -0,0 +1,37 @@ +#ifndef LISTVIEWPLUS_H +#define LISTVIEWPLUS_H + +#include <qlistview.h> + +class QPopupMenu; +class QPoint; +class QTimer; + +class ListViewPlus : public QListView +{ + Q_OBJECT + +public: + ListViewPlus(QWidget *parent = 0, const char *name = 0, WFlags fl = 0); + + void setPopup(QPopupMenu *popup, int delay = 800); + QPopupMenu *popup() { return _popup; } + +protected: + void keyPressEvent(QKeyEvent *event); + +private slots: + void _initPopup(QListViewItem *, const QPoint &point, int); + void _cancelPopup(QListViewItem *, const QPoint &, int); + void _showPopup(); + +private: + QPopupMenu *_popup; + QPoint _point; + QTimer *_timer; + int _delay; + +}; + +#endif + |