X-Git-Url: https://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Fdialog_settings_misc.qc;h=8f98df58164e2fbd9933d17492ee6ea2f5ef4c05;hp=95f218b0e9852e357d1a20df4b2cb2f4a2612c54;hb=34e7f534e2015466228eb3a78c9857741b736dca;hpb=ee4a26c239e85351237b7c6b3deebe93fe372a15 diff --git a/qcsrc/menu/xonotic/dialog_settings_misc.qc b/qcsrc/menu/xonotic/dialog_settings_misc.qc index 95f218b0e..8f98df581 100644 --- a/qcsrc/menu/xonotic/dialog_settings_misc.qc +++ b/qcsrc/menu/xonotic/dialog_settings_misc.qc @@ -1,17 +1,16 @@ -#ifndef DIALOG_SETTINGS_MISC_H -#define DIALOG_SETTINGS_MISC_H -#include "tab.qc" -CLASS(XonoticMiscSettingsTab, XonoticTab) - METHOD(XonoticMiscSettingsTab, fill, void(entity)) - ATTRIB(XonoticMiscSettingsTab, title, string, _("Misc")) - ATTRIB(XonoticMiscSettingsTab, intendedWidth, float, 0.9) - ATTRIB(XonoticMiscSettingsTab, rows, float, 15.5) - ATTRIB(XonoticMiscSettingsTab, columns, float, 6.2) -ENDCLASS(XonoticMiscSettingsTab) -entity makeXonoticMiscSettingsTab(); -#endif +#include "dialog_settings_misc.qh" -#ifdef IMPLEMENTATION +#include "textlabel.qh" +#include "inputbox.qh" +#include "textslider.qh" +#include "slider.qh" +#include "checkbox.qh" +#include "button.qh" +#include "mainwindow.qh" + +#define ADDVALUE_FPS(i) e.addValue(e, strzone(sprintf(_("%d fps"), i)), #i) +#define ADDVALUE_SPEED_KB(i) e.addValue(e, strzone(sprintf(_("%d kb/s"), i)), #i) +#define ADDVALUE_SPEED_MB(i, j) e.addValue(e, strzone(sprintf(_("%d MB/s"), i)), #j) entity makeXonoticMiscSettingsTab() { entity me; @@ -28,11 +27,13 @@ void XonoticMiscSettingsTab_fill(entity me) me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Network"))); me.TR(me); me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Client UDP port:"))); - me.TD(me, 1, 1.5, e = makeXonoticInputBox(0, "cl_port")); + me.TD(me, 1, 1.5, e = makeXonoticInputBox_T(0, "cl_port", + _("Force client to use chosen port unless it is set to 0"))); me.TR(me); me.TR(me); me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Bandwidth:"))); - me.TD(me, 1, 2, e = makeXonoticTextSlider("_cl_rate")); + me.TD(me, 1, 2, e = makeXonoticTextSlider_T("_cl_rate", + _("Specify your network speed"))); e.addValue(e, _("56k"), "4000"); e.addValue(e, _("ISDN"), "7000"); e.addValue(e, _("Slow ADSL"), "15000"); @@ -41,18 +42,27 @@ void XonoticMiscSettingsTab_fill(entity me) e.configureXonoticTextSliderValues(e); me.TR(me); me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Input packets/s:"))); - me.TD(me, 1, 2, e = makeXonoticSlider(20, 100, 5, "cl_netfps")); + me.TD(me, 1, 2, e = makeXonoticSlider_T(20, 100, 5, "cl_netfps", + _("How many input packets to send to the server each second"))); me.TR(me); me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Server queries/s:"))); me.TD(me, 1, 2, e = makeXonoticSlider(20, 100, 10, "net_slist_queriespersecond")); me.TR(me); me.TR(me); me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Downloads:"))); - me.TD(me, 1, 2, e = makeXonoticSlider(1, 5, 1, "cl_curl_maxdownloads")); - me.TR(me); - me.TDempty(me, 0.1); - me.TD(me, 1, 0.9, e = makeXonoticTextLabel(0, _("Speed (kB/s):"))); - me.TD(me, 1, 2, e = makeXonoticSlider(10, 2000, 50, "cl_curl_maxspeed")); + me.TD(me, 1, 2, e = makeXonoticSlider_T(1, 5, 1, "cl_curl_maxdownloads", + _("Maximum number of concurrent HTTP/FTP downloads"))); + me.TR(me); + me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Download speed:"))); + me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_curl_maxspeed")); + ADDVALUE_SPEED_KB(50); + ADDVALUE_SPEED_KB(100); + ADDVALUE_SPEED_KB(300); + ADDVALUE_SPEED_KB(500); + ADDVALUE_SPEED_MB(1, 1000); + ADDVALUE_SPEED_MB(2, 2000); + e.addValue(e, strzone(_("Unlimited")), "0"); + e.configureXonoticTextSliderValues(e); me.TR(me); if(cvar("developer")) { @@ -60,7 +70,8 @@ void XonoticMiscSettingsTab_fill(entity me) me.TD(me, 1, 2, e = makeXonoticSlider(0, 1000, 25, "cl_netlocalping")); } me.TR(me); - me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "shownetgraph", _("Show netgraph"))); + me.TD(me, 1, 3, e = makeXonoticCheckBox_T(0, "shownetgraph", _("Show netgraph"), + _("Show a graph of packet sizes and other information"))); me.TR(me); me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_movement", _("Client-side movement prediction"))); me.TR(me); @@ -75,38 +86,39 @@ void XonoticMiscSettingsTab_fill(entity me) me.TR(me); me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Maximum:"))); me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_maxfps")); - e.addValue(e, ZCTX(_("MAXFPS^5 fps")), "5"); - e.addValue(e, ZCTX(_("MAXFPS^10 fps")), "10"); - e.addValue(e, ZCTX(_("MAXFPS^20 fps")), "20"); - e.addValue(e, ZCTX(_("MAXFPS^30 fps")), "30"); - e.addValue(e, ZCTX(_("MAXFPS^40 fps")), "40"); - e.addValue(e, ZCTX(_("MAXFPS^50 fps")), "50"); - e.addValue(e, ZCTX(_("MAXFPS^60 fps")), "60"); - e.addValue(e, ZCTX(_("MAXFPS^70 fps")), "70"); - e.addValue(e, ZCTX(_("MAXFPS^100 fps")), "100"); - e.addValue(e, ZCTX(_("MAXFPS^125 fps")), "125"); - e.addValue(e, ZCTX(_("MAXFPS^200 fps")), "200"); + ADDVALUE_FPS(30); + ADDVALUE_FPS(40); + ADDVALUE_FPS(50); + ADDVALUE_FPS(60); + ADDVALUE_FPS(70); + ADDVALUE_FPS(80); + ADDVALUE_FPS(100); + ADDVALUE_FPS(125); + ADDVALUE_FPS(150); + ADDVALUE_FPS(200); e.addValue(e, ZCTX(_("MAXFPS^Unlimited")), "0"); e.configureXonoticTextSliderValues(e); me.TR(me); me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Target:"))); me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_minfps")); e.addValue(e, ZCTX(_("TRGT^Disabled")), "0"); - e.addValue(e, ZCTX(_("TRGT^30 fps")), "30"); - e.addValue(e, ZCTX(_("TRGT^40 fps")), "40"); - e.addValue(e, ZCTX(_("TRGT^50 fps")), "50"); - e.addValue(e, ZCTX(_("TRGT^60 fps")), "60"); - e.addValue(e, ZCTX(_("TRGT^100 fps")), "100"); - e.addValue(e, ZCTX(_("TRGT^125 fps")), "125"); - e.addValue(e, ZCTX(_("TRGT^200 fps")), "200"); + ADDVALUE_FPS(30); + ADDVALUE_FPS(40); + ADDVALUE_FPS(50); + ADDVALUE_FPS(60); + ADDVALUE_FPS(80); + ADDVALUE_FPS(100); + ADDVALUE_FPS(125); + ADDVALUE_FPS(150); + ADDVALUE_FPS(200); e.configureXonoticTextSliderValues(e); me.TR(me); me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Idle limit:"))); me.TD(me, 1, 2, e = makeXonoticTextSlider("cl_maxidlefps")); - e.addValue(e, ZCTX(_("IDLFPS^10 fps")), "10"); - e.addValue(e, ZCTX(_("IDLFPS^20 fps")), "20"); - e.addValue(e, ZCTX(_("IDLFPS^30 fps")), "30"); - e.addValue(e, ZCTX(_("IDLFPS^60 fps")), "60"); + ADDVALUE_FPS(10); + ADDVALUE_FPS(20); + ADDVALUE_FPS(30); + ADDVALUE_FPS(60); e.addValue(e, ZCTX(_("IDLFPS^Unlimited")), "0"); e.configureXonoticTextSliderValues(e); me.TR(me); @@ -114,26 +126,30 @@ void XonoticMiscSettingsTab_fill(entity me) me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_maxfps_alwayssleep", _("Save processing time for other apps"))); setDependent(e, "cl_maxfps", 1, 1000); me.TR(me); - me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "showfps", _("Show frames per second"))); + me.TD(me, 1, 3, e = makeXonoticCheckBox_T(0, "showfps", _("Show frames per second"), + _("Show your rendered frames per second"))); me.TR(me); me.TR(me); me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Other"))); me.TR(me); me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Menu tooltips:"))); - me.TD(me, 1, 2, e = makeXonoticTextSlider("menu_tooltips")); + me.TD(me, 1, 2, e = makeXonoticTextSlider_T("menu_tooltips", + _("Menu tooltips: disabled, standard or advanced (also shows cvar or console command bound to the menu item)"))); e.addValue(e, ZCTX(_("TLTIP^Disabled")), "0"); e.addValue(e, ZCTX(_("TLTIP^Standard")), "1"); e.addValue(e, ZCTX(_("TLTIP^Advanced")), "2"); e.configureXonoticTextSliderValues(e); me.TR(me); - me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "showtime", _("Show current date and time"))); + me.TD(me, 1, 3, e = makeXonoticCheckBox_T(0, "showtime", _("Show current date and time"), + _("Show current date and time of day, useful on screenshots"))); makeMulti(e, "showdate"); me.TR(me); me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "developer", _("Enable developer mode"))); me.TR(me); me.TDempty(me, 0.5); - me.TD(me, 1, 2, e = makeXonoticButton(_("Advanced settings..."), '0 0 0')); + me.TD(me, 1, 2, e = makeXonoticButton_T(_("Advanced settings..."), '0 0 0', + _("Advanced settings where you can tweak every single variable of the game"))); e.onClick = DialogOpenButton_Click; e.onClickEntity = main.cvarsDialog; me.TR(me); @@ -142,4 +158,4 @@ void XonoticMiscSettingsTab_fill(entity me) e.onClick = DialogOpenButton_Click; e.onClickEntity = main.resetDialog; } -#endif +#undef ADDVALUE_FPS