// --------------------------------------------------------------
// Process buffered key events
// --------------------------------------------------------------
int DeltaGlider::clbkConsumeBufferedKey (DWORD key, bool down, char *kstate)
{
if (!down) return 0; // only process keydown events
if (Playback()) return 0; // don't allow manual user input during a playback
if (KEYMOD_SHIFT (kstate)) {
} else if (KEYMOD_CONTROL (kstate)) {
switch (key) {
case OAPI_KEY_SPACE: // open control dialog
oapiOpenDialogEx (g_Param.hDLL, IDD_CTRL, Ctrl_DlgProc, DLG_CAPTIONCLOSE, this);
return 1;
case OAPI_KEY_B:
RevertAirbrake ();
return 1;
}
} else {
switch (key) {
[COLOR="Red"]case OAPI_KEY_D: // "operate radiator"
RevertRadiator ();
return 1;[/COLOR]
case OAPI_KEY_G: // "operate landing gear"
RevertLandingGear ();
return 1;
case OAPI_KEY_K: // "operate docking port"
RevertDockingPort ();
return 1;
case OAPI_KEY_O: // "operate outer airlock"
RevertOuterAirlock ();
return 1;
}
}
return 0;
}