Skip to content

Commit

Permalink
Merge pull request #41866 from Qrox/input
Browse files Browse the repository at this point in the history
Switch to key code input on SDL: Part 1
  • Loading branch information
ZhilkinSerg committed Jul 28, 2020
2 parents 8a6de5b + bda19aa commit 7e17b10
Show file tree
Hide file tree
Showing 41 changed files with 1,434 additions and 955 deletions.
1,157 changes: 743 additions & 414 deletions data/raw/keybindings.json

Large diffs are not rendered by default.

76 changes: 38 additions & 38 deletions data/raw/keybindings/vehicle.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,265 +4,265 @@
"type": "keybinding",
"category": "VEHICLE",
"name": "Control multiple electronics",
"bindings": [ { "input_method": "keyboard", "key": "E" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "E" }, { "input_method": "keyboard_code", "key": "e", "mod": [ "shift" ] } ]
},
{
"id": "CONTROL_ENGINES",
"type": "keybinding",
"category": "VEHICLE",
"name": "Control individual engines",
"bindings": [ { "input_method": "keyboard", "key": "y" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "y" } ]
},
{
"id": "FOLD_VEHICLE",
"type": "keybinding",
"category": "VEHICLE",
"name": "Fold vehicle",
"bindings": [ { "input_method": "keyboard", "key": "f" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "f" } ]
},
{
"id": "RELEASE_CONTROLS",
"type": "keybinding",
"category": "VEHICLE",
"name": "Release controls",
"bindings": [ { "input_method": "keyboard", "key": "l" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "l" } ]
},
{
"id": "SOUND_HORN",
"type": "keybinding",
"category": "VEHICLE",
"name": "Sound horn",
"bindings": [ { "input_method": "keyboard", "key": "n" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "n" } ]
},
{
"id": "TOGGLE_AISLE_LIGHT",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle aisle lights",
"bindings": [ { "input_method": "keyboard", "key": "L" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "L" }, { "input_method": "keyboard_code", "key": "l", "mod": [ "shift" ] } ]
},
{
"id": "TOGGLE_ALARM",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle alarm",
"bindings": [ { "input_method": "keyboard", "key": "z" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "z" } ]
},
{
"id": "TOGGLE_ATOMIC_LIGHT",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle atomic lights",
"bindings": [ { "input_method": "keyboard", "key": "A" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "A" }, { "input_method": "keyboard_code", "key": "a", "mod": [ "shift" ] } ]
},
{
"id": "CONTROL_AUTOPILOT",
"type": "keybinding",
"category": "VEHICLE",
"name": "Control autopilot",
"bindings": [ { "input_method": "keyboard", "key": "a" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "a" } ]
},
{
"id": "TOGGLE_CAMERA",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle camera system",
"bindings": [ { "input_method": "keyboard", "key": "M" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "M" }, { "input_method": "keyboard_code", "key": "m", "mod": [ "shift" ] } ]
},
{
"id": "TOGGLE_CHIMES",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle chimes",
"bindings": [ { "input_method": "keyboard", "key": "i" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "i" } ]
},
{
"id": "TOGGLE_CRUISE_CONTROL",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle cruise control",
"bindings": [ { "input_method": "keyboard", "key": "c" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "c" } ]
},
{
"id": "TOGGLE_DOME_LIGHT",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle dome lights",
"bindings": [ { "input_method": "keyboard", "key": "d" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "d" } ]
},
{
"id": "TOGGLE_DOORS",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle doors",
"bindings": [ { "input_method": "keyboard", "key": "D" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "D" }, { "input_method": "keyboard_code", "key": "d", "mod": [ "shift" ] } ]
},
{
"id": "TOGGLE_ENGINE",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle engine",
"bindings": [ { "input_method": "keyboard", "key": "e" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "e" } ]
},
{
"id": "TOGGLE_FRIDGE",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle fridge",
"bindings": [ { "input_method": "keyboard", "key": "f" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "f" } ]
},
{
"id": "TOGGLE_FREEZER",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle freezer",
"bindings": [ { "input_method": "keyboard", "key": "r" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "r" } ]
},
{
"id": "TOGGLE_SPACE_HEATER",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle space heater",
"bindings": [ { "input_method": "keyboard", "key": "s" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "s" } ]
},
{
"id": "TOGGLE_COOLER",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle cooler",
"bindings": [ { "input_method": "keyboard", "key": "C" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "C" }, { "input_method": "keyboard_code", "key": "c", "mod": [ "shift" ] } ]
},
{
"id": "TOGGLE_HEADLIGHT",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle headlights",
"bindings": [ { "input_method": "keyboard", "key": "h" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "h" } ]
},
{
"id": "TOGGLE_WIDE_HEADLIGHT",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle wide-angle headlights",
"bindings": [ { "input_method": "keyboard", "key": "b" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "b" } ]
},
{
"id": "TOGGLE_HALF_OVERHEAD_LIGHT",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle directional overhead lights",
"bindings": [ { "input_method": "keyboard", "key": "O" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "O" }, { "input_method": "keyboard_code", "key": "o", "mod": [ "shift" ] } ]
},
{
"id": "TOGGLE_OVERHEAD_LIGHT",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle overhead lights",
"bindings": [ { "input_method": "keyboard", "key": "o" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "o" } ]
},
{
"id": "TOGGLE_PLANTER",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle planter",
"bindings": [ { "input_method": "keyboard", "key": "P" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "P" }, { "input_method": "keyboard_code", "key": "p", "mod": [ "shift" ] } ]
},
{
"id": "TOGGLE_PLOW",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle plow",
"bindings": [ { "input_method": "keyboard", "key": "w" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "w" } ]
},
{
"id": "TOGGLE_REACTOR",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle reactor",
"bindings": [ { "input_method": "keyboard", "key": "k" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "k" } ]
},
{
"id": "TOGGLE_REAPER",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle reaper",
"bindings": [ { "input_method": "keyboard", "key": "H" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "H" }, { "input_method": "keyboard_code", "key": "h", "mod": [ "shift" ] } ]
},
{
"id": "TOGGLE_RECHARGER",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle recharger",
"bindings": [ { "input_method": "keyboard", "key": "g" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "g" } ]
},
{
"id": "TOGGLE_SCOOP",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle scoop",
"bindings": [ { "input_method": "keyboard", "key": "S" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "S" }, { "input_method": "keyboard_code", "key": "s", "mod": [ "shift" ] } ]
},
{
"id": "TOGGLE_STEREO",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle stereo",
"bindings": [ { "input_method": "keyboard", "key": "m" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "m" } ]
},
{
"id": "TOGGLE_WATER_PURIFIER",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle water purifiers",
"bindings": [ { "input_method": "keyboard", "key": "p" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "p" } ]
},
{
"id": "TOGGLE_TRACKING",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle tracking",
"bindings": [ { "input_method": "keyboard", "key": "K" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "K" }, { "input_method": "keyboard_code", "key": "k", "mod": [ "shift" ] } ]
},
{
"id": "TOGGLE_SMART_ENGINE_CONTROLLER",
"type": "keybinding",
"category": "VEHICLE",
"name": "Toggle smart engine controller",
"bindings": [ { "input_method": "keyboard", "key": "Y" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "Y" }, { "input_method": "keyboard_code", "key": "y", "mod": [ "shift" ] } ]
},
{
"id": "TURRET_FIRE_MODE",
"type": "keybinding",
"category": "VEHICLE",
"name": "Set turret firing modes",
"bindings": [ { "input_method": "keyboard", "key": "x" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "x" } ]
},
{
"id": "TURRET_MANUAL_AIM",
"type": "keybinding",
"category": "VEHICLE",
"name": "Aim turrets manually",
"bindings": [ { "input_method": "keyboard", "key": "X" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "X" }, { "input_method": "keyboard_code", "key": "x", "mod": [ "shift" ] } ]
},
{
"id": "TURRET_MANUAL_OVERRIDE",
"type": "keybinding",
"category": "VEHICLE",
"name": "Aim automatic turrets",
"bindings": [ { "input_method": "keyboard", "key": "V" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "V" }, { "input_method": "keyboard_code", "key": "v", "mod": [ "shift" ] } ]
},
{
"id": "TURRET_SINGLE_FIRE",
"type": "keybinding",
"category": "VEHICLE",
"name": "Aim individual turret",
"bindings": [ { "input_method": "keyboard", "key": "T" } ]
"bindings": [ { "input_method": "keyboard_char", "key": "T" }, { "input_method": "keyboard_code", "key": "t", "mod": [ "shift" ] } ]
},
{
"id": "TURRET_TARGET_MODE",
"type": "keybinding",
"category": "VEHICLE",
"name": "Set turret targeting modes",
"bindings": [ { "input_method": "keyboard", "key": "t" } ]
"bindings": [ { "input_method": "keyboard_any", "key": "t" } ]
}
]
4 changes: 2 additions & 2 deletions src/action.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ std::vector<char> keys_bound_to( action_id act, const bool restrict_to_printable
action_id action_from_key( char ch )
{
input_context ctxt = get_default_mode_input_context();
const input_event event( ch, input_event_t::keyboard );
const input_event event( ch, input_event_t::keyboard_char );
const std::string &action = ctxt.input_to_action( event );
return look_up_action( action );
}
Expand Down Expand Up @@ -1025,7 +1025,7 @@ action_id handle_main_menu()

cata::optional<tripoint> choose_direction( const std::string &message, const bool allow_vertical )
{
input_context ctxt( "DEFAULTMODE" );
input_context ctxt( "DEFAULTMODE", keyboard_mode::keychar );
ctxt.set_iso( true );
ctxt.register_directions();
ctxt.register_action( "pause" );
Expand Down
3 changes: 0 additions & 3 deletions src/advanced_inv.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
#include "enums.h"
#include "game.h"
#include "game_constants.h"
#include "ime.h"
#include "input.h"
#include "inventory.h"
#include "item.h"
Expand Down Expand Up @@ -1594,8 +1593,6 @@ void advanced_inventory::display()
ui->mark_resize();
}

ime_sentry sentry;

do {
if( ui ) {
ui_manager::redraw();
Expand Down
4 changes: 2 additions & 2 deletions src/bionics_ui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ char get_free_invlet( player &p )
static void draw_bionics_titlebar( const catacurses::window &window, player *p,
bionic_menu_mode mode )
{
input_context ctxt( "BIONICS" );
input_context ctxt( "BIONICS", keyboard_mode::keychar );

werase( window );
std::string fuel_string;
Expand Down Expand Up @@ -611,7 +611,7 @@ void player::power_bionics()
bionic_menu_mode menu_mode = ACTIVATING;
int max_scroll_position = 0;

input_context ctxt( "BIONICS" );
input_context ctxt( "BIONICS", keyboard_mode::keychar );
ctxt.register_updown();
ctxt.register_action( "ANY_INPUT" );
ctxt.register_action( "TOGGLE_EXAMINE" );
Expand Down
2 changes: 1 addition & 1 deletion src/computer_session.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1572,7 +1572,7 @@ computer_session::ynq computer_session::query_ynq( const std::string &text, Args
const bool force_uc = get_option<bool>( "FORCE_CAPITAL_YN" );
const auto &allow_key = force_uc ? input_context::disallow_lower_case
: input_context::allow_all_keys;
input_context ctxt( "YESNOQUIT" );
input_context ctxt( "YESNOQUIT", keyboard_mode::keychar );
ctxt.register_action( "YES" );
ctxt.register_action( "NO" );
ctxt.register_action( "QUIT" );
Expand Down
2 changes: 1 addition & 1 deletion src/debug.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ void realDebugmsg( const char *filename, const char *line, const char *funcname,
} );

#if defined(__ANDROID__)
input_context ctxt( "DEBUG_MSG" );
input_context ctxt( "DEBUG_MSG", keyboard_mode::keychar );
ctxt.register_manual_key( 'C' );
ctxt.register_manual_key( 'I' );
ctxt.register_manual_key( ' ' );
Expand Down
Loading

0 comments on commit 7e17b10

Please sign in to comment.