-rw-r--r-- | noncore/apps/opie-console/function_keyboard.cpp | 24 | ||||
-rw-r--r-- | noncore/apps/opie-console/function_keyboard.h | 6 |
2 files changed, 23 insertions, 7 deletions
diff --git a/noncore/apps/opie-console/function_keyboard.cpp b/noncore/apps/opie-console/function_keyboard.cpp index a5b19c0..ac35d1c 100644 --- a/noncore/apps/opie-console/function_keyboard.cpp +++ b/noncore/apps/opie-console/function_keyboard.cpp @@ -1,11 +1,12 @@ #include "function_keyboard.h" #include <qsizepolicy.h> #include <qevent.h> +#include <qwindowsystem_qws.h> #include <qapplication.h> FunctionKeyboard::FunctionKeyboard(QWidget *parent) : QFrame(parent), numRows(1), numCols(11), pressedRow(0), pressedCol(0) { setSizePolicy(QSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed)); @@ -94,38 +95,47 @@ void FunctionKeyboard::mousePressEvent(QMouseEvent *e) { pressedRow = e->y() / keyHeight; pressedCol = (int) (e->x() / keyWidth); paintKey(pressedRow, pressedCol); // emit that sucker! FKey k = keys["r" + QString::number(pressedRow) + "c" + QString::number(pressedCol)]; - //QWSServer::sendKeyEvent(k.getU(), k.getQ(), 0, 1, 0); - //qwsServer->sendKeyEvent(k.getU(), k.getQ(), 0, 1, 0); - //qwsServer->sendKeyEvent(0x41, 0, 0, 1, 0); + emit keyPressed(k.getU(), k.getQ(), 0, 1, 0); + /* + * + QWSServer::sendKeyEvent(k.getU(), k.getQ(), 0, 1, 0); + qwsServer->sendKeyEvent(k.getU(), k.getQ(), 0, 1, 0); + qwsServer->sendKeyEvent(0x41, 0, 0, 1, 0); QKeyEvent ke(QEvent::KeyPress, k.getQ(), k.getU(), 0); - QApplication::sendEvent(this, &ke); + QApplication::sendEvent((QObject *)parent, &ke); + */ } void FunctionKeyboard::mouseReleaseEvent(QMouseEvent *) { if (pressedRow != -1 && pressedRow != -1) { int row = pressedRow; pressedRow = -1; int col = pressedCol; pressedCol = -1; paintKey(row, col); FKey k = keys["r" + QString::number(row) + "c" + QString::number(col)]; - //QWSServer::sendKeyEvent(k.getU(), k.getQ(), 0, 0, 0); - //qwsServer->sendKeyEvent(k.getU(), k.getQ(), 0, 0, 0); + emit keyPressed(k.getU(), k.getQ(), 0, 0, 0); + + /* + QWSServer::sendKeyEvent(k.getU(), k.getQ(), 0, 0, 0); + qwsServer->sendKeyEvent(k.getU(), k.getQ(), 0, 0, 0); + QKeyEvent ke(QEvent::KeyRelease, k.getQ(), k.getU(), 0); - QApplication::sendEvent(this, &ke); + QApplication::sendEvent((QObject *)parent, &ke); + */ } } void FunctionKeyboard::resizeEvent(QResizeEvent*) { /* set he default font height/width */ diff --git a/noncore/apps/opie-console/function_keyboard.h b/noncore/apps/opie-console/function_keyboard.h index bc3e25c..b8420ae 100644 --- a/noncore/apps/opie-console/function_keyboard.h +++ b/noncore/apps/opie-console/function_keyboard.h @@ -36,23 +36,29 @@ public: void mousePressEvent(QMouseEvent*); void mouseReleaseEvent(QMouseEvent*); void resizeEvent(QResizeEvent*); QSize sizeHint() const; +signals: + + void keyPressed(ushort, ushort, bool, bool, bool); + private: // thie key for the map is the row/col QMap<QString, FKey> keys; uint numRows; uint numCols; uint keyHeight; double keyWidth; // decimal point matters! int pressedRow, pressedCol; + QObject *parent; + }; #endif |