port: add extended options menu

as well as support for string literals in the menu system
This commit is contained in:
fgsfds committed 2023-10-28 05:33:09 +02:00
1 parent da7e1493a5
commit 015817f204
11 files changed
+831 -19

No files matched your search

+69
View File
@@ -407,6 +407,9 @@ static inline void inputLoadBinds(void)
void inputSaveConfig(void)
{
inputSaveBinds();
configSetFloat("Input.MouseSpeedX", mouseSensX);
configSetFloat("Input.MouseSpeedY", mouseSensY);
}
s32 inputInit(void)
@@ -646,11 +649,51 @@ void inputRumble(s32 idx, f32 strength, f32 time)
}
}
f32 inputRumbleGetStrength(void)
{
return rumbleScale;
}
void inputRumbleSetStrength(f32 val)
{
rumbleScale = val;
}
s32 inputControllerMask(void)
{
return connectedMask;
}
s32 inputControllerGetSticksSwapped(void)
{
return (axisMap[0][0] == SDL_CONTROLLER_AXIS_RIGHTX);
}
void inputControllerSetSticksSwapped(s32 swapped)
{
if (swapped) {
axisMap[0][0] = SDL_CONTROLLER_AXIS_RIGHTX;
axisMap[0][1] = SDL_CONTROLLER_AXIS_RIGHTY;
axisMap[1][0] = SDL_CONTROLLER_AXIS_LEFTX;
axisMap[1][1] = SDL_CONTROLLER_AXIS_LEFTY;
} else {
axisMap[0][0] = SDL_CONTROLLER_AXIS_LEFTX;
axisMap[0][1] = SDL_CONTROLLER_AXIS_LEFTY;
axisMap[1][0] = SDL_CONTROLLER_AXIS_RIGHTX;
axisMap[1][1] = SDL_CONTROLLER_AXIS_RIGHTY;
}
}
s32 inputControllerGetDualAnalog(void)
{
return !stickCButtons;
}
void inputControllerSetDualAnalog(s32 enable)
{
stickCButtons = !enable;
}
void inputKeyBind(s32 idx, u32 ck, s32 bind, u32 vk)
{
if (idx < 0 || idx >= INPUT_MAX_CONTROLLERS || bind >= MAX_BINDS || ck >= CK_TOTAL_COUNT) {
@@ -766,6 +809,32 @@ void inputMouseGetAbsScaledDelta(f32 *dx, f32 *dy)
if (dy) *dy = mdy;
}
void inputMouseGetSpeed(f32 *x, f32 *y)
{
*x = mouseSensX;
*y = mouseSensY;
}
void inputMouseSetSpeed(f32 x, f32 y)
{
mouseSensX = x;
mouseSensY = y;
}
s32 inputMouseIsEnabled(void)
{
return mouseEnabled;
}
void inputMouseEnable(s32 enabled)
{
mouseEnabled = !!enabled;
if (!mouseEnabled && mouseLocked) {
inputLockMouse(0);
}
}
const char *inputGetContKeyName(u32 ck)
{
if (ck >= CK_TOTAL_COUNT) {