author | hash <hash> | 2002-08-12 07:55:58 (UTC) |
---|---|---|
committer | hash <hash> | 2002-08-12 07:55:58 (UTC) |
commit | 1e045c5b7b5278b4a5925ba878cbdbdea9d03e1d (patch) (side-by-side diff) | |
tree | 9687a824bde2de00bd1b42c34988acd778660b9a | |
parent | 895a6e1cebade986110758c57cafdadd942a63ff (diff) | |
download | opie-1e045c5b7b5278b4a5925ba878cbdbdea9d03e1d.zip opie-1e045c5b7b5278b4a5925ba878cbdbdea9d03e1d.tar.gz opie-1e045c5b7b5278b4a5925ba878cbdbdea9d03e1d.tar.bz2 |
uses langauge setting to choose keymap
-rw-r--r-- | inputmethods/multikey/keyboard.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/inputmethods/multikey/keyboard.cpp b/inputmethods/multikey/keyboard.cpp index d0cfa51..8f4d562 100644 --- a/inputmethods/multikey/keyboard.cpp +++ b/inputmethods/multikey/keyboard.cpp @@ -33,66 +33,65 @@ #include <qtextstream.h> #include <sys/utsname.h> #define USE_SMALL_BACKSPACE /* Keyboard::Keyboard {{{1 */ Keyboard::Keyboard(QWidget* parent, const char* _name, WFlags f) : QFrame(parent, _name, f), shift(0), lock(0), ctrl(0), alt(0), useLargeKeys(TRUE), usePicks(0), pressedKeyRow(-1), pressedKeyCol(-1), unicode(-1), qkeycode(0), modifiers(0), LANG("ko"), schar(0), mchar(0), echar(0) { // get the default font Config qpeConfig( "qpe" ); qpeConfig.setGroup( "Appearance" ); QString familyStr = qpeConfig.readEntry( "FontFamily", "fixed" ); setFont( QFont( familyStr, 8 ) ); picks = new KeyboardPicks( this ); picks->setFont( QFont( familyStr, 8 ) ); picks->initialise(); if (usePicks) { QObject::connect( picks, SIGNAL(key(ushort,ushort,ushort,bool,bool) ), this, SIGNAL(key(ushort,ushort,ushort,bool,bool)) ); } else picks->hide(); Config config("locale"); config.setGroup( "Language" ); - //LANG = config.readEntry( "Language", "en" ); - LANG = "ko"; + LANG = config.readEntry( "Language", "en" ); repeatTimer = new QTimer( this ); connect( repeatTimer, SIGNAL(timeout()), this, SLOT(repeat()) ); } /* Keyboard::resizeEvent {{{1 */ void Keyboard::resizeEvent(QResizeEvent*) { int ph = picks->sizeHint().height(); picks->setGeometry( 0, 0, width(), ph ); keyHeight = (height()-(usePicks ? ph : 0))/5; int nk; // number of keys? if ( useLargeKeys ) { nk = 15; } else { nk = 19; } defaultKeyWidth = (width()/nk)/2; xoffs = (width()-defaultKeyWidth*nk)/2; // empty key spaces? } /* KeyboardPicks::initialize {{{1 */ void KeyboardPicks::initialise() { setSizePolicy(QSizePolicy(QSizePolicy::Expanding,QSizePolicy::Fixed)); mode = 0; dc = new KeyboardConfig(this); configs.append(dc); } @@ -745,66 +744,65 @@ ushort Keyboard::constoe(const ushort c) { case 0x11a9: return 0x1101; case 0x11ab: return 0x1102; case 0x11ae: return 0x1103; case 0x11af: return 0x1105; case 0x11b7: return 0x1106; case 0x11b8: return 0x1107; case 0x11ba: return 0x1109; case 0x11bb: return 0x110a; case 0x11bc: return 0x110b; case 0x11bd: return 0x110c; case 0x11be: return 0x110e; case 0x11bf: return 0x110f; case 0x11c0: return 0x1110; case 0x11c1: return 0x1111; case 0x11c2: return 0x1112; default: return 0; } } } // Keys::Keys {{{1 Keys::Keys() { Config config("locale"); config.setGroup( "Language" ); QString l = config.readEntry( "Language" , "en" ); QString key_map = QPEApplication::qpeDir() + "/share/multikey/" - + /* l // testing korean for now */ - + "ko.keymap"; + + l + ".keymap"; setKeysFromFile(key_map); } Keys::Keys(const char * filename) { setKeysFromFile(filename); } // Keys::setKeysFromFile {{{2 void Keys::setKeysFromFile(const char * filename) { QFile f(filename); if (f.open(IO_ReadOnly)) { QTextStream t(&f); int row; int qcode; ushort unicode; int width; QString buf; QString comment; char * xpm[256]; //couldnt be larger than that... could it? QPixmap *xpm2pix = 0; buf = t.readLine(); while (buf) { if (buf.contains(QRegExp("^\\d+\\s+[0-1a-fx]+", FALSE, FALSE))) { // no $1 type referencing!!! this implementation of regexp sucks |