summaryrefslogtreecommitdiff
path: root/inputmethods/multikey/keyboard.cpp
Unidiff
Diffstat (limited to 'inputmethods/multikey/keyboard.cpp') (more/less context) (show whitespace changes)
-rw-r--r--inputmethods/multikey/keyboard.cpp67
1 files changed, 47 insertions, 20 deletions
diff --git a/inputmethods/multikey/keyboard.cpp b/inputmethods/multikey/keyboard.cpp
index 8f4d562..a19f07a 100644
--- a/inputmethods/multikey/keyboard.cpp
+++ b/inputmethods/multikey/keyboard.cpp
@@ -21,4 +21,6 @@
21#include "keyboard.h" 21#include "keyboard.h"
22#include "configdlg.h"
22 23
23#include <qpe/global.h> 24#include <qpe/global.h>
25#include <qpe/qcopenvelope_qws.h>
24 26
@@ -43,3 +45,5 @@ Keyboard::Keyboard(QWidget* parent, const char* _name, WFlags f) :
43 alt(0), useLargeKeys(TRUE), usePicks(0), pressedKeyRow(-1), pressedKeyCol(-1), 45 alt(0), useLargeKeys(TRUE), usePicks(0), pressedKeyRow(-1), pressedKeyCol(-1),
44 unicode(-1), qkeycode(0), modifiers(0), LANG("ko"), schar(0), mchar(0), echar(0) 46 unicode(-1), qkeycode(0), modifiers(0), LANG("ko"), schar(0), mchar(0), echar(0),
47 configdlg(0)
48
45{ 49{
@@ -50,2 +54,6 @@ Keyboard::Keyboard(QWidget* parent, const char* _name, WFlags f) :
50 54
55 Config multiConfig ("multikey");
56 multiConfig.setGroup ("pickboard");
57 usePicks = multiConfig.readBoolEntry ("open", "0"); // default closed
58
51 setFont( QFont( familyStr, 8 ) ); 59 setFont( QFont( familyStr, 8 ) );
@@ -264,23 +272,15 @@ void Keyboard::mousePressEvent(QMouseEvent *e)
264 272
265 usePicks = !usePicks; 273 if ( configdlg ) {
266 if (usePicks) { 274 delete (ConfigDlg *) configdlg;
267 picks->show(); 275 configdlg = 0;
268 move(x(), y() - picks->height()); 276 }
269 adjustSize(); 277 else {
270 QObject::connect( picks, SIGNAL(key(ushort,ushort,ushort,bool,bool) ), 278 configdlg = new ConfigDlg ();
271 this, SIGNAL(key(ushort,ushort,ushort,bool,bool)) ); 279 connect(configdlg, SIGNAL(pickboardToggled(bool)),
272 } else { 280 this, SLOT(togglePickboard(bool)));
273 281 configdlg->showMaximized();
274 picks->hide(); 282 configdlg->show();
275 picks->resetState(); 283 configdlg->raise();
276 move(x(), y() + picks->height());
277 adjustSize();
278 QObject::disconnect( picks, SIGNAL(key(ushort,ushort,ushort,bool,bool) ),
279 this, SIGNAL(key(ushort,ushort,ushort,bool,bool)) );
280
281 } 284 }
282 285
283 keys.setPressed(row, col, usePicks);
284 need_repaint = TRUE;
285 qkeycode = 0; // don't need to emit Key_F1
286 } else if (qkeycode == Qt::Key_Control) { 286 } else if (qkeycode == Qt::Key_Control) {
@@ -464,2 +464,29 @@ void Keyboard::resetState()
464 464
465/* Keyboard::togglePickboard {{{1 */
466void Keyboard::togglePickboard(bool on_off)
467{
468 usePicks = on_off;
469 if (usePicks) {
470 picks->show();
471 //move(x(), y() - picks->height()); // not required anymore because QCopChannel::send
472 //adjustSize();
473 QObject::connect( picks, SIGNAL(key(ushort,ushort,ushort,bool,bool) ),
474 this, SIGNAL(key(ushort,ushort,ushort,bool,bool)) );
475 } else {
476
477 picks->hide();
478 picks->resetState();
479 //move(x(), y() + picks->height());
480 //adjustSize();
481 QObject::disconnect( picks, SIGNAL(key(ushort,ushort,ushort,bool,bool) ),
482 this, SIGNAL(key(ushort,ushort,ushort,bool,bool)) );
483
484 }
485 /*
486 * this closes && opens the input method
487 */
488 QCopChannel::send ("QPE/TaskBar", "hideInputMethod()");
489 QCopChannel::send ("QPE/TaskBar", "showInputMethod()");
490}
491
465/* korean input functions {{{1 492/* korean input functions {{{1