fixed string problems
authorPatrik Gornicz <Gornicz.P@gmail.com>
Tue, 23 Sep 2008 01:28:06 +0000 (21:28 -0400)
committerPatrik Gornicz <Gornicz.P@gmail.com>
Tue, 23 Sep 2008 01:28:06 +0000 (21:28 -0400)
src/config/keys.h
src/config/reader.cpp

index 49fe66f..31dfcdd 100644 (file)
 
 #include "../debug.h"
 
-class comparestrings
-{
-  public:
-    bool operator()
-    (
-        const std::string& a,
-        const std::string& b
-    )
-    {
-        cout << a << endl;
-        cout << b << endl;
-        cout << endl;
-
-        return a.compare(b) < 0;
-    }
-};
-
 /// ***** Header Methods *****
 namespace key
 {
@@ -51,7 +34,7 @@ namespace key
     extern SDLKey follow;
     extern SDLKey well;
 
-    typedef std::map<std::string, SDLKey*, comparestrings> inputMap;
+    typedef std::map<std::string, SDLKey*> inputMap;
 
     extern inputMap sdlMap;
 
index c42e50d..4e27d93 100644 (file)
@@ -27,7 +27,7 @@
 using std::ifstream;
 using std::string;
 
-typedef std::map<string, SDLKey, comparestrings> kMap;
+typedef std::map<string, SDLKey> kMap;
 kMap keyMap;
 
 /// ***** Private Method Headers *****
@@ -201,17 +201,26 @@ bool extractLine(const string& str, string* name, string* value)
 
 void createKeyMap()
 {
+    char buf[2] = {0,0};
+
     // add all the letters
     for (int i = 'A'; i <= 'Z'; i++)   // uppercase
-        keyMap["" + (char)i] = (SDLKey)i;
+    {
+        buf[0] = (char)i;
+        keyMap[buf] = (SDLKey)i;
+    }
     for (int i = 'a'; i <= 'z'; i++)   // lowercase
-        keyMap["" + (char)i] = (SDLKey)i;
+    {
+        buf[0] = (char)i;
+        keyMap[buf] = (SDLKey)i;
+    }
 
     // add all the numbers
     for (int i = '0'; i <= '9'; i++)
-        keyMap["" + (char)i] = (SDLKey)i;
-
-    keyMap["k"] = (SDLKey)'k';
+    {
+        buf[0] = (char)i;
+        keyMap[buf] = (SDLKey)i;
+    }
 
     /*
     // add the function keys
@@ -287,7 +296,4 @@ void createKeyMap()
     keyMap["Down"]          = SDLK_DOWN;
     keyMap["Left"]          = SDLK_LEFT;
     keyMap["Right"]         = SDLK_RIGHT;
-
-    cout << "done" << endl;
-    cout << keyMap["k"] << endl;
 }