X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Finput%2Fkeys.h;h=ffa97e5e4d4e33dea3cb99c30d169a0f29d3900c;hb=3bb7bd5d99a71420b1dfa8d433f4f274bbe280fa;hp=9718f83dc94074c9b05cdbd2eafed253f3094c36;hpb=5add89fdd5e5e542ae0e93de2fe9d9b2532c1e07;p=libs%2Fgui.git diff --git a/source/input/keys.h b/source/input/keys.h index 9718f83..ffa97e5 100644 --- a/source/input/keys.h +++ b/source/input/keys.h @@ -1,18 +1,16 @@ -/* $Id$ - -This file is part of libmspgbase -Copyright © 2008, 2010 Mikko Rasa, Mikkosoft Productions -Distributed under the LGPL -*/ - #ifndef MSP_INPUT_KEYS_H_ #define MSP_INPUT_KEYS_H_ +#include +#include + namespace Msp { namespace Input { -enum +enum Key { + KEY_NONE = 0x00, + // Codes 0x01-0x7E reserved for ASCII KEY_BACKSPACE = 0x08, KEY_TAB = 0x09, @@ -142,23 +140,34 @@ enum KEY_PAUSE = 0xE0, KEY_PRINT_SCREEN, KEY_MENU, + KEY_BACK, + KEY_VOLUME_UP, + KEY_VOLUME_DOWN, N_KEYS_ = 0x100 }; -enum +enum MouseAxis { - MOD_SHIFT = 1, - MOD_CONTROL = 2, - MOD_ALT = 4, - MOD_SUPER = 8, - N_MODS_ = 4 + MOUSE_X_AXIS = 0, + MOUSE_Y_AXIS, }; -extern unsigned key_from_sys(unsigned); -extern unsigned key_to_sys(unsigned); +enum MouseButton +{ + MOUSE_LEFT = 1, + MOUSE_MIDDLE, + MOUSE_RIGHT, + MOUSE_WHEEL_UP, + MOUSE_WHEEL_DOWN +}; -extern unsigned mod_from_sys(unsigned); +MSPGUI_API void operator>>(const LexicalConverter &, Key &); +MSPGUI_API void operator<<(LexicalConverter &, Key); +MSPGUI_API void operator>>(const LexicalConverter &, MouseAxis &); +MSPGUI_API void operator<<(LexicalConverter &, MouseAxis); +MSPGUI_API void operator>>(const LexicalConverter &, MouseButton &); +MSPGUI_API void operator<<(LexicalConverter &, MouseButton); } // namespace Input } // namespace Msp