summaryrefslogtreecommitdiff
path: root/inputmethods/multikey/configdlg.cpp
Unidiff
Diffstat (limited to 'inputmethods/multikey/configdlg.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--inputmethods/multikey/configdlg.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/inputmethods/multikey/configdlg.cpp b/inputmethods/multikey/configdlg.cpp
index 3e39415..1fba9bc 100644
--- a/inputmethods/multikey/configdlg.cpp
+++ b/inputmethods/multikey/configdlg.cpp
@@ -1,83 +1,85 @@
1/* 1/*
2 * TODO 2 * TODO
3 * make a font selection thing (size too) 3 * make a font selection thing (size too)
4 * make a keymap editor 4 * make a keymap editor
5 * make keys translucent 5 * make keys translucent
6 * make vertical keys possible 6 * make vertical keys possible
7 * 7 *
8 * 8 *
9 */ 9 */
10 10
11#include <qpe/qpeapplication.h> 11#include <qpe/qpeapplication.h>
12#include <qpe/config.h> 12#include <qpe/config.h>
13#include <qpe/resource.h> 13#include <qpe/resource.h>
14 14
15#include <qlayout.h> 15#include <qlayout.h>
16#include <qwidget.h> 16#include <qwidget.h>
17#include <qdialog.h> 17#include <qdialog.h>
18#include <qtabwidget.h> 18#include <qtabwidget.h>
19#include <qvbox.h> 19#include <qvbox.h>
20#include <qgrid.h> 20#include <qgrid.h>
21#include <qgroupbox.h> 21#include <qgroupbox.h>
22#include <qlabel.h> 22#include <qlabel.h>
23#include <qcheckbox.h> 23#include <qcheckbox.h>
24#include <qsizepolicy.h> 24#include <qsizepolicy.h>
25#include <qpushbutton.h> 25#include <qpushbutton.h>
26#include <qlistbox.h> 26#include <qlistbox.h>
27#include <qstringlist.h> 27#include <qstringlist.h>
28#include <qtoolbutton.h> 28#include <qtoolbutton.h>
29#include <opie/ofiledialog.h> 29#include <opie2/ofiledialog.h>
30#include <opie/colordialog.h> 30#include <opie2/qcolordialog.h>
31#include <qdir.h> 31#include <qdir.h>
32#include <qfileinfo.h> 32#include <qfileinfo.h>
33#include "configdlg.h" 33#include "configdlg.h"
34#include "keyboard.h" 34#include "keyboard.h"
35 35
36using namespace Opie;
37using namespace Opie::Ui;
36// ConfigDlg::ConfigDlg() {{{1 38// ConfigDlg::ConfigDlg() {{{1
37ConfigDlg::ConfigDlg () : QDialog () 39ConfigDlg::ConfigDlg () : QDialog ()
38{ 40{
39 setCaption( tr("Multikey Configuration") ); 41 setCaption( tr("Multikey Configuration") );
40 Config config ("multikey"); 42 Config config ("multikey");
41 config.setGroup("keymaps"); 43 config.setGroup("keymaps");
42 QString current_map = config.readEntry("current", 0); 44 QString current_map = config.readEntry("current", 0);
43 45
44 /* 46 /*
45 * 'general config' tab 47 * 'general config' tab
46 */ 48 */
47 49
48 QVBoxLayout *base_lay = new QVBoxLayout(this); 50 QVBoxLayout *base_lay = new QVBoxLayout(this);
49 51
50 QTabWidget *tabs = new QTabWidget(this, "tabs"); 52 QTabWidget *tabs = new QTabWidget(this, "tabs");
51 53
52 QWidget *gen_box = new QWidget(tabs, "gen_tab"); 54 QWidget *gen_box = new QWidget(tabs, "gen_tab");
53 QVBoxLayout *gen_lay = new QVBoxLayout(gen_box); 55 QVBoxLayout *gen_lay = new QVBoxLayout(gen_box);
54 gen_lay->setMargin(3); 56 gen_lay->setMargin(3);
55 QGroupBox *map_group = new QGroupBox (2, Qt::Vertical, tr("Keymap File"), gen_box); 57 QGroupBox *map_group = new QGroupBox (2, Qt::Vertical, tr("Keymap File"), gen_box);
56 58
57 QHBox *hbox1 = new QHBox(map_group); 59 QHBox *hbox1 = new QHBox(map_group);
58 keymaps = new QListBox(hbox1); 60 keymaps = new QListBox(hbox1);
59 keymaps->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); 61 keymaps->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding));
60 QVBox *vbox1 = new QVBox(hbox1); 62 QVBox *vbox1 = new QVBox(hbox1);
61 63
62 QToolButton *tb1 = new QToolButton(vbox1, tr("Move Up")); 64 QToolButton *tb1 = new QToolButton(vbox1, tr("Move Up"));
63 tb1->setPixmap(Resource::loadPixmap("up")); 65 tb1->setPixmap(Resource::loadPixmap("up"));
64 tb1->setAutoRaise(TRUE); 66 tb1->setAutoRaise(TRUE);
65 tb1->setFocusPolicy(QWidget::NoFocus); 67 tb1->setFocusPolicy(QWidget::NoFocus);
66 tb1->setToggleButton(FALSE); 68 tb1->setToggleButton(FALSE);
67 connect(tb1, SIGNAL(clicked()), this, SLOT(moveSelectedUp())); 69 connect(tb1, SIGNAL(clicked()), this, SLOT(moveSelectedUp()));
68 70
69 QToolButton *tb2 = new QToolButton(vbox1, tr("Move Down")); 71 QToolButton *tb2 = new QToolButton(vbox1, tr("Move Down"));
70 tb2->setPixmap(Resource::loadPixmap("down")); 72 tb2->setPixmap(Resource::loadPixmap("down"));
71 tb2->setAutoRaise(TRUE); 73 tb2->setAutoRaise(TRUE);
72 tb2->setFocusPolicy(QWidget::NoFocus); 74 tb2->setFocusPolicy(QWidget::NoFocus);
73 tb2->setToggleButton(FALSE); 75 tb2->setToggleButton(FALSE);
74 connect(tb2, SIGNAL(clicked()), this, SLOT(moveSelectedDown())); 76 connect(tb2, SIGNAL(clicked()), this, SLOT(moveSelectedDown()));
75 77
76 QString cur(tr("Current Language")); 78 QString cur(tr("Current Language"));
77 keymaps->insertItem(cur); 79 keymaps->insertItem(cur);
78 keymaps->setSelected(0, true); 80 keymaps->setSelected(0, true);
79 81
80 QDir map_dir(QPEApplication::qpeDir() + "/share/multikey", "*.keymap"); 82 QDir map_dir(QPEApplication::qpeDir() + "/share/multikey", "*.keymap");
81 default_maps = map_dir.entryList(); // so i can access it in other places 83 default_maps = map_dir.entryList(); // so i can access it in other places
82 custom_maps = config.readListEntry("maps", QChar('|')); 84 custom_maps = config.readListEntry("maps", QChar('|'));
83 sw_maps = ConfigDlg::loadSw(); 85 sw_maps = ConfigDlg::loadSw();
@@ -390,117 +392,117 @@ void ConfigDlg::addMap() {
390 392
391 map_file.readLine(line, 1024); 393 map_file.readLine(line, 1024);
392 while (!map_file.atEnd()) { 394 while (!map_file.atEnd()) {
393 395
394 if (line.find(QRegExp("^title\\s*=\\s*")) != -1) { 396 if (line.find(QRegExp("^title\\s*=\\s*")) != -1) {
395 397
396 keymaps->insertItem(line.right(line.length() - line.find(QChar('=')) - 1).stripWhiteSpace()); 398 keymaps->insertItem(line.right(line.length() - line.find(QChar('=')) - 1).stripWhiteSpace());
397 found = 1; 399 found = 1;
398 break; 400 break;
399 } 401 }
400 map_file.readLine(line, 1024); 402 map_file.readLine(line, 1024);
401 } 403 }
402 if (!found) keymaps->insertItem(map); 404 if (!found) keymaps->insertItem(map);
403 405
404 map_file.close(); 406 map_file.close();
405 } 407 }
406 408
407 keymaps->setSelected(keymaps->count() - 1, true); 409 keymaps->setSelected(keymaps->count() - 1, true);
408} 410}
409 411
410// ConfigDlg::removeMap() {{{1 412// ConfigDlg::removeMap() {{{1
411void ConfigDlg::removeMap() { 413void ConfigDlg::removeMap() {
412 414
413 // move selection up one 415 // move selection up one
414 keymaps->setSelected(keymaps->currentItem() - 1, true); 416 keymaps->setSelected(keymaps->currentItem() - 1, true);
415 // delete the next selected item cus you just moved it up 417 // delete the next selected item cus you just moved it up
416 keymaps->removeItem(keymaps->currentItem() + 1); 418 keymaps->removeItem(keymaps->currentItem() + 1);
417 419
418 custom_maps.remove(sw_maps[keymaps->currentItem()]); 420 custom_maps.remove(sw_maps[keymaps->currentItem()]);
419 sw_maps.remove(sw_maps.at(keymaps->currentItem())); 421 sw_maps.remove(sw_maps.at(keymaps->currentItem()));
420} 422}
421 423
422/* ConfigDlg::slots for the color buttons {{{1 424/* ConfigDlg::slots for the color buttons {{{1
423 * 425 *
424 * these four slots are almost the same, except for the names. i was thinking 426 * these four slots are almost the same, except for the names. i was thinking
425 * of making a map with pointers to the buttons and names of the configEntry 427 * of making a map with pointers to the buttons and names of the configEntry
426 * so it could be one slot, but then there would be no way of telling which 428 * so it could be one slot, but then there would be no way of telling which
427 * of the buttons was clicked if they all connect to the same slot. 429 * of the buttons was clicked if they all connect to the same slot.
428 * 430 *
429 */ 431 */
430 432
431void ConfigDlg::keyColorClicked() { 433void ConfigDlg::keyColorClicked() {
432 434
433 Config config ("multikey"); 435 Config config ("multikey");
434 config.setGroup ("colors"); 436 config.setGroup ("colors");
435 437
436 QStringList color = config.readListEntry("keycolor", QChar(',')); 438 QStringList color = config.readListEntry("keycolor", QChar(','));
437 439
438 QColor newcolor = OColorDialog::getColor(QColor(color[0].toInt(), color[1].toInt(), color[2].toInt())); 440 QColor newcolor = QColorDialog::getColor(QColor(color[0].toInt(), color[1].toInt(), color[2].toInt()));
439 441
440 color[0].setNum(newcolor.red()); 442 color[0].setNum(newcolor.red());
441 color[1].setNum(newcolor.green()); 443 color[1].setNum(newcolor.green());
442 color[2].setNum(newcolor.blue()); 444 color[2].setNum(newcolor.blue());
443 445
444 config.writeEntry("keycolor", color, QChar(',')); 446 config.writeEntry("keycolor", color, QChar(','));
445 config.write(); 447 config.write();
446 448
447 keycolor_button->setPalette(QPalette(newcolor)); 449 keycolor_button->setPalette(QPalette(newcolor));
448 emit reloadKeyboard(); 450 emit reloadKeyboard();
449} 451}
450void ConfigDlg::keyColorPressedClicked() { 452void ConfigDlg::keyColorPressedClicked() {
451 453
452 Config config ("multikey"); 454 Config config ("multikey");
453 config.setGroup ("colors"); 455 config.setGroup ("colors");
454 456
455 QStringList color = config.readListEntry("keycolor_pressed", QChar(',')); 457 QStringList color = config.readListEntry("keycolor_pressed", QChar(','));
456 458
457 QColor newcolor = OColorDialog::getColor(QColor(color[0].toInt(), color[1].toInt(), color[2].toInt())); 459 QColor newcolor = QColorDialog::getColor(QColor(color[0].toInt(), color[1].toInt(), color[2].toInt()));
458 460
459 color[0].setNum(newcolor.red()); 461 color[0].setNum(newcolor.red());
460 color[1].setNum(newcolor.green()); 462 color[1].setNum(newcolor.green());
461 color[2].setNum(newcolor.blue()); 463 color[2].setNum(newcolor.blue());
462 464
463 config.writeEntry("keycolor_pressed", color, QChar(',')); 465 config.writeEntry("keycolor_pressed", color, QChar(','));
464 config.write(); 466 config.write();
465 467
466 keycolor_pressed_button->setPalette(QPalette(newcolor)); 468 keycolor_pressed_button->setPalette(QPalette(newcolor));
467 emit reloadKeyboard(); 469 emit reloadKeyboard();
468} 470}
469void ConfigDlg::keyColorLinesClicked() { 471void ConfigDlg::keyColorLinesClicked() {
470 472
471 Config config ("multikey"); 473 Config config ("multikey");
472 config.setGroup ("colors"); 474 config.setGroup ("colors");
473 475
474 QStringList color = config.readListEntry("keycolor_lines", QChar(',')); 476 QStringList color = config.readListEntry("keycolor_lines", QChar(','));
475 477
476 QColor newcolor = OColorDialog::getColor(QColor(color[0].toInt(), color[1].toInt(), color[2].toInt())); 478 QColor newcolor = QColorDialog::getColor(QColor(color[0].toInt(), color[1].toInt(), color[2].toInt()));
477 479
478 color[0].setNum(newcolor.red()); 480 color[0].setNum(newcolor.red());
479 color[1].setNum(newcolor.green()); 481 color[1].setNum(newcolor.green());
480 color[2].setNum(newcolor.blue()); 482 color[2].setNum(newcolor.blue());
481 483
482 config.writeEntry("keycolor_lines", color, QChar(',')); 484 config.writeEntry("keycolor_lines", color, QChar(','));
483 config.write(); 485 config.write();
484 486
485 keycolor_lines_button->setPalette(QPalette(newcolor)); 487 keycolor_lines_button->setPalette(QPalette(newcolor));
486 emit reloadKeyboard(); 488 emit reloadKeyboard();
487} 489}
488void ConfigDlg::textColorClicked() { 490void ConfigDlg::textColorClicked() {
489 491
490 Config config ("multikey"); 492 Config config ("multikey");
491 config.setGroup ("colors"); 493 config.setGroup ("colors");
492 494
493 QStringList color = config.readListEntry("textcolor", QChar(',')); 495 QStringList color = config.readListEntry("textcolor", QChar(','));
494 496
495 QColor newcolor = OColorDialog::getColor(QColor(color[0].toInt(), color[1].toInt(), color[2].toInt())); 497 QColor newcolor = QColorDialog::getColor(QColor(color[0].toInt(), color[1].toInt(), color[2].toInt()));
496 498
497 color[0].setNum(newcolor.red()); 499 color[0].setNum(newcolor.red());
498 color[1].setNum(newcolor.green()); 500 color[1].setNum(newcolor.green());
499 color[2].setNum(newcolor.blue()); 501 color[2].setNum(newcolor.blue());
500 502
501 config.writeEntry("textcolor", color, QChar(',')); 503 config.writeEntry("textcolor", color, QChar(','));
502 config.write(); 504 config.write();
503 505
504 textcolor_button->setPalette(QPalette(newcolor)); 506 textcolor_button->setPalette(QPalette(newcolor));
505 emit reloadKeyboard(); 507 emit reloadKeyboard();
506} 508}