summaryrefslogtreecommitdiff
path: root/noncore/unsupported/mail2/listviewplus.h
Side-by-side diff
Diffstat (limited to 'noncore/unsupported/mail2/listviewplus.h') (more/less context) (show whitespace changes)
-rw-r--r--noncore/unsupported/mail2/listviewplus.h37
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
+