author | hash <hash> | 2002-09-24 22:01:40 (UTC) |
---|---|---|
committer | hash <hash> | 2002-09-24 22:01:40 (UTC) |
commit | aa7b6129c81d13492be3f1e50e6c54efe52ceb53 (patch) (side-by-side diff) | |
tree | a39c20cf13ea22a16b156dbd4ad5fb2c29fd49c0 /development/keyview/keyview.cpp | |
parent | 0792061c7f1758216f9d31314dc2c1bdabda653f (diff) | |
download | opie-aa7b6129c81d13492be3f1e50e6c54efe52ceb53.zip opie-aa7b6129c81d13492be3f1e50e6c54efe52ceb53.tar.gz opie-aa7b6129c81d13492be3f1e50e6c54efe52ceb53.tar.bz2 |
simple keycode viewer for hardware keyboards
Diffstat (limited to 'development/keyview/keyview.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | development/keyview/keyview.cpp | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/development/keyview/keyview.cpp b/development/keyview/keyview.cpp new file mode 100644 index 0000000..15d9f51 --- a/dev/null +++ b/development/keyview/keyview.cpp @@ -0,0 +1,69 @@ +#include "keyview.h" +#include <qgrid.h> +#include <iostream.h> +#include <qlineedit.h> +#include <qlabel.h> + +Keyview::Keyview( QWidget* parent, const char* name, WFlags fl ) + : QGrid ( 2, parent, name, fl ) +{ + setCaption( tr("Keyview") ); + setSpacing(3); + setMargin(4); + + QLabel *l; + + l = new QLabel(QString("unicode:"), this); + unicode = new QLineEdit(this); + unicode->setReadOnly(1); + + l = new QLabel(QString("keycode:"), this); + keycode = new QLineEdit(this); + keycode->setReadOnly(1); + + l = new QLabel(QString("modifiers:"), this); + modifiers = new QLineEdit(this); + modifiers->setReadOnly(1); + + l = new QLabel(QString("isPress:"), this); + isPress = new QLineEdit(this); + isPress->setReadOnly(1); + + l = new QLabel(QString("autoRepeat:"), this); + autoRepeat = new QLineEdit(this); + autoRepeat->setReadOnly(1); + + // spacer + l = new QLabel(QString(""), this); + l->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); + + + KeyFilter *filter = new KeyFilter(this); + QWSServer::setKeyboardFilter(filter); + + connect(filter, SIGNAL(keyPressed(int, int, int, bool, bool)), + this, SLOT(updateItems(int, int, int, bool, bool))); +} + +Keyview::~Keyview() { } + +void Keyview::updateItems(int u, int k, int m, bool p, bool a) { + + unicode->setText("0x" + QString::number(u, 16)); + keycode->setText("0x" + QString::number(k, 16)); + modifiers->setText("0x" + QString::number(m, 16)); + isPress->setText("0x" + QString::number(p, 16)); + autoRepeat->setText("0x" + QString::number(a, 16)); +} + +KeyFilter::KeyFilter(QObject * parent, const char *name) : QObject( parent, name ) { + +} + +bool KeyFilter::filter(int unicode, int keycode, int modifiers, bool isPress, + bool autoRepeat) { + + emit keyPressed(unicode, keycode, modifiers, isPress, autoRepeat); + return 0; // return 1 to stop key emiting + +} |