summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--inputmethods/multikey/configdlg.cpp54
-rw-r--r--inputmethods/multikey/keyboard.cpp3
2 files changed, 45 insertions, 12 deletions
diff --git a/inputmethods/multikey/configdlg.cpp b/inputmethods/multikey/configdlg.cpp
index 10bc611..c5ebe3c 100644
--- a/inputmethods/multikey/configdlg.cpp
+++ b/inputmethods/multikey/configdlg.cpp
@@ -7,10 +7,8 @@
*
*
*/
-#include <iostream.h>
-
#include <qpe/qpeapplication.h>
#include <qpe/config.h>
#include <qwidget.h>
@@ -61,9 +59,28 @@ ConfigDlg::ConfigDlg () : QTabWidget ()
default_maps = map_dir.entryList(); // so i can access it in other places
for (uint i = 0; i <map_dir.count(); i++) {
- keymaps->insertItem(map_dir.absPath() + "/" + map_dir[i]);
+ QFile map (map_dir.absPath() + "/" + map_dir[i]);
+ 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(map_dir.absPath() + "/" + map_dir[i]);
+
+ map.close();
+ }
if (map_dir.absPath() + "/" + map_dir[i] == current_map) {
keymaps->setSelected(i + 1, true);
}
@@ -84,9 +101,28 @@ ConfigDlg::ConfigDlg () : QTabWidget ()
} else {
- keymaps->insertItem(custom_maps[i]);
+ QFile map (custom_maps[i]);
+ 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(custom_maps[i]);
+
+ map.close();
+ }
if (custom_maps[i] == current_map) {
keymaps->setSelected(map_dir.count() + i + 1, true);
}
@@ -231,14 +267,14 @@ void ConfigDlg::setMap(int index) {
}
else if ((uint)index <= default_maps.count()) {
remove_button->setDisabled(true);
- emit setMapToFile(keymaps->text(index));
+ emit setMapToFile(QPEApplication::qpeDir() + "/share/multikey/" + default_maps[index - 1]);
} else {
remove_button->setEnabled(true);
- emit setMapToFile(keymaps->text(index));
+ emit setMapToFile(custom_maps[index - default_maps.count() - 1]);
}
}
// ConfigDlg::addMap() {{{1
@@ -251,8 +287,9 @@ void ConfigDlg::addMap() {
Config config ("multikey");
config.setGroup("keymaps");
QStringList maps = config.readListEntry("maps", QChar('|'));
maps.append(map);
+ custom_maps.append(map);
keymaps->insertItem(map);
keymaps->setSelected(keymaps->count() - 1, true);
@@ -263,17 +300,14 @@ void ConfigDlg::addMap() {
// ConfigDlg::removeMap() {{{1
void ConfigDlg::removeMap() {
- cout << "removing : " << custom_maps[keymaps->currentItem() - default_maps.count() - 1] << "\n";
- cout << "currentItem : " << keymaps->currentItem() << "\n";
-
// move selection up one
keymaps->setSelected(keymaps->currentItem() - 1, true);
// delete the next selected item cus you just moved it up
keymaps->removeItem(keymaps->currentItem() + 1);
- custom_maps.remove(custom_maps[keymaps->currentItem() - default_maps.count()]);
+ custom_maps.remove(custom_maps.at(keymaps->currentItem() - default_maps.count()));
// write the changes
Config config ("multikey");
config.setGroup("keymaps");
diff --git a/inputmethods/multikey/keyboard.cpp b/inputmethods/multikey/keyboard.cpp
index 3f6f73b..c3ee8f3 100644
--- a/inputmethods/multikey/keyboard.cpp
+++ b/inputmethods/multikey/keyboard.cpp
@@ -33,9 +33,8 @@
#include <ctype.h>
#include <qfile.h>
#include <qtextstream.h>
#include <qstringlist.h>
-#include <iostream.h>
#include <sys/utsname.h>
@@ -601,9 +600,9 @@ void Keyboard::togglePickboard(bool on_off)
void Keyboard::toggleRepeat(bool on) {
useRepeat = on;
- cout << "setting useRepeat to: " << useRepeat << "\n";
+ //cout << "setting useRepeat to: " << useRepeat << "\n";
}
/* Keyboard::setMapTo ... {{{1 */
void Keyboard::setMapToDefault() {