summaryrefslogtreecommitdiff
Side-by-side diff
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 @@
/*
* TODO
- * make a font selection thing
+ * make a font selection thing (size too)
*
- * FIXME
- * if you open the config dialog and close it from the little (x) button on the title bar,
- * you have to hit the button on the keyboard twice for it to open the next time
*
*
*/
@@ -22,7 +19,7 @@
#include <qcheckbox.h>
#include <qsizepolicy.h>
#include <qpushbutton.h>
-#include <qcombobox.h>
+#include <qlistbox.h>
#include "configdlg.h"
#include "keyboard.h"
@@ -38,26 +35,34 @@ ConfigDlg::ConfigDlg () : QTabWidget ()
gen_box->setMargin(3);
addTab(gen_box, tr("General Settings"));
- QGroupBox *map_group = new QGroupBox (2, Qt::Horizontal, tr("Keymap File"), gen_box);
+ QGroupBox *map_group = new QGroupBox (2, Qt::Vertical, tr("Keymap File"), gen_box);
- map_combo = new QComboBox ((bool)0, map_group);
- map_combo->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
+ keymaps = new QListBox (map_group);
+ keymaps->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding));
+ //keymaps->setMaximumHeight(150);
QString cur(tr("Current Language"));
- map_combo->insertItem(cur);
- connect(map_combo, SIGNAL(activated(int)), SLOT(setMap(int)));
+ keymaps->insertItem(cur);
+ connect(keymaps, SIGNAL(highlighted(int)), SLOT(setMap(int)));
- QString ko(tr(QPEApplication::qpeDir() + "/share/multikey/ko.keymap"));
- map_combo->insertItem(ko);
+ QString ko(QPEApplication::qpeDir() + "/share/multikey/ko.keymap");
+ keymaps->insertItem(ko);
- QString en(tr(QPEApplication::qpeDir() + "/share/multikey/en.keymap"));
- map_combo->insertItem(en);
+ QString en(QPEApplication::qpeDir() + "/share/multikey/en.keymap");
+ keymaps->insertItem(en);
- QString de(tr(QPEApplication::qpeDir() + "/share/multikey/de.keymap"));
- map_combo->insertItem(de);
+ QString de(QPEApplication::qpeDir() + "/share/multikey/de.keymap");
+ keymaps->insertItem(de);
- QPushButton *button = new QPushButton(tr("Browse..."), map_group);
- button->setFlat((bool)1);
+ QGrid *add_remove_grid = new QGrid(2, map_group);
+ add_remove_grid->setMargin(3);
+ add_remove_grid->setSpacing(3);
+
+ add_button = new QPushButton(tr("Add"), add_remove_grid);
+ add_button->setFlat((bool)1);
+
+ remove_button = new QPushButton(tr("Remove"), add_remove_grid);
+ remove_button->setFlat((bool)1);
pick_button = new QCheckBox(tr("Pickboard"), gen_box);
@@ -79,12 +84,13 @@ ConfigDlg::ConfigDlg () : QTabWidget ()
QGrid *color_box = new QGrid(2, this);
color_box->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
color_box->setMargin(3);
+ color_box->setSpacing(3);
addTab(color_box, tr("Colors"));
QLabel *label;
label = new QLabel(tr("Key Color"), color_box);
- button = new QPushButton(color_box);
+ QPushButton *button = new QPushButton(color_box);
button->setFlat((bool)1);
label = new QLabel(tr("Key Pressed Color"), color_box);
button = new QPushButton(color_box);
@@ -114,10 +120,24 @@ void ConfigDlg::setMap(int index) {
if (index == 0) {
+ if (remove_button->isEnabled())
+ remove_button->setDisabled(true);
+
emit setMapToDefault();
}
else {
- emit setMapToFile(map_combo->text(index));
+ if (!remove_button->isEnabled())
+ remove_button->setEnabled(true);
+
+ emit setMapToFile(keymaps->text(index));
}
}
+
+void ConfigDlg::addMap() {
+
+}
+
+void ConfigDlg::removeMap(int index) {
+
+}
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 @@
#include <qpe/qpeapplication.h>
#include <qtabwidget.h>
#include <qcheckbox.h>
-#include <qcombobox.h>
+#include <qlistbox.h>
+#include <qpushbutton.h>
#ifndef CONFIGDLG_H
#define CONFIGDLG_H
@@ -21,10 +22,14 @@ signals:
private slots:
void pickTog();
void setMap(int index);
+ void addMap();
+ void removeMap(int index);
private:
QCheckBox *pick_button;
- QComboBox *map_combo;
+ QListBox *keymaps;
+ QPushButton *add_button;
+ QPushButton *remove_button;
};
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 @@
#include <ctype.h>
#include <qfile.h>
#include <qtextstream.h>
-#include <iostream.h>
#include <sys/utsname.h>
@@ -77,6 +76,14 @@ Keyboard::Keyboard(QWidget* parent, const char* _name, WFlags f) :
connect( repeatTimer, SIGNAL(timeout()), this, SLOT(repeat()) );
}
+Keyboard::~Keyboard() {
+
+ if ( configdlg ) {
+ delete (ConfigDlg *) configdlg;
+ configdlg = 0;
+ }
+
+}
/* Keyboard::resizeEvent {{{1 */
void Keyboard::resizeEvent(QResizeEvent*)
@@ -959,7 +966,6 @@ void Keys::setKeysFromFile(const char * filename) {
}
- cout << name << " = " << value << "\n";
buf = t.readLine();
}
// 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
Q_OBJECT
public:
Keyboard( QWidget* parent=0, const char* name=0, WFlags f=0 );
+ ~Keyboard();
void resetState();