proper keydown/keyup handlers

This commit is contained in:
Chris Forbes
2010-07-15 20:12:57 +12:00
parent 071c790097
commit ea825ff2b5
2 changed files with 34 additions and 31 deletions

View File

@@ -225,28 +225,29 @@ namespace OpenRA.GlRenderer
case Sdl.SDL_KEYDOWN:
{
bool handled = true;
var keyEvent = new KeyInput
{
Modifiers = mods,
KeyChar = (char) e.key.keysym.unicode,
KeyName = Sdl.SDL_GetKeyName( e.key.keysym.sym )
KeyName = Sdl.SDL_GetKeyName( e.key.keysym.sym ),
VirtKey = e.key.keysym.sym
};
if (!HandleSpecialKey(keyEvent))
Game.HandleKeyPress(keyEvent);
Game.HandleKeyDown(keyEvent);
} break;
case Sdl.SDL_KEYUP:
{
switch (e.key.keysym.sym)
var keyEvent = new KeyInput
{
case Sdl.SDLK_UP: Game.HandleArrowKeyScroll("up", false); break;
case Sdl.SDLK_LEFT: Game.HandleArrowKeyScroll("left", false); break;
case Sdl.SDLK_DOWN: Game.HandleArrowKeyScroll("down", false); break;
case Sdl.SDLK_RIGHT: Game.HandleArrowKeyScroll("right", false); break;
}
Modifiers = mods,
KeyChar = (char) e.key.keysym.unicode,
KeyName = Sdl.SDL_GetKeyName( e.key.keysym.sym ),
VirtKey = e.key.keysym.sym
};
Game.HandleKeyUp(keyEvent);
} break;
}
}