-rw-r--r-- | inputmethods/multikey/configdlg.cpp | 60 | ||||
-rw-r--r-- | inputmethods/multikey/configdlg.h | 9 | ||||
-rw-r--r-- | inputmethods/multikey/keyboard.cpp | 10 | ||||
-rw-r--r-- | inputmethods/multikey/keyboard.h | 1 |
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,9 +1,6 @@ /* * 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 * * @@ -23,5 +20,5 @@ #include <qsizepolicy.h> #include <qpushbutton.h> -#include <qcombobox.h> +#include <qlistbox.h> #include "configdlg.h" #include "keyboard.h" @@ -39,24 +36,32 @@ ConfigDlg::ConfigDlg () : QTabWidget () 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); @@ -80,4 +85,5 @@ ConfigDlg::ConfigDlg () : QTabWidget () color_box->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed)); color_box->setMargin(3); + color_box->setSpacing(3); addTab(color_box, tr("Colors")); @@ -85,5 +91,5 @@ ConfigDlg::ConfigDlg () : QTabWidget () 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); @@ -115,9 +121,23 @@ 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 @@ -2,5 +2,6 @@ #include <qtabwidget.h> #include <qcheckbox.h> -#include <qcombobox.h> +#include <qlistbox.h> +#include <qpushbutton.h> #ifndef CONFIGDLG_H @@ -22,8 +23,12 @@ 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 @@ -34,5 +34,4 @@ #include <qfile.h> #include <qtextstream.h> -#include <iostream.h> #include <sys/utsname.h> @@ -78,4 +77,12 @@ Keyboard::Keyboard(QWidget* parent, const char* _name, WFlags f) : } +Keyboard::~Keyboard() { + + if ( configdlg ) { + delete (ConfigDlg *) configdlg; + configdlg = 0; + } + +} /* Keyboard::resizeEvent {{{1 */ @@ -960,5 +967,4 @@ void Keys::setKeysFromFile(const char * filename) { } - cout << name << " = " << value << "\n"; buf = t.readLine(); } 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 @@ -93,4 +93,5 @@ class Keyboard : public QFrame public: Keyboard( QWidget* parent=0, const char* name=0, WFlags f=0 ); + ~Keyboard(); void resetState(); |