- Added ability to explicitly execute a guiControl's console and altConsole command

- Fixed formatting of resolution strings for the internal values, allowing them to be properly parsed and applied by the options menu/canvas
- Fixed display of Display Device on option's menu
- Fixed Issue of it not displaying any keybinds in keyboard/gamepad options if there's only a single actionmap
- Added 'hold to scroll' action to optionsMenu
- Added apply button to options menu
- Added remap button to options menu when on keyboard/gamepad keybinds categories
- Fixed up the remap logic so remapping a key only unbinds the matched device being bound, so binds for different devices are untouched
- Made keybinds options properly refresh when keybinds are changed
- Shifted keyboard "go" keybind for menu nav from Enter to Space for easier use
- Removed stick keybinds from gamepad
This commit is contained in:
Areloch 2023-12-31 12:46:48 -06:00
parent f5ab97242f
commit 67ac556ecd
14 changed files with 223 additions and 95 deletions

View file

@ -225,23 +225,6 @@ function findRemapCmdIndex( %command )
return( -1 );
}
/// This unbinds actions beyond %count associated to the
/// particular actionMap %commmand.
function unbindExtraActions( %command, %actionMap, %count )
{
%temp = %actionMap.getBinding( %command );
if ( %temp $= "" )
return;
%count = getFieldCount( %temp ) - ( %count * 2 );
for ( %i = 0; %i < %count; %i += 2 )
{
%device = getField( %temp, %i + 0 );
%action = getField( %temp, %i + 1 );
%actionMap.unbind( %device, %action );
}
}
function redoMapping( %device, %actionMap, %action, %cmd, %oldIndex, %newIndex )
{