]> git.lyx.org Git - lyx.git/blob - src/frontends/qt2/QBrowseBox.h
the qtclean-2 patch with some very small changes
[lyx.git] / src / frontends / qt2 / QBrowseBox.h
1 // -*- C++ -*-
2 /**
3  * \file QBrowseBox.h
4  *
5  * Original file taken from klyx 0.10 sources:
6  * $Id: QBrowseBox.h,v 1.4 2002/10/20 01:48:27 larsbj Exp $
7  *
8  * \author Kalle Dalheimer ?
9  *
10  * Full author contact details are available in file CREDITS
11  */
12
13 #ifndef QBROWSEBOX_H
14 #define QBROWSEBOX_H
15
16 #include "qgridview.h"
17
18 #include <qwidget.h>
19
20
21 class QString;
22 class QPainter;
23 class QPixmap;
24
25
26 class QBrowseBox : public QGridView
27 {
28         Q_OBJECT
29 public:
30         QBrowseBox(int rows, int cols);
31         ~QBrowseBox();
32         
33         void insertItem(QString const & text, int x, int y);
34         void insertItem(char const * text, int x, int y);
35         void insertItem(QPixmap pixmap, int x, int y);
36         void insertItem(QPixmap pixmap);
37         void removeItem(int x, int y);
38         void clear();
39         
40         QString text(int x, int y);
41         QPixmap pixmap(int x, int y);
42         
43         //  int exec(QPoint const & pos);
44         //  int exec(int x, int y);
45         //  int exec(QWidget * trigger);
46         
47 signals:
48         void selected(int, int);
49         
50 protected:
51         virtual void keyPressEvent(QKeyEvent * e);
52         virtual void resizeEvent(QResizeEvent * e);
53         virtual void mouseReleaseEvent(QMouseEvent * e);
54         //  virtual void closeEvent(QCloseEvent * e);
55         virtual void mouseMoveEvent(QMouseEvent * e);
56         virtual void paintCell(QPainter *, int x, int y);
57         
58 private:
59         // make sure the automatically generated one is not used
60         QBrowseBox & operator=(QBrowseBox const &);
61         
62         void moveLeft();
63         void moveRight();
64         void moveUp();
65         void moveDown();
66         
67         int coordsToIndex(int x, int y);
68         
69         QString * texts_;
70         QPixmap* pixmaps_;
71         QPoint activecell_;
72 };
73 #endif