mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-18 07:49:19 +02:00
refactoring: application mode code split
This commit is contained in:
215
driverkeyboardinput.cpp
Normal file
215
driverkeyboardinput.cpp
Normal file
@@ -0,0 +1,215 @@
|
||||
/*
|
||||
This Source Code Form is subject to the
|
||||
terms of the Mozilla Public License, v.
|
||||
2.0. If a copy of the MPL was not
|
||||
distributed with this file, You can
|
||||
obtain one at
|
||||
http://mozilla.org/MPL/2.0/.
|
||||
*/
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "driverkeyboardinput.h"
|
||||
|
||||
bool
|
||||
driverkeyboard_input::init() {
|
||||
|
||||
default_bindings();
|
||||
|
||||
return recall_bindings();
|
||||
}
|
||||
|
||||
void
|
||||
driverkeyboard_input::default_bindings() {
|
||||
|
||||
m_bindingsetups = {
|
||||
{ user_command::aidriverenable, GLFW_KEY_Q | keymodifier::shift },
|
||||
{ user_command::aidriverdisable, GLFW_KEY_Q },
|
||||
{ user_command::mastercontrollerincrease, GLFW_KEY_KP_ADD },
|
||||
{ user_command::mastercontrollerincreasefast, GLFW_KEY_KP_ADD | keymodifier::shift },
|
||||
{ user_command::mastercontrollerdecrease, GLFW_KEY_KP_SUBTRACT },
|
||||
{ user_command::mastercontrollerdecreasefast, GLFW_KEY_KP_SUBTRACT | keymodifier::shift },
|
||||
// mastercontrollerset,
|
||||
{ user_command::secondcontrollerincrease, GLFW_KEY_KP_DIVIDE },
|
||||
{ user_command::secondcontrollerincreasefast, GLFW_KEY_KP_DIVIDE | keymodifier::shift },
|
||||
{ user_command::secondcontrollerdecrease, GLFW_KEY_KP_MULTIPLY },
|
||||
{ user_command::secondcontrollerdecreasefast, GLFW_KEY_KP_MULTIPLY | keymodifier::shift },
|
||||
// secondcontrollerset,
|
||||
{ user_command::mucurrentindicatorothersourceactivate, GLFW_KEY_Z | keymodifier::shift },
|
||||
{ user_command::independentbrakeincrease, GLFW_KEY_KP_1 },
|
||||
{ user_command::independentbrakeincreasefast, GLFW_KEY_KP_1 | keymodifier::shift },
|
||||
{ user_command::independentbrakedecrease, GLFW_KEY_KP_7 },
|
||||
{ user_command::independentbrakedecreasefast, GLFW_KEY_KP_7 | keymodifier::shift },
|
||||
// independentbrakeset,
|
||||
{ user_command::independentbrakebailoff, GLFW_KEY_KP_4 },
|
||||
{ user_command::trainbrakeincrease, GLFW_KEY_KP_3 },
|
||||
{ user_command::trainbrakedecrease, GLFW_KEY_KP_9 },
|
||||
// trainbrakeset,
|
||||
{ user_command::trainbrakecharging, GLFW_KEY_KP_DECIMAL },
|
||||
{ user_command::trainbrakerelease, GLFW_KEY_KP_6 },
|
||||
{ user_command::trainbrakefirstservice, GLFW_KEY_KP_8 },
|
||||
{ user_command::trainbrakeservice, GLFW_KEY_KP_5 },
|
||||
{ user_command::trainbrakefullservice, GLFW_KEY_KP_2 },
|
||||
{ user_command::trainbrakehandleoff, GLFW_KEY_KP_5 | keymodifier::control },
|
||||
{ user_command::trainbrakeemergency, GLFW_KEY_KP_0 },
|
||||
{ user_command::trainbrakebasepressureincrease, GLFW_KEY_KP_3 | keymodifier::control },
|
||||
{ user_command::trainbrakebasepressuredecrease, GLFW_KEY_KP_9 | keymodifier::control },
|
||||
{ user_command::trainbrakebasepressurereset, GLFW_KEY_KP_6 | keymodifier::control },
|
||||
{ user_command::trainbrakeoperationtoggle, GLFW_KEY_KP_4 | keymodifier::control },
|
||||
{ user_command::manualbrakeincrease, GLFW_KEY_KP_1 | keymodifier::control },
|
||||
{ user_command::manualbrakedecrease, GLFW_KEY_KP_7 | keymodifier::control },
|
||||
{ user_command::alarmchaintoggle, GLFW_KEY_B | keymodifier::shift | keymodifier::control },
|
||||
{ user_command::wheelspinbrakeactivate, GLFW_KEY_KP_ENTER },
|
||||
{ user_command::sandboxactivate, GLFW_KEY_S },
|
||||
{ user_command::reverserincrease, GLFW_KEY_D },
|
||||
{ user_command::reverserdecrease, GLFW_KEY_R },
|
||||
// reverserforwardhigh,
|
||||
// reverserforward,
|
||||
// reverserneutral,
|
||||
// reverserbackward,
|
||||
{ user_command::waterpumpbreakertoggle, GLFW_KEY_W | keymodifier::control },
|
||||
// waterpumpbreakerclose,
|
||||
// waterpumpbreakeropen,
|
||||
{ user_command::waterpumptoggle, GLFW_KEY_W },
|
||||
// waterpumpenable,
|
||||
// waterpumpdisable,
|
||||
{ user_command::waterheaterbreakertoggle, GLFW_KEY_W | keymodifier::control | keymodifier::shift },
|
||||
// waterheaterbreakerclose,
|
||||
// waterheaterbreakeropen,
|
||||
{ user_command::waterheatertoggle, GLFW_KEY_W | keymodifier::shift },
|
||||
// waterheaterenable,
|
||||
// waterheaterdisable,
|
||||
{ user_command::watercircuitslinktoggle, GLFW_KEY_H | keymodifier::shift },
|
||||
// watercircuitslinkenable,
|
||||
// watercircuitslinkdisable,
|
||||
{ user_command::fuelpumptoggle, GLFW_KEY_F },
|
||||
// fuelpumpenable,
|
||||
// fuelpumpdisable,
|
||||
{ user_command::oilpumptoggle, GLFW_KEY_F | keymodifier::shift },
|
||||
// oilpumpenable,
|
||||
// oilpumpdisable,
|
||||
{ user_command::linebreakertoggle, GLFW_KEY_M },
|
||||
// linebreakeropen,
|
||||
// linebreakerclose,
|
||||
{ user_command::convertertoggle, GLFW_KEY_X },
|
||||
// converterenable,
|
||||
// converterdisable,
|
||||
{ user_command::convertertogglelocal, GLFW_KEY_X | keymodifier::shift },
|
||||
{ user_command::converteroverloadrelayreset, GLFW_KEY_N | keymodifier::control },
|
||||
{ user_command::compressortoggle, GLFW_KEY_C },
|
||||
// compressorenable,
|
||||
// compressordisable,
|
||||
{ user_command::compressortogglelocal, GLFW_KEY_C | keymodifier::shift },
|
||||
{ user_command::motoroverloadrelaythresholdtoggle, GLFW_KEY_F },
|
||||
// motoroverloadrelaythresholdsetlow,
|
||||
// motoroverloadrelaythresholdsethigh,
|
||||
{ user_command::motoroverloadrelayreset, GLFW_KEY_N },
|
||||
{ user_command::notchingrelaytoggle, GLFW_KEY_G },
|
||||
{ user_command::epbrakecontroltoggle, GLFW_KEY_Z | keymodifier::control },
|
||||
{ user_command::trainbrakeoperationmodeincrease, GLFW_KEY_KP_2 | keymodifier::control },
|
||||
{ user_command::trainbrakeoperationmodedecrease, GLFW_KEY_KP_8 | keymodifier::control },
|
||||
{ user_command::brakeactingspeedincrease, GLFW_KEY_B | keymodifier::shift },
|
||||
{ user_command::brakeactingspeeddecrease, GLFW_KEY_B },
|
||||
// brakeactingspeedsetcargo,
|
||||
// brakeactingspeedsetpassenger,
|
||||
// brakeactingspeedsetrapid,
|
||||
{ user_command::brakeloadcompensationincrease, GLFW_KEY_H | keymodifier::shift | keymodifier::control },
|
||||
{ user_command::brakeloadcompensationdecrease, GLFW_KEY_H | keymodifier::control },
|
||||
{ user_command::mubrakingindicatortoggle, GLFW_KEY_L | keymodifier::shift },
|
||||
{ user_command::alerteracknowledge, GLFW_KEY_SPACE },
|
||||
{ user_command::hornlowactivate, GLFW_KEY_A },
|
||||
{ user_command::hornhighactivate, GLFW_KEY_S },
|
||||
{ user_command::whistleactivate, GLFW_KEY_Z },
|
||||
{ user_command::radiotoggle, GLFW_KEY_R | keymodifier::control },
|
||||
{ user_command::radiochannelincrease, GLFW_KEY_R | keymodifier::shift },
|
||||
{ user_command::radiochanneldecrease, GLFW_KEY_R },
|
||||
{ user_command::radiostopsend, GLFW_KEY_PAUSE | keymodifier::shift | keymodifier::control },
|
||||
{ user_command::radiostoptest, GLFW_KEY_R | keymodifier::shift | keymodifier::control },
|
||||
{ user_command::cabchangeforward, GLFW_KEY_HOME },
|
||||
{ user_command::cabchangebackward, GLFW_KEY_END },
|
||||
// viewturn,
|
||||
// movehorizontal,
|
||||
// movehorizontalfast,
|
||||
// movevertical,
|
||||
// moveverticalfast,
|
||||
{ user_command::moveleft, GLFW_KEY_LEFT },
|
||||
{ user_command::moveright, GLFW_KEY_RIGHT },
|
||||
{ user_command::moveforward, GLFW_KEY_UP },
|
||||
{ user_command::moveback, GLFW_KEY_DOWN },
|
||||
{ user_command::moveup, GLFW_KEY_PAGE_UP },
|
||||
{ user_command::movedown, GLFW_KEY_PAGE_DOWN },
|
||||
{ user_command::carcouplingincrease, GLFW_KEY_INSERT },
|
||||
{ user_command::carcouplingdisconnect, GLFW_KEY_DELETE },
|
||||
{ user_command::doortoggleleft, GLFW_KEY_COMMA },
|
||||
{ user_command::doortoggleright, GLFW_KEY_PERIOD },
|
||||
{ user_command::departureannounce, GLFW_KEY_SLASH },
|
||||
{ user_command::doorlocktoggle, GLFW_KEY_S | keymodifier::shift },
|
||||
{ user_command::pantographcompressorvalvetoggle, GLFW_KEY_V | keymodifier::control },
|
||||
{ user_command::pantographcompressoractivate, GLFW_KEY_V | keymodifier::shift },
|
||||
{ user_command::pantographtogglefront, GLFW_KEY_P },
|
||||
{ user_command::pantographtogglerear, GLFW_KEY_O },
|
||||
// pantographraisefront,
|
||||
// pantographraiserear,
|
||||
// pantographlowerfront,
|
||||
// pantographlowerrear,
|
||||
{ user_command::pantographlowerall, GLFW_KEY_P | keymodifier::control },
|
||||
{ user_command::heatingtoggle, GLFW_KEY_H },
|
||||
// heatingenable,
|
||||
// heatingdisable,
|
||||
{ user_command::lightspresetactivatenext, GLFW_KEY_T | keymodifier::shift },
|
||||
{ user_command::lightspresetactivateprevious, GLFW_KEY_T },
|
||||
{ user_command::headlighttoggleleft, GLFW_KEY_Y },
|
||||
// headlightenableleft,
|
||||
// headlightdisableleft,
|
||||
{ user_command::headlighttoggleright, GLFW_KEY_I },
|
||||
// headlightenableright,
|
||||
// headlightdisableright,
|
||||
{ user_command::headlighttoggleupper, GLFW_KEY_U },
|
||||
// headlightenableupper,
|
||||
// headlightdisableupper,
|
||||
{ user_command::redmarkertoggleleft, GLFW_KEY_Y | keymodifier::shift },
|
||||
// redmarkerenableleft,
|
||||
// redmarkerdisableleft,
|
||||
{ user_command::redmarkertoggleright, GLFW_KEY_I | keymodifier::shift },
|
||||
// redmarkerenableright,
|
||||
// redmarkerdisableright,
|
||||
{ user_command::headlighttogglerearleft, GLFW_KEY_Y | keymodifier::control },
|
||||
{ user_command::headlighttogglerearright, GLFW_KEY_I | keymodifier::control },
|
||||
{ user_command::headlighttogglerearupper, GLFW_KEY_U | keymodifier::control },
|
||||
{ user_command::redmarkertogglerearleft, GLFW_KEY_Y | keymodifier::control | keymodifier::shift },
|
||||
{ user_command::redmarkertogglerearright, GLFW_KEY_I | keymodifier::control | keymodifier::shift },
|
||||
{ user_command::redmarkerstoggle, GLFW_KEY_E | keymodifier::shift },
|
||||
{ user_command::endsignalstoggle, GLFW_KEY_E },
|
||||
{ user_command::headlightsdimtoggle, GLFW_KEY_L | keymodifier::control },
|
||||
// headlightsdimenable,
|
||||
// headlightsdimdisable,
|
||||
{ user_command::motorconnectorsopen, GLFW_KEY_L },
|
||||
// motorconnectorsclose,
|
||||
{ user_command::motordisconnect, GLFW_KEY_E | keymodifier::control },
|
||||
{ user_command::interiorlighttoggle, GLFW_KEY_APOSTROPHE },
|
||||
// interiorlightenable,
|
||||
// interiorlightdisable,
|
||||
{ user_command::interiorlightdimtoggle, GLFW_KEY_APOSTROPHE | keymodifier::control },
|
||||
// interiorlightdimenable,
|
||||
// interiorlightdimdisable,
|
||||
{ user_command::instrumentlighttoggle, GLFW_KEY_SEMICOLON },
|
||||
// instrumentlightenable,
|
||||
// instrumentlightdisable,
|
||||
{ user_command::generictoggle0, GLFW_KEY_0 },
|
||||
{ user_command::generictoggle1, GLFW_KEY_1 },
|
||||
{ user_command::generictoggle2, GLFW_KEY_2 },
|
||||
{ user_command::generictoggle3, GLFW_KEY_3 },
|
||||
{ user_command::generictoggle4, GLFW_KEY_4 },
|
||||
{ user_command::generictoggle5, GLFW_KEY_5 },
|
||||
{ user_command::generictoggle6, GLFW_KEY_6 },
|
||||
{ user_command::generictoggle7, GLFW_KEY_7 },
|
||||
{ user_command::generictoggle8, GLFW_KEY_8 },
|
||||
{ user_command::generictoggle9, GLFW_KEY_9 },
|
||||
{ user_command::batterytoggle, GLFW_KEY_J },
|
||||
// batteryenable,
|
||||
// batterydisable,
|
||||
};
|
||||
|
||||
bind();
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
Reference in New Issue
Block a user