-rw-r--r-- | development/keyview/keyview.cpp | 17 | ||||
-rw-r--r-- | development/keyview/keyview.h | 2 |
2 files changed, 12 insertions, 7 deletions
diff --git a/development/keyview/keyview.cpp b/development/keyview/keyview.cpp index 8e24efc..8187744 100644 --- a/development/keyview/keyview.cpp +++ b/development/keyview/keyview.cpp | |||
@@ -1,71 +1,76 @@ | |||
1 | #include "keyview.h" | 1 | #include "keyview.h" |
2 | #include <qgrid.h> | 2 | #include <qgrid.h> |
3 | //#include <iostream.h> | 3 | //#include <iostream.h> |
4 | #include <qlineedit.h> | 4 | #include <qlineedit.h> |
5 | #include <qlabel.h> | 5 | #include <qlabel.h> |
6 | #include <opie2/okeyfilter.h> | ||
7 | #include <opie2/odebug.h> | ||
6 | 8 | ||
7 | Keyview::Keyview( QWidget* parent, const char* name, WFlags fl ) | 9 | Keyview::Keyview( QWidget* parent, const char* name, WFlags fl ) |
8 | : QGrid ( 2, parent, name, fl ) | 10 | : QGrid ( 2, parent, name, fl ) |
9 | { | 11 | { |
10 | setCaption( tr("Keyview") ); | 12 | setCaption( tr("Keyview") ); |
11 | setSpacing(3); | 13 | setSpacing(3); |
12 | setMargin(4); | 14 | setMargin(4); |
13 | 15 | ||
14 | QLabel *l; | 16 | QLabel *l; |
15 | 17 | ||
16 | l = new QLabel(QString("unicode:"), this); | 18 | l = new QLabel(QString("unicode:"), this); |
17 | unicode = new QLineEdit(this); | 19 | unicode = new QLineEdit(this); |
18 | unicode->setReadOnly(1); | 20 | unicode->setReadOnly(1); |
19 | 21 | ||
20 | l = new QLabel(QString("keycode:"), this); | 22 | l = new QLabel(QString("keycode:"), this); |
21 | keycode = new QLineEdit(this); | 23 | keycode = new QLineEdit(this); |
22 | keycode->setReadOnly(1); | 24 | keycode->setReadOnly(1); |
23 | 25 | ||
24 | l = new QLabel(QString("modifiers:"), this); | 26 | l = new QLabel(QString("modifiers:"), this); |
25 | modifiers = new QLineEdit(this); | 27 | modifiers = new QLineEdit(this); |
26 | modifiers->setReadOnly(1); | 28 | modifiers->setReadOnly(1); |
27 | 29 | ||
28 | l = new QLabel(QString("isPress:"), this); | 30 | l = new QLabel(QString("isPress:"), this); |
29 | isPress = new QLineEdit(this); | 31 | isPress = new QLineEdit(this); |
30 | isPress->setReadOnly(1); | 32 | isPress->setReadOnly(1); |
31 | 33 | ||
32 | l = new QLabel(QString("autoRepeat:"), this); | 34 | l = new QLabel(QString("autoRepeat:"), this); |
33 | autoRepeat = new QLineEdit(this); | 35 | autoRepeat = new QLineEdit(this); |
34 | autoRepeat->setReadOnly(1); | 36 | autoRepeat->setReadOnly(1); |
35 | 37 | ||
36 | // spacer | 38 | // spacer |
37 | l = new QLabel(QString(""), this); | 39 | l = new QLabel(QString(""), this); |
38 | l->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); | 40 | l->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); |
39 | 41 | ||
40 | 42 | ||
41 | KeyFilter *filter = new KeyFilter(this); | 43 | KeyFilter *filter = new KeyFilter(this); |
42 | QWSServer::setKeyboardFilter(filter); | 44 | Opie::Core::OKeyFilter::inst()->addHandler(filter); |
45 | odebug << "Creating keyview filter " << oendl; | ||
43 | 46 | ||
44 | connect(filter, SIGNAL(keyPressed(int,int,int,bool,bool)), | 47 | connect(filter, SIGNAL(keyPressed(int,int,int,bool,bool)), |
45 | this, SLOT(updateItems(int,int,int,bool,bool))); | 48 | this, SLOT(updateItems(int,int,int,bool,bool))); |
46 | } | 49 | } |
47 | 50 | ||
48 | Keyview::~Keyview() { } | 51 | Keyview::~Keyview() |
52 | { | ||
53 | } | ||
49 | 54 | ||
50 | void Keyview::updateItems(int u, int k, int m, bool p, bool a) { | 55 | void Keyview::updateItems(int u, int k, int m, bool p, bool a) { |
51 | 56 | ||
52 | unicode->setText("0x" + QString::number(u, 16)); | 57 | unicode->setText("0x" + QString::number(u, 16)); |
53 | keycode->setText("0x" + QString::number(k, 16)); | 58 | keycode->setText("0x" + QString::number(k, 16)); |
54 | modifiers->setText("0x" + QString::number(m, 16)); | 59 | modifiers->setText("0x" + QString::number(m, 16)); |
55 | isPress->setText("0x" + QString::number(p, 16)); | 60 | isPress->setText("0x" + QString::number(p, 16)); |
56 | autoRepeat->setText("0x" + QString::number(a, 16)); | 61 | autoRepeat->setText("0x" + QString::number(a, 16)); |
57 | } | 62 | } |
58 | 63 | ||
59 | KeyFilter::KeyFilter(QObject * parent, const char *name) : QObject( parent, name ) { | 64 | KeyFilter::KeyFilter(QObject * parent, const char *name) : QObject( parent, name ) |
60 | 65 | { | |
61 | } | 66 | } |
62 | 67 | ||
63 | bool KeyFilter::filter(int unicode, int keycode, int modifiers, bool isPress, | 68 | bool KeyFilter::filter(int unicode, int keycode, int modifiers, bool isPress, |
64 | bool autoRepeat) { | 69 | bool autoRepeat) { |
65 | 70 | ||
66 | qDebug( "unicode: %d, keycode: %d, modifiers: %0x, isPress: %d, autoRepeat: %d", | 71 | qDebug( "unicode: %d, keycode: %d, modifiers: %0x, isPress: %d, autoRepeat: %d", |
67 | unicode, keycode, modifiers, isPress ); | 72 | unicode, keycode, modifiers, isPress ); |
68 | emit keyPressed(unicode, keycode, modifiers, isPress, autoRepeat); | 73 | emit keyPressed(unicode, keycode, modifiers, isPress, autoRepeat); |
69 | return 0; // return 1 to stop key emiting | 74 | return 0; // return 1 to stop key emiting |
70 | 75 | ||
71 | } | 76 | } |
diff --git a/development/keyview/keyview.h b/development/keyview/keyview.h index ab4ae60..5f1e943 100644 --- a/development/keyview/keyview.h +++ b/development/keyview/keyview.h | |||
@@ -1,33 +1,33 @@ | |||
1 | #ifndef KEYVIEW_H | 1 | #ifndef KEYVIEW_H |
2 | #define KEYVIEW_H | 2 | #define KEYVIEW_H |
3 | #include <qgrid.h> | 3 | #include <qgrid.h> |
4 | #include <qlineedit.h> | 4 | #include <qlineedit.h> |
5 | #include <qwindowsystem_qws.h> | 5 | #include <qwindowsystem_qws.h> |
6 | 6 | ||
7 | 7 | ||
8 | class Keyview : public QGrid | 8 | class Keyview : public QGrid |
9 | { | 9 | { |
10 | Q_OBJECT | 10 | Q_OBJECT |
11 | 11 | ||
12 | public: | 12 | public: |
13 | Keyview( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); | 13 | Keyview( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); |
14 | ~Keyview(); | 14 | ~Keyview(); |
15 | 15 | ||
16 | private slots: | 16 | private slots: |
17 | void updateItems(int, int, int, bool, bool); | 17 | void updateItems(int, int, int, bool, bool); |
18 | 18 | ||
19 | private: | 19 | private: |
20 | 20 | ||
21 | QLineEdit *unicode; | 21 | QLineEdit *unicode; |
22 | QLineEdit *keycode; | 22 | QLineEdit *keycode; |
23 | QLineEdit *modifiers; | 23 | QLineEdit *modifiers; |
24 | QLineEdit *isPress; | 24 | QLineEdit *isPress; |
25 | QLineEdit *autoRepeat; | 25 | QLineEdit *autoRepeat; |
26 | 26 | ||
27 | }; | 27 | }; |
28 | 28 | ||
29 | class KeyFilter : public QObject, public QWSServer::KeyboardFilter | 29 | class KeyFilter : public QObject, public QWSServer::KeyboardFilter |
30 | { | 30 | { |
31 | Q_OBJECT | 31 | Q_OBJECT |
32 | 32 | ||
33 | public: | 33 | public: |