]> git.lyx.org Git - lyx.git/blob - src/frontends/qt2/QBrowseBox.h
Better DPI, Cleaner c-tor.
[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.3 2002/10/17 13:31:04 leeming 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 };
74
75
76 #endif