Menu-FN: Add support for gfx/shell/kb_def.lst and the menu option to reset

binds to mod defaults.
This commit is contained in:
Marco Cawthorne 2020-11-23 22:33:55 +01:00
parent a9d87aa590
commit 1bcaba26a3
1 changed files with 25 additions and 1 deletions

View File

@ -87,6 +87,30 @@ ctrl_sbcontrols_changed(int val)
ctrl_lbActBind2.SetScroll(val);
}
void
ctrl_btndefaults(void)
{
/* Parse the action list */
string sTemp;
filestream fs_def = fopen("gfx/shell/kb_def.lst", FILE_READ);
if (fs_def >= 0) {
localcmd("unbindall\n");
while ((sTemp = fgets(fs_def))) {
/* act upon valid entries */
if (tokenize_console(sTemp) == 2)
if (argv(1) == "+voicerecord")
localcmd(sprintf("bind \"%s\" \"+voip\"\n", argv(0)));
else
localcmd(sprintf("bind \"%s\" \"%s\"\n", argv(0), argv(1)));
}
fclose(fs_def);
} else {
error("Cannot parse gfx/shell/kb_def.lst!");
}
}
void
ctrl_lb_clicked(int val)
{
@ -156,7 +180,7 @@ menu_controls_init(void)
ctrl_btnDefaults = spawn(CMainButton);
ctrl_btnDefaults.SetImage(BTN_DEFAULTS);
//ctrl_btnDefaults.SetExecute(ctrl_btnok_start);
ctrl_btnDefaults.SetExecute(ctrl_btndefaults);
ctrl_btnDefaults.SetPos(50,140);
Widget_Add(fn_controls, ctrl_btnDefaults);