summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-console/keytrans.cpp
Unidiff
Diffstat (limited to 'noncore/apps/opie-console/keytrans.cpp') (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/opie-console/keytrans.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/noncore/apps/opie-console/keytrans.cpp b/noncore/apps/opie-console/keytrans.cpp
index d569ae0..5ea192e 100644
--- a/noncore/apps/opie-console/keytrans.cpp
+++ b/noncore/apps/opie-console/keytrans.cpp
@@ -606,60 +606,63 @@ void KeyTransSymbols::defKeySyms()
606 defKeySym("Underscore", Qt::Key_Underscore ); 606 defKeySym("Underscore", Qt::Key_Underscore );
607 defKeySym("QuoteLeft", Qt::Key_QuoteLeft ); 607 defKeySym("QuoteLeft", Qt::Key_QuoteLeft );
608 defKeySym("BraceLeft", Qt::Key_BraceLeft ); 608 defKeySym("BraceLeft", Qt::Key_BraceLeft );
609 defKeySym("Bar", Qt::Key_Bar ); 609 defKeySym("Bar", Qt::Key_Bar );
610 defKeySym("BraceRight", Qt::Key_BraceRight ); 610 defKeySym("BraceRight", Qt::Key_BraceRight );
611 defKeySym("AsciiTilde", Qt::Key_AsciiTilde ); 611 defKeySym("AsciiTilde", Qt::Key_AsciiTilde );
612} 612}
613 613
614KeyTransSymbols::KeyTransSymbols() 614KeyTransSymbols::KeyTransSymbols()
615{ 615{
616 defModSyms(); 616 defModSyms();
617 defOprSyms(); 617 defOprSyms();
618 defKeySyms(); 618 defKeySyms();
619} 619}
620 620
621// Global material ----------------------------------------------------------- 621// Global material -----------------------------------------------------------
622 622
623static int keytab_serial = 0; //FIXME: remove,localize 623static int keytab_serial = 0; //FIXME: remove,localize
624 624
625static QIntDict<KeyTrans> * numb2keymap = 0L; 625static QIntDict<KeyTrans> * numb2keymap = 0L;
626static QDict<KeyTrans> * path2keymap = 0L; 626static QDict<KeyTrans> * path2keymap = 0L;
627 627
628KeyTrans* KeyTrans::find(int numb) 628KeyTrans* KeyTrans::find(int numb)
629{ 629{
630 loadAll();
630 KeyTrans* res = numb2keymap->find(numb); 631 KeyTrans* res = numb2keymap->find(numb);
631 return res ? res : numb2keymap->find(0); 632 return res ? res : numb2keymap->find(0);
632} 633}
633 634
634KeyTrans* KeyTrans::find(const char* path) 635KeyTrans* KeyTrans::find(const char* path)
635{ 636{
637 loadAll();
636 KeyTrans* res = path2keymap->find(path); 638 KeyTrans* res = path2keymap->find(path);
637 return res ? res : numb2keymap->find(0); 639 return res ? res : numb2keymap->find(0);
638} 640}
639 641
640int KeyTrans::count() 642int KeyTrans::count()
641{ 643{
644 loadAll();
642 return numb2keymap->count(); 645 return numb2keymap->count();
643} 646}
644 647
645void KeyTrans::addKeyTrans() 648void KeyTrans::addKeyTrans()
646{ 649{
647 this->numb = keytab_serial ++; 650 this->numb = keytab_serial ++;
648 numb2keymap->insert(numb,this); 651 numb2keymap->insert(numb,this);
649 path2keymap->insert(path,this); 652 path2keymap->insert(path,this);
650} 653}
651 654
652void KeyTrans::loadAll() 655void KeyTrans::loadAll()
653{ 656{
654 if (!numb2keymap) 657 if (!numb2keymap)
655 numb2keymap = new QIntDict<KeyTrans>; 658 numb2keymap = new QIntDict<KeyTrans>;
656 if (!path2keymap) 659 if (!path2keymap)
657 path2keymap = new QDict<KeyTrans>; 660 path2keymap = new QDict<KeyTrans>;
658 if (!syms) 661 if (!syms)
659 syms = new KeyTransSymbols; 662 syms = new KeyTransSymbols;
660 663
661 defaultKeyTrans()->addKeyTrans(); 664 defaultKeyTrans()->addKeyTrans();
662 665
663 666
664 QString path = QPEApplication::qpeDir() + "etc/keytabs"; 667 QString path = QPEApplication::qpeDir() + "etc/keytabs";
665 QDir dir(path); 668 QDir dir(path);