AppleWin/source/frontends/qapple/gamepadpaddle.cpp
Andrea Odetti 348ba1ecd9 Use QGamepad in QApple.
This requires an interface as napple uses libevdev.


Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00

38 lines
659 B
C++

#include "gamepadpaddle.h"
GamepadPaddle::GamepadPaddle(const std::shared_ptr<QGamepad> & gamepad) : myGamepad(gamepad)
{
}
bool GamepadPaddle::getButton(int i) const
{
switch (i)
{
case 0:
return myGamepad->buttonA();
case 1:
return myGamepad->buttonB();
default:
return 0;
}
}
int GamepadPaddle::getAxis(int i) const
{
double value;
switch (i)
{
case 0:
value = myGamepad->axisLeftX();
break;
case 1:
value = myGamepad->axisLeftY();
break;
default:
value = 0.0;
}
const int pdl = int((value + 1.0) / 2.0 * 255.0);
return pdl;
}