Added MultiTap support

This commit is contained in:
Curtis S
2011-10-05 22:58:04 -06:00
committed by Chris Forbes
parent 5ced7e270c
commit 9fdfca6ee5
5 changed files with 144 additions and 8 deletions

View File

@@ -70,7 +70,7 @@ namespace OpenRA.Renderer.SdlCommon
lastButtonBits |= button;
inputHandler.OnMouseInput( new MouseInput(
MouseInputEvent.Down, button, new int2( e.button.x, e.button.y ), mods ) );
MouseInputEvent.Down, button, new int2( e.button.x, e.button.y ), mods, 1 ) );
} break;
case Sdl.SDL_MOUSEBUTTONUP:
@@ -84,8 +84,11 @@ namespace OpenRA.Renderer.SdlCommon
var button = MakeButton( e.button.button );
lastButtonBits &= ~button;
MultiTapDetection.DetectFromMouse( e.button.button, new int2( e.button.x , e.button.y ) );
inputHandler.OnMouseInput( new MouseInput(
MouseInputEvent.Up, button, new int2( e.button.x, e.button.y ), mods ) );
MouseInputEvent.Up, button, new int2( e.button.x, e.button.y ), mods,
MultiTapDetection.MouseButtonTapsCounted ) );
} break;
case Sdl.SDL_MOUSEMOTION:
@@ -94,7 +97,7 @@ namespace OpenRA.Renderer.SdlCommon
MouseInputEvent.Move,
lastButtonBits,
new int2( e.motion.x, e.motion.y ),
mods );
mods, 0 );
} break;
case Sdl.SDL_KEYDOWN:
@@ -123,6 +126,14 @@ namespace OpenRA.Renderer.SdlCommon
VirtKey = e.key.keysym.sym
};
MultiTapDetection.DetectFromKeyboard( Sdl.SDL_GetKeyName( e.key.keysym.sym ) );
if ( MultiTapDetection.MultiTapDetected )
{
keyEvent.KeyName = MultiTapDetection.VirtualKeyNameOfDetectedMultiTap;
// More info-changes here.
}
inputHandler.OnKeyInput( keyEvent );
} break;
}