]> git.lyx.org Git - lyx.git/blobdiff - src/KeySequence.cpp
start using FileName::exists()
[lyx.git] / src / KeySequence.cpp
index c13c41ecdfaf08c81665fafd7323111db7236864..fa354003eac3cd46391f34013a8880637aa9eba3 100644 (file)
 #include "KeyMap.h"
 #include "lfuns.h"
 
-#include "frontends/LyXKeySym.h"
-#include "frontends/LyXKeySymFactory.h"
-
-
-namespace lyx {
+#include "frontends/KeySymbol.h"
 
 using std::make_pair;
 using std::string;
 
 
-FuncRequest const &
-KeySequence::addkey(LyXKeySymPtr key,
-                   key_modifier::state mod, key_modifier::state nmod)
+namespace lyx {
+
+FuncRequest const & KeySequence::addkey(KeySymbol const & key,
+       KeyModifier mod, KeyModifier nmod)
 {
        // adding a key to a deleted sequence
        // starts a new sequence
@@ -58,8 +55,8 @@ size_t KeySequence::parse(string const & s)
                return 1;
 
        size_t i = 0;
-       key_modifier::state mod = key_modifier::none;
-       key_modifier::state nmod = key_modifier::none;
+       KeyModifier mod = NoModifier;
+       KeyModifier nmod = NoModifier;
 
        while (i < s.length()) {
                if (s[i] == ' ')
@@ -70,15 +67,15 @@ size_t KeySequence::parse(string const & s)
                if (i + 1 < s.length() && s[i + 1] == '-') {
                        switch (s[i]) {
                        case 's': case 'S':
-                               mod |= key_modifier::shift;
+                               mod |= ShiftModifier;
                                i += 2;
                                continue;
                        case 'c': case 'C':
-                               mod |= key_modifier::ctrl;
+                               mod |= ControlModifier;
                                i += 2;
                                continue;
                        case 'm': case 'M':
-                               mod |= key_modifier::alt;
+                               mod |= AltModifier;
                                i += 2;
                                continue;
                        default:
@@ -88,15 +85,15 @@ size_t KeySequence::parse(string const & s)
                           && s[i + 2] == '-') {
                        switch (s[i + 1]) {
                        case 's': case 'S':
-                               nmod |= key_modifier::shift;
+                               nmod |= ShiftModifier;
                                i += 3;
                                continue;
                        case 'c': case 'C':
-                               nmod |= key_modifier::ctrl;
+                               nmod |= ControlModifier;
                                i += 3;
                                continue;
                        case 'm': case 'M':
-                               nmod |= key_modifier::alt;
+                               nmod |= AltModifier;
                                i += 3;
                                continue;
                        default:
@@ -108,16 +105,16 @@ size_t KeySequence::parse(string const & s)
                        for (; j < s.length() && s[j] != ' '; ++j)
                                tbuf += s[j];    // (!!!check bounds :-)
 
-                       LyXKeySymPtr key(LyXKeySymFactory::create());
-                       key->init(tbuf);
+                       KeySymbol key;
+                       key.init(tbuf);
 
-                       if (!key->isOK())
+                       if (!key.isOK())
                                return j;
 
                        i = j;
 
                        addkey(key, mod, nmod);
-                       mod = key_modifier::none;
+                       mod = NoModifier;
                }
        }
 
@@ -136,10 +133,10 @@ docstring const KeySequence::print(bool forgui) const
 
        size_t const length = sequence.size();
 
-       for (size_t i = 0; i < length; ++i) {
-               buf += sequence[i]->print(modifiers[i].first, forgui);
+       for (size_t i = 0; i != length; ++i) {
+               buf += sequence[i].print(modifiers[i].first, forgui);
                // append a blank
-               if (i + 1 < length)
+               if (i + 1 != length)
                        buf += ' ';
        }
        return buf;
@@ -148,9 +145,7 @@ docstring const KeySequence::print(bool forgui) const
 
 docstring const KeySequence::printOptions(bool forgui) const
 {
-       docstring buf;
-
-       buf += print(forgui);
+       docstring buf = print(forgui);
 
        if (!curmap)
                return buf;
@@ -173,6 +168,7 @@ void KeySequence::reset()
        curmap = stdmap;
 }
 
+
 void KeySequence::clear()
 {
        sequence.clear();