-/* $Id$
-
-This file is part of libmspgbase
-Copyright © 2007 Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
-#include <msp/strings/formatter.h>
-#include "../gbase/display.h"
+#include <msp/graphics/window.h>
#include "keyboard.h"
+#include "keys.h"
namespace Msp {
namespace Input {
Keyboard::Keyboard(Graphics::Window &w):
window(w)
{
- name="Keyboard";
-
- buttons.resize(256, false);
-
- window.signal_key_press.connect(sigc::mem_fun(this, &Keyboard::key_press));
- window.signal_key_release.connect(sigc::mem_fun(this, &Keyboard::key_release));
-}
+ name = "Keyboard";
-std::string Keyboard::get_button_name(unsigned btn) const
-{
-#ifndef WIN32
- KeySym ksym=XKeycodeToKeysym(window.get_display().get_display(), btn, 0);
- return XKeysymToString(ksym);
-#else
- char buf[128];
- if(!GetKeyNameText(btn<<16, buf, sizeof(buf)))
- return format("Key %d", btn);
- return buf;
-#endif
-}
+ buttons.resize(N_KEYS_, false);
-void Keyboard::key_press(unsigned key, unsigned, unsigned)
-{
- set_button_state(key, true, true);
+ window.signal_input_event.connect(sigc::mem_fun(this, &Keyboard::input_event));
}
-void Keyboard::key_release(unsigned key, unsigned)
-{
- set_button_state(key, false, true);
-}
+Keyboard::~Keyboard()
+{ }
} // namespace Input
} // namespace Msp