]> git.lyx.org Git - lyx.git/blobdiff - src/kbmap.C
Dekel's patch -- I didn't fix the xforms-0.88 keysyms stuff so it still doesn't finis...
[lyx.git] / src / kbmap.C
index 8c11970cdb43809b93d30bcd911e636546254b35..68cde51c6a779bf80b28a777c55d711deedb35d0 100644 (file)
@@ -21,6 +21,8 @@
 #include "kbsequence.h"
 #include "debug.h"
 
+using std::endl;
+
 // The only modifiers that we handle. We want to throw away things
 // like NumLock. 
 enum { ModsMask = ShiftMask | ControlMask | Mod1Mask };
@@ -170,14 +172,15 @@ int kb_keymap::defkey(kb_sequence * seq, int action, int idx /*= 0*/)
        unsigned int modmsk = seq->modifiers[idx];
 
        // --- check if key is already there --------------------------------
-       if (table.size() != 0) // without this I get strange crashes
-       for (Table::iterator it = table.begin(); it != table.end(); ++it) {
+       if (table.size() != 0) { // without this I get strange crashes
+               Table::iterator end = table.end();
+       for (Table::iterator it = table.begin(); it != end; ++it) {
                if (code == (*it).code && modmsk == (*it).mod) {
                        // overwrite binding
                        if (idx + 1 == seq->length) {
                                string buf;
                                seq->print(buf, true);
-                               lyxerr[Debug::KEY]
+                               lyxerr[Debug::KBMAP]
                                        << "Warning: New binding for '"
                                        << buf
                                        << "' is overriding old binding..."
@@ -201,7 +204,8 @@ int kb_keymap::defkey(kb_sequence * seq, int action, int idx /*= 0*/)
                        }
                }
        }
-
+       }
+       
        Table::iterator newone = table.insert(table.end(), kb_key());
        (*newone).code = code;
        (*newone).mod = modmsk;
@@ -227,7 +231,8 @@ int kb_keymap::defkey(kb_sequence * seq, int action, int idx /*= 0*/)
 kb_keymap::~kb_keymap()
 {
        // This could be done by a destructor in kb_key.
-       for(Table::iterator it = table.begin(); it != table.end(); ++it) {
+       Table::iterator end = table.end();
+       for(Table::iterator it = table.begin(); it != end; ++it) {
                delete (*it).table;
        }
 }
@@ -247,8 +252,9 @@ string kb_keymap::findbinding(int act) const
        string res;
        if (table.empty()) return res;
 
+       Table::const_iterator end = table.end();
        for(Table::const_iterator cit = table.begin();
-           cit != table.end(); ++cit) {
+           cit != end; ++cit) {
                if ((*cit).table) {
                        string suffix = (*cit).table->findbinding(act);
                        suffix = strip(suffix, ' ');