X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Fdialog_settings_input.c;h=7de3cfa9baff81ae1c9869171633566619683e2e;hb=a574217154e8db48538c3ece9d941cbdc95b53a5;hp=617b4e95f2628837225cf0acee3e44db339be3aa;hpb=7ec398db61b56e3c74bf0dbef1f6740a81cc7ced;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/xonotic/dialog_settings_input.c b/qcsrc/menu/xonotic/dialog_settings_input.c index 617b4e95f..7de3cfa9b 100644 --- a/qcsrc/menu/xonotic/dialog_settings_input.c +++ b/qcsrc/menu/xonotic/dialog_settings_input.c @@ -3,8 +3,8 @@ CLASS(XonoticInputSettingsTab) EXTENDS(XonoticTab) METHOD(XonoticInputSettingsTab, fill, void(entity)) ATTRIB(XonoticInputSettingsTab, title, string, _("Input")) ATTRIB(XonoticInputSettingsTab, intendedWidth, float, 0.9) - ATTRIB(XonoticInputSettingsTab, rows, float, 17) - ATTRIB(XonoticInputSettingsTab, columns, float, 6.5) + ATTRIB(XonoticInputSettingsTab, rows, float, 14.5) + ATTRIB(XonoticInputSettingsTab, columns, float, 6.2) // added extra .2 for center space ENDCLASS(XonoticInputSettingsTab) entity makeXonoticInputSettingsTab(); #endif @@ -17,55 +17,95 @@ entity makeXonoticInputSettingsTab() me.configureDialog(me); return me; } + +void CheckBox_Click_Redisplay(entity me, entity checkbox) +{ + CheckBox_Click(me, checkbox); + cmd("\ndefer 0.2 \"togglemenu 1\"\n"); + //m_display(); +} void XonoticInputSettingsTab_fill(entity me) { entity e; entity kb; me.TR(me); - me.TD(me, 1, 3, e = makeXonoticTextLabel(0, _("Key bindings:"))); - me.TR(me); - me.TD(me, me.rows - 2, 3.3, kb = makeXonoticKeyBinder()); - me.gotoRC(me, me.rows - 1, 0); + me.TD(me, 1, 3, e = makeXonoticTextLabel(0.5, _("Key Bindings"))); + e.isBold = TRUE; + e.alpha = 0.5; me.TR(me); - me.TD(me, 1, 1.1, e = makeXonoticButton(_("Change key..."), '0 0 0')); + me.TD(me, me.rows - 2.5, 3, kb = makeXonoticKeyBinder()); + me.gotoRC(me, me.rows - 1.5, 0); + me.TD(me, 1, 1, e = makeXonoticButton(_("Change key..."), '0 0 0')); e.onClick = KeyBinder_Bind_Change; e.onClickEntity = kb; kb.keyGrabButton = e; - me.TD(me, 1, 1.1, e = makeXonoticButton(_("Edit..."), '0 0 0')); + me.TD(me, 1, 1, e = makeXonoticButton(_("Edit..."), '0 0 0')); e.onClick = KeyBinder_Bind_Edit; e.onClickEntity = kb; kb.userbindEditButton = e; kb.userbindEditDialog = main.userbindEditDialog; main.userbindEditDialog.keybindBox = kb; - me.TD(me, 1, 1.1, e = makeXonoticButton(_("Clear"), '0 0 0')); + me.TD(me, 1, 1, e = makeXonoticButton(_("Clear"), '0 0 0')); e.onClick = KeyBinder_Bind_Clear; e.onClickEntity = kb; + kb.clearButton = e; - me.gotoRC(me, 0, 3.5); me.setFirstColumn(me, me.currentColumn); + me.gotoRC(me, 0, 3.2); me.setFirstColumn(me, me.currentColumn); + me.TD(me, 1, 3, e = makeXonoticTextLabel(0.5, _("Mouse"))); + e.isBold = TRUE; + e.alpha = 0.5; + me.TR(me); me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Sensitivity:"))); me.TD(me, 1, 2, e = makeXonoticSlider(1, 32, 0.2, "sensitivity")); me.TR(me); - if(cvar("menu_mouse_absolute") == 0) // TODO remove this entirely later + me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "m_filter", _("Smooth aiming"))); + me.TR(me); + me.TD(me, 1, 3, e = makeXonoticCheckBox(1.022, "m_pitch", _("Invert aiming"))); + me.TR(me); + me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "menu_mouse_absolute", _("Use system mouse positioning"))); + makeMulti(e, "hud_cursormode"); + e.onClick = CheckBox_Click_Redisplay; + e.onClickEntity = e; + me.TR(me); + me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "m_accelerate", _("Enable built in mouse acceleration"))); + me.TR(me); + if(cvar_type("vid_dgamouse") & CVAR_TYPEFLAG_ENGINE) + me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "vid_dgamouse", _("Disable system mouse acceleration"))); + else if(cvar_type("apple_mouse_noaccel") & CVAR_TYPEFLAG_ENGINE) + me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "apple_mouse_noaccel", _("Disable system mouse acceleration"))); + else { - me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("UI mouse speed:"))); - me.TD(me, 1, 2, e = makeXonoticSlider(0.2, 4.0, 0.1, "menu_mouse_speed")); + me.TD(me, 1, 3, e = makeXonoticCheckBox(0, string_null, _("Disable system mouse acceleration"))); + e.disabled = 1; // the option is never available in this case, just there for show } + + me.TR(me); me.TR(me); - me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "m_filter", _("Mouse filter"))); + me.TD(me, 1, 3, e = makeXonoticTextLabel(0.5, _("Other"))); + e.isBold = TRUE; + e.alpha = 0.5; + me.TR(me); + me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "con_closeontoggleconsole", _("Pressing \"enter console\" key also closes it"))); + me.TR(me); + me.TD(me, 1, 3, e = makeXonoticCheckBox(1, "cl_movement_track_canjump", _("Automatically repeat jumping if holding jump"))); + e.sendCvars = TRUE; me.TR(me); - me.TD(me, 1, 3, e = makeXonoticCheckBox(1.022, "m_pitch", _("Invert mouse"))); 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"))); - me.TR(me); - if(cvar_type("vid_dgamouse") & CVAR_TYPEFLAG_ENGINE) - me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "vid_dgamouse", _("Turn off OS mouse acceleration"))); - else if(cvar_type("apple_mouse_noaccel") & CVAR_TYPEFLAG_ENGINE) - me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "apple_mouse_noaccel", _("Turn off OS mouse acceleration"))); - me.TR(me); - me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "con_closeontoggleconsole", _("\"enter console\" also closes"))); + setDependent(e, "joy_detected", 1, 10000000); + } + else + { + me.TD(me, 1, 3, e = makeXonoticCheckBox(0, string_null, _("Use joystick input"))); + e.disabled = 1; // the option is never available in this case, just there for show + } } #endif