]> git.tdb.fi Git - libs/gui.git/blobdiff - source/input/keyboard.h
Fill in more fields of DEVMODE to avoid a crash
[libs/gui.git] / source / input / keyboard.h
index 3e5b6b84131f8339364c69cd5199d3d5200cec01..8cd83f221c3cba317588ec35c4bf216cdb732cf9 100644 (file)
@@ -2,6 +2,7 @@
 #define MSP_INPUT_KEYBOARD_H_
 
 #include <msp/graphics/window.h>
+#include <msp/stringcodec/ustring.h>
 #include "device.h"
 
 namespace Msp {
@@ -13,16 +14,19 @@ are translated to platform-independent values.  See keys.h for a list.
 */
 class Keyboard: public Device
 {
+public:
+       sigc::signal<bool, StringCodec::unichar>::accumulated<EventAccumulator> signal_character;
+
 private:
-       Graphics::EventSource &source;
+       Graphics::Window &window;
 
 public:
-       Keyboard(Graphics::EventSource &);
+       Keyboard(Graphics::Window &);
+       virtual ~Keyboard();
 
        virtual std::string get_button_name(unsigned) const;
 private:
-       void key_press(unsigned, unsigned, unsigned);
-       void key_release(unsigned, unsigned);
+       void input_event(const Graphics::Window::Event &);
 };
 
 } // namespace Input