summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--inputmethods/multikey/configdlg.cpp60
-rw-r--r--inputmethods/multikey/configdlg.h9
-rw-r--r--inputmethods/multikey/keyboard.cpp10
-rw-r--r--inputmethods/multikey/keyboard.h1
4 files changed, 56 insertions, 24 deletions
diff --git a/inputmethods/multikey/configdlg.cpp b/inputmethods/multikey/configdlg.cpp
index f23bf1c..7bea589 100644
--- a/inputmethods/multikey/configdlg.cpp
+++ b/inputmethods/multikey/configdlg.cpp
@@ -1,10 +1,7 @@
1/* 1/*
2 * TODO 2 * TODO
3 * make a font selection thing 3 * make a font selection thing (size too)
4 * 4 *
5 * FIXME
6 * if you open the config dialog and close it from the little (x) button on the title bar,
7 * you have to hit the button on the keyboard twice for it to open the next time
8 * 5 *
9 * 6 *
10 */ 7 */
@@ -22,7 +19,7 @@
22#include <qcheckbox.h> 19#include <qcheckbox.h>
23#include <qsizepolicy.h> 20#include <qsizepolicy.h>
24#include <qpushbutton.h> 21#include <qpushbutton.h>
25#include <qcombobox.h> 22#include <qlistbox.h>
26#include "configdlg.h" 23#include "configdlg.h"
27#include "keyboard.h" 24#include "keyboard.h"
28 25
@@ -38,26 +35,34 @@ ConfigDlg::ConfigDlg () : QTabWidget ()
38 gen_box->setMargin(3); 35 gen_box->setMargin(3);
39 addTab(gen_box, tr("General Settings")); 36 addTab(gen_box, tr("General Settings"));
40 37
41 QGroupBox *map_group = new QGroupBox (2, Qt::Horizontal, tr("Keymap File"), gen_box); 38 QGroupBox *map_group = new QGroupBox (2, Qt::Vertical, tr("Keymap File"), gen_box);
42 39
43 map_combo = new QComboBox ((bool)0, map_group); 40 keymaps = new QListBox (map_group);
44 map_combo->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed)); 41 keymaps->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding));
42 //keymaps->setMaximumHeight(150);
45 43
46 QString cur(tr("Current Language")); 44 QString cur(tr("Current Language"));
47 map_combo->insertItem(cur); 45 keymaps->insertItem(cur);
48 connect(map_combo, SIGNAL(activated(int)), SLOT(setMap(int))); 46 connect(keymaps, SIGNAL(highlighted(int)), SLOT(setMap(int)));
49 47
50 QString ko(tr(QPEApplication::qpeDir() + "/share/multikey/ko.keymap")); 48 QString ko(QPEApplication::qpeDir() + "/share/multikey/ko.keymap");
51 map_combo->insertItem(ko); 49 keymaps->insertItem(ko);
52 50
53 QString en(tr(QPEApplication::qpeDir() + "/share/multikey/en.keymap")); 51 QString en(QPEApplication::qpeDir() + "/share/multikey/en.keymap");
54 map_combo->insertItem(en); 52 keymaps->insertItem(en);
55 53
56 QString de(tr(QPEApplication::qpeDir() + "/share/multikey/de.keymap")); 54 QString de(QPEApplication::qpeDir() + "/share/multikey/de.keymap");
57 map_combo->insertItem(de); 55 keymaps->insertItem(de);
58 56
59 QPushButton *button = new QPushButton(tr("Browse..."), map_group); 57 QGrid *add_remove_grid = new QGrid(2, map_group);
60 button->setFlat((bool)1); 58 add_remove_grid->setMargin(3);
59 add_remove_grid->setSpacing(3);
60
61 add_button = new QPushButton(tr("Add"), add_remove_grid);
62 add_button->setFlat((bool)1);
63
64 remove_button = new QPushButton(tr("Remove"), add_remove_grid);
65 remove_button->setFlat((bool)1);
61 66
62 pick_button = new QCheckBox(tr("Pickboard"), gen_box); 67 pick_button = new QCheckBox(tr("Pickboard"), gen_box);
63 68
@@ -79,12 +84,13 @@ ConfigDlg::ConfigDlg () : QTabWidget ()
79 QGrid *color_box = new QGrid(2, this); 84 QGrid *color_box = new QGrid(2, this);
80 color_box->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed)); 85 color_box->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
81 color_box->setMargin(3); 86 color_box->setMargin(3);
87 color_box->setSpacing(3);
82 addTab(color_box, tr("Colors")); 88 addTab(color_box, tr("Colors"));
83 89
84 QLabel *label; 90 QLabel *label;
85 91
86 label = new QLabel(tr("Key Color"), color_box); 92 label = new QLabel(tr("Key Color"), color_box);
87 button = new QPushButton(color_box); 93 QPushButton *button = new QPushButton(color_box);
88 button->setFlat((bool)1); 94 button->setFlat((bool)1);
89 label = new QLabel(tr("Key Pressed Color"), color_box); 95 label = new QLabel(tr("Key Pressed Color"), color_box);
90 button = new QPushButton(color_box); 96 button = new QPushButton(color_box);
@@ -114,10 +120,24 @@ void ConfigDlg::setMap(int index) {
114 120
115 if (index == 0) { 121 if (index == 0) {
116 122
123 if (remove_button->isEnabled())
124 remove_button->setDisabled(true);
125
117 emit setMapToDefault(); 126 emit setMapToDefault();
118 } 127 }
119 else { 128 else {
120 129
121 emit setMapToFile(map_combo->text(index)); 130 if (!remove_button->isEnabled())
131 remove_button->setEnabled(true);
132
133 emit setMapToFile(keymaps->text(index));
122 } 134 }
123} 135}
136
137void ConfigDlg::addMap() {
138
139}
140
141void ConfigDlg::removeMap(int index) {
142
143}
diff --git a/inputmethods/multikey/configdlg.h b/inputmethods/multikey/configdlg.h
index 54127a0..1a64764 100644
--- a/inputmethods/multikey/configdlg.h
+++ b/inputmethods/multikey/configdlg.h
@@ -1,7 +1,8 @@
1#include <qpe/qpeapplication.h> 1#include <qpe/qpeapplication.h>
2#include <qtabwidget.h> 2#include <qtabwidget.h>
3#include <qcheckbox.h> 3#include <qcheckbox.h>
4#include <qcombobox.h> 4#include <qlistbox.h>
5#include <qpushbutton.h>
5 6
6#ifndef CONFIGDLG_H 7#ifndef CONFIGDLG_H
7#define CONFIGDLG_H 8#define CONFIGDLG_H
@@ -21,10 +22,14 @@ signals:
21private slots: 22private slots:
22 void pickTog(); 23 void pickTog();
23 void setMap(int index); 24 void setMap(int index);
25 void addMap();
26 void removeMap(int index);
24 27
25private: 28private:
26 QCheckBox *pick_button; 29 QCheckBox *pick_button;
27 QComboBox *map_combo; 30 QListBox *keymaps;
31 QPushButton *add_button;
32 QPushButton *remove_button;
28 33
29}; 34};
30 35
diff --git a/inputmethods/multikey/keyboard.cpp b/inputmethods/multikey/keyboard.cpp
index 2a80f1e..b71f929 100644
--- a/inputmethods/multikey/keyboard.cpp
+++ b/inputmethods/multikey/keyboard.cpp
@@ -33,7 +33,6 @@
33#include <ctype.h> 33#include <ctype.h>
34#include <qfile.h> 34#include <qfile.h>
35#include <qtextstream.h> 35#include <qtextstream.h>
36#include <iostream.h>
37 36
38#include <sys/utsname.h> 37#include <sys/utsname.h>
39 38
@@ -77,6 +76,14 @@ Keyboard::Keyboard(QWidget* parent, const char* _name, WFlags f) :
77 connect( repeatTimer, SIGNAL(timeout()), this, SLOT(repeat()) ); 76 connect( repeatTimer, SIGNAL(timeout()), this, SLOT(repeat()) );
78 77
79} 78}
79Keyboard::~Keyboard() {
80
81 if ( configdlg ) {
82 delete (ConfigDlg *) configdlg;
83 configdlg = 0;
84 }
85
86}
80 87
81/* Keyboard::resizeEvent {{{1 */ 88/* Keyboard::resizeEvent {{{1 */
82void Keyboard::resizeEvent(QResizeEvent*) 89void Keyboard::resizeEvent(QResizeEvent*)
@@ -959,7 +966,6 @@ void Keys::setKeysFromFile(const char * filename) {
959 966
960 } 967 }
961 968
962 cout << name << " = " << value << "\n";
963 buf = t.readLine(); 969 buf = t.readLine();
964 } 970 }
965 // comments 971 // comments
diff --git a/inputmethods/multikey/keyboard.h b/inputmethods/multikey/keyboard.h
index c2efe10..8ca50ea 100644
--- a/inputmethods/multikey/keyboard.h
+++ b/inputmethods/multikey/keyboard.h
@@ -92,6 +92,7 @@ class Keyboard : public QFrame
92 Q_OBJECT 92 Q_OBJECT
93public: 93public:
94 Keyboard( QWidget* parent=0, const char* name=0, WFlags f=0 ); 94 Keyboard( QWidget* parent=0, const char* name=0, WFlags f=0 );
95 ~Keyboard();
95 96
96 void resetState(); 97 void resetState();
97 98