1 #ifndef DIALOG_SETTINGS_INPUT_USERBIND_H
2 #define DIALOG_SETTINGS_INPUT_USERBIND_H
3 CLASS(XonoticUserbindEditDialog, XonoticDialog)
4 METHOD(XonoticUserbindEditDialog, loadUserBind, void(entity, string, string, string))
5 METHOD(XonoticUserbindEditDialog, fill, void(entity))
6 ATTRIB(XonoticUserbindEditDialog, title, string, _("User defined key bind"))
7 ATTRIB(XonoticUserbindEditDialog, color, vector, SKINCOLOR_DIALOG_USERBIND)
8 ATTRIB(XonoticUserbindEditDialog, intendedWidth, float, 0.7)
9 ATTRIB(XonoticUserbindEditDialog, rows, float, 4)
10 ATTRIB(XonoticUserbindEditDialog, columns, float, 3)
11 ATTRIB(XonoticUserbindEditDialog, keybindBox, entity, NULL)
13 ATTRIB(XonoticUserbindEditDialog, nameBox, entity, NULL)
14 ATTRIB(XonoticUserbindEditDialog, commandPressBox, entity, NULL)
15 ATTRIB(XonoticUserbindEditDialog, commandReleaseBox, entity, NULL)
16 ENDCLASS(XonoticUserbindEditDialog)
20 void XonoticUserbindEditDialog_Save(entity btn, entity me)
22 me.keybindBox.editUserbind(me.keybindBox, me.nameBox.text, me.commandPressBox.text, me.commandReleaseBox.text);
23 Dialog_Close(btn, me);
26 void XonoticUserbindEditDialog_loadUserBind(entity me, string theName, string theCommandPress, string theCommandRelease)
28 me.nameBox.setText(me.nameBox, theName);
29 me.nameBox.keyDown(me.nameBox, K_END, 0, 0);
30 me.commandPressBox.setText(me.commandPressBox, theCommandPress);
31 me.nameBox.keyDown(me.commandPressBox, K_END, 0, 0);
32 me.commandReleaseBox.setText(me.commandReleaseBox, theCommandRelease);
33 me.nameBox.keyDown(me.commandReleaseBox, K_END, 0, 0);
36 void XonoticUserbindEditDialog_fill(entity me)
40 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Name:")));
41 me.TD(me, 1, me.columns - 1, me.nameBox = makeXonoticInputBox(0, string_null));
43 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Command when pressed:")));
44 me.TD(me, 1, me.columns - 1, me.commandPressBox = makeXonoticInputBox(0, string_null));
46 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Command when released:")));
47 me.TD(me, 1, me.columns - 1, me.commandReleaseBox = makeXonoticInputBox(0, string_null));
49 me.TD(me, 1, me.columns / 2, e = makeXonoticButton(_("Save"), '0 0 0'));
50 e.onClick = XonoticUserbindEditDialog_Save;
52 me.TD(me, 1, me.columns / 2, e = makeXonoticButton(_("Cancel"), '0 0 0'));
53 e.onClick = Dialog_Close;