-rw-r--r-- | inputmethods/multikey/configdlg.cpp | 4 | ||||
-rw-r--r-- | inputmethods/multikey/keyboard.cpp | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/inputmethods/multikey/configdlg.cpp b/inputmethods/multikey/configdlg.cpp index 1fba9bc..fe5051d 100644 --- a/inputmethods/multikey/configdlg.cpp +++ b/inputmethods/multikey/configdlg.cpp @@ -34,97 +34,97 @@ #include "keyboard.h" using namespace Opie; using namespace Opie::Ui; // ConfigDlg::ConfigDlg() {{{1 ConfigDlg::ConfigDlg () : QDialog () { setCaption( tr("Multikey Configuration") ); Config config ("multikey"); config.setGroup("keymaps"); QString current_map = config.readEntry("current", 0); /* * 'general config' tab */ QVBoxLayout *base_lay = new QVBoxLayout(this); QTabWidget *tabs = new QTabWidget(this, "tabs"); QWidget *gen_box = new QWidget(tabs, "gen_tab"); QVBoxLayout *gen_lay = new QVBoxLayout(gen_box); gen_lay->setMargin(3); QGroupBox *map_group = new QGroupBox (2, Qt::Vertical, tr("Keymap File"), gen_box); QHBox *hbox1 = new QHBox(map_group); keymaps = new QListBox(hbox1); keymaps->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); QVBox *vbox1 = new QVBox(hbox1); QToolButton *tb1 = new QToolButton(vbox1, tr("Move Up")); tb1->setPixmap(Resource::loadPixmap("up")); tb1->setAutoRaise(TRUE); tb1->setFocusPolicy(QWidget::NoFocus); tb1->setToggleButton(FALSE); connect(tb1, SIGNAL(clicked()), this, SLOT(moveSelectedUp())); QToolButton *tb2 = new QToolButton(vbox1, tr("Move Down")); tb2->setPixmap(Resource::loadPixmap("down")); tb2->setAutoRaise(TRUE); tb2->setFocusPolicy(QWidget::NoFocus); tb2->setToggleButton(FALSE); connect(tb2, SIGNAL(clicked()), this, SLOT(moveSelectedDown())); QString cur(tr("Current Language")); keymaps->insertItem(cur); keymaps->setSelected(0, true); - QDir map_dir(QPEApplication::qpeDir() + "/share/multikey", "*.keymap"); + QDir map_dir(QPEApplication::qpeDir() + "share/multikey", "*.keymap"); default_maps = map_dir.entryList(); // so i can access it in other places custom_maps = config.readListEntry("maps", QChar('|')); sw_maps = ConfigDlg::loadSw(); QStringList sw_copy(sw_maps); for (uint i = 0; i < sw_copy.count(); i++) { QString keymap_map; if (sw_copy[i][0] != '/') { /* share/multikey */ keymap_map = map_dir.absPath() + "/" + sw_copy[i]; } else { if (map_dir.exists(QFileInfo(sw_copy[i]).fileName(), false) || !QFile::exists(sw_copy[i])) { custom_maps.remove(sw_copy[i]); sw_maps.remove(sw_copy[i]); // remove it from the list too config.writeEntry("maps", custom_maps.join("|")); continue; } keymap_map = sw_copy[i]; } QFile map(keymap_map); if (map.open(IO_ReadOnly)) { QString line; bool found = 0; map.readLine(line, 1024); while (!map.atEnd()) { if (line.find(QRegExp("^title\\s*=\\s*")) != -1) { keymaps->insertItem(line.right(line.length() - line.find(QChar('=')) - 1).stripWhiteSpace()); found = 1; break; } map.readLine(line, 1024); } if (!found) keymaps->insertItem(keymap_map); map.close(); } @@ -203,97 +203,97 @@ ConfigDlg::ConfigDlg () : QDialog () if (color.isEmpty()) { color = QStringList::split(",", "240,240,240"); config.writeEntry("keycolor", color.join(",")); } */ keycolor_button->setPalette(QPalette(QColor(color[0].toInt(), color[1].toInt(), color[2].toInt()))); label = new QLabel(tr("Key Pressed Color"), color_grid); keycolor_pressed_button = new QPushButton(color_grid); connect(keycolor_pressed_button, SIGNAL(clicked()), SLOT(keyColorPressedClicked())); keycolor_pressed_button->setFlat(TRUE); color = config.readListEntry("keycolor_pressed", QChar(',')); keycolor_pressed_button->setPalette(QPalette((QColor(color[0].toInt(), color[1].toInt(), color[2].toInt())))); label = new QLabel(tr("Line Color"), color_grid); keycolor_lines_button = new QPushButton(color_grid); connect(keycolor_lines_button, SIGNAL(clicked()), SLOT(keyColorLinesClicked())); keycolor_lines_button->setFlat(TRUE); color = config.readListEntry("keycolor_lines", QChar(',')); keycolor_lines_button->setPalette(QPalette((QColor(color[0].toInt(), color[1].toInt(), color[2].toInt())))); label = new QLabel(tr("Text Color"), color_grid); textcolor_button = new QPushButton(color_grid); connect(textcolor_button, SIGNAL(clicked()), SLOT(textColorClicked())); textcolor_button->setFlat(TRUE); color = config.readListEntry("textcolor", QChar(',')); textcolor_button->setPalette(QPalette((QColor(color[0].toInt(), color[1].toInt(), color[2].toInt())))); label = new QLabel("", color_grid); // a spacer so the above buttons dont expand label->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); /* FIXME: hacked spacer height */ QSpacerItem *spacer = new QSpacerItem(0, 300, QSizePolicy::Expanding, QSizePolicy::Maximum); color_lay->addWidget(color_grid, 0, 0); color_lay->addItem(spacer); tabs->addTab(color_box, tr("Colors")); base_lay->addWidget(tabs); } QStringList ConfigDlg::loadSw() { Config *config = new Config("multikey"); config->setGroup("keymaps"); - QDir map_dir(QPEApplication::qpeDir() + "/share/multikey", "*.keymap"); + QDir map_dir(QPEApplication::qpeDir() + "share/multikey", "*.keymap"); QStringList d_maps = map_dir.entryList(); // so i can access it in other places QStringList c_maps = config->readListEntry("maps", QChar('|')); QStringList s_maps = config->readListEntry("sw", QChar('|')); delete config; if (!s_maps.count()) { s_maps = d_maps+c_maps; } else { /* Clear non existents entries */ QStringList s_copy(s_maps); for (uint i = 0; i < s_copy.count(); ++i) { if (d_maps.find(s_copy[i]) == d_maps.end() && c_maps.find(s_copy[i]) == c_maps.end()) { s_maps.remove(s_copy[i]); } } /* Update sw_maps from default_maps */ for (uint i = 0; i < d_maps.count(); ++i) { if (s_maps.find(d_maps[i]) == s_maps.end()) { s_maps.append(d_maps[i]); } } /* Update sw_maps from custom_maps */ for (uint i = 0; i < c_maps.count(); ++i) { if (s_maps.find(c_maps[i]) == s_maps.end()) { s_maps.append(c_maps[i]); } } } return s_maps; } void ConfigDlg::accept() { /* Writing all stuffs to config */ Config *config = new Config("multikey"); config->setGroup("general"); config->writeEntry("usePickboard", pick_button->isChecked()); // default closed config->writeEntry("useRepeat", repeat_button->isChecked()); // default closed config->setGroup("keymaps"); config->writeEntry("sw", sw_maps, QChar('|')); config->writeEntry("maps", custom_maps, QChar('|')); delete config; diff --git a/inputmethods/multikey/keyboard.cpp b/inputmethods/multikey/keyboard.cpp index 7ddfd3e..f8cafd5 100644 --- a/inputmethods/multikey/keyboard.cpp +++ b/inputmethods/multikey/keyboard.cpp @@ -1332,102 +1332,102 @@ ushort Keyboard::constoe(const ushort c) { case 0x1112: return 0x11c2; default: return 0; } } else { //echar to schar switch (c) { case 0x11a8: return 0x1100; 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 = new Config ("multikey"); config->setGroup( "keymaps" ); QString map = config->readEntry( "current" ); delete config; if (map.isNull() || !(QFile(map).exists())) { Config *config = new Config("locale"); config->setGroup( "Language" ); QString l = config->readEntry( "Language" , "en" ); delete config; - map = QPEApplication::qpeDir() + "/share/multikey/" + map = QPEApplication::qpeDir() + "share/multikey/" + l + ".keymap"; } if (map.isNull() || !(QFile(map).exists())) { - map = QPEApplication::qpeDir() + "/share/multikey/en.keymap"; + map = QPEApplication::qpeDir() + "share/multikey/en.keymap"; } setKeysFromFile(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? QImage *xpm2pix = 0; buf = t.readLine(); while (buf) { // get rid of comments buf.replace(QRegExp("#.*$", FALSE, FALSE), ""); // key definition if (buf.contains(QRegExp("^\\d+\\s+[0-1a-fx]+", FALSE, FALSE))) { // no $1 type referencing!!! this implementation of regexp sucks // dont know of any sscanf() type funcs in Qt lib QTextStream tmp (buf, IO_ReadOnly); tmp >> row >> qcode >> unicode >> width >> comment; buf = t.readLine(); int xpmLineCount = 0; xpm2pix = 0; // erase blank space while (buf.contains(QRegExp("^\\s*$")) && buf) buf = t.readLine(); |