]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/menu/xonotic/dialog_settings_input.c
Implement reset button in input dialog. Fixes #1170
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_settings_input.c
index 78bd1e4e8d7252c42e6a46bb27382072d2aa41aa..c8ba7c4fd4483defb98d124de8ddbc88c736cf74 100644 (file)
@@ -3,7 +3,7 @@ CLASS(XonoticInputSettingsTab) EXTENDS(XonoticTab)
        METHOD(XonoticInputSettingsTab, fill, void(entity))
        ATTRIB(XonoticInputSettingsTab, title, string, _("Input"))
        ATTRIB(XonoticInputSettingsTab, intendedWidth, float, 0.9)
-       ATTRIB(XonoticInputSettingsTab, rows, float, 15.5)
+       ATTRIB(XonoticInputSettingsTab, rows, float, 17)
        ATTRIB(XonoticInputSettingsTab, columns, float, 6.2) // added extra .2 for center space
 ENDCLASS(XonoticInputSettingsTab)
 entity makeXonoticInputSettingsTab();
@@ -20,12 +20,15 @@ entity makeXonoticInputSettingsTab()
 void XonoticInputSettingsTab_fill(entity me)
 {
        entity e;
-       entity kb;
+       entity kb = makeXonoticKeyBinder();
 
        me.TR(me);
-               me.TD(me, 1, 3, e = makeXonoticTextLabel(0, _("Key bindings:")));
+               me.TD(me, 1, 2, e = makeXonoticTextLabel(0, _("Key bindings:")));
+               me.TD(me, 1, 1, e = makeXonoticButton(_("Reset all"), '0 0 0'));
+                       e.onClick = KeyBinder_Bind_Reset_All;
+                       e.onClickEntity = kb;
        me.TR(me);
-               me.TD(me, me.rows - 4, 3, kb = makeXonoticKeyBinder());
+               me.TD(me, me.rows - 4, 3, kb);
        me.gotoRC(me, me.rows - 3, 0);
                me.TD(me, 1, 1, e = makeXonoticButton(_("Change key..."), '0 0 0'));
                        e.onClick = KeyBinder_Bind_Change;
@@ -49,15 +52,9 @@ void XonoticInputSettingsTab_fill(entity me)
        me.TR(me);
        me.TR(me);
                if(cvar_type("joy_enable") & CVAR_TYPEFLAG_ENGINE)
-               {
                        me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "joy_enable", _("Use joystick input")));
-                       setDependent(e, "joy_detected", 1, 10000000);
-               }
                else if(cvar_type("joystick") & CVAR_TYPEFLAG_ENGINE)
-               {
                        me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "joystick", _("Use joystick input")));
-                       setDependent(e, "joy_detected", 1, 10000000);
-               }
                else
                {
                        me.TD(me, 1, 3, e = makeXonoticCheckBox(0, string_null, _("Use joystick input")));
@@ -92,7 +89,7 @@ void XonoticInputSettingsTab_fill(entity me)
                me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "m_accelerate", _("Enable built in mouse acceleration")));
 
 
-       me.gotoRC(me, me.rows - 1.25, 0);
+       me.gotoRC(me, me.rows - 1, 0);
                me.TD(me, 1, me.columns, makeXonoticCommandButton(_("Apply immediately"), '0 0 0', "sendcvar cl_movement_track_canjump", COMMANDBUTTON_APPLY));
 }
 #endif