]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/menu/xonotic/dialog_multiplayer_join.qc
Merge branch 'z411/new_centerprint' into 'master'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_multiplayer_join.qc
index cd75a0ab55bddf41e4b2560933a785e8c14729ba..02b6464f6a8018bdcdece83541ca7ba4fcb1685a 100644 (file)
@@ -5,6 +5,8 @@
 #include "textlabel.qh"
 #include "inputbox.qh"
 #include "checkbox.qh"
+#include "commandbutton.qh"
+#include "leavematchbutton.qh"
 #include "button.qh"
 
 entity makeXonoticServerListTab()
@@ -17,8 +19,7 @@ entity makeXonoticServerListTab()
 
 void XonoticServerListTab_refresh(entity this, entity slist)
 {
-    bool clear = false;
-    slist.refreshServerList(slist, clear ? REFRESHSERVERLIST_RESET : REFRESHSERVERLIST_ASK);
+       slist.refreshServerList(slist, REFRESHSERVERLIST_ASK);
 }
 
 void XonoticServerListTab_fill(entity me)
@@ -28,31 +29,38 @@ void XonoticServerListTab_fill(entity me)
        slist  = makeXonoticServerList();
 
        me.gotoRC(me, 0.5, 0);
+               me.TD(me, 1, 0.8, e = makeXonoticCheckBox(0, "menu_slist_categories", ZCTX(_("SRVS^Categories"))));
+                       e.onClickEntity = slist;
+                       e.onClick = ServerList_Categories_Click;
+               /* FILTER CONTROLS */
                me.TD(me, 1, 0.5, e = makeXonoticTextLabel(1, _("Filter:")));
                me.TD(me, 1, 2, e = makeXonoticInputBox(0, string_null));
                        e.onChange = ServerList_Filter_Change;
                        e.onChangeEntity = slist;
                        slist.controlledTextbox = e;
-
-       me.gotoRC(me, 0.5, 2.6);
-               me.TD(me, 1, 0.9, e = makeXonoticCheckBox(0, "menu_slist_categories", ZCTX(_("SRVS^Categories"))));
-                       e.onClickEntity = slist;
-                       e.onClick = ServerList_Categories_Click;
+       me.gotoRC(me, 0.5, 0.8 + 0.5 + 2);
                me.TD(me, 1, 0.6, e = makeXonoticCheckBox_T(0, "menu_slist_showempty", ZCTX(_("SRVS^Empty")),
                        _("Show empty servers")));
                        slist.filterShowEmpty = e.checked;
                        e.onClickEntity = slist;
                        e.onClick = ServerList_ShowEmpty_Click;
-               me.TD(me, 1, 0.6, e = makeXonoticCheckBox_T(0, "menu_slist_showfull", ZCTX(_("SRVS^Full")),
+               me.TD(me, 1, 0.5, e = makeXonoticCheckBox_T(0, "menu_slist_showfull", ZCTX(_("SRVS^Full")),
                        _("Show full servers that have no slots available")));
                        slist.filterShowFull = e.checked;
                        e.onClickEntity = slist;
                        e.onClick = ServerList_ShowFull_Click;
-               me.TD(me, 1, 0.6, e = makeXonoticCheckBox_T(0, "net_slist_pause", _("Pause"),
-                       _("Pause updating the server list to prevent servers from \"jumping around\"")));
-               me.TD(me, 1, 1, e = makeXonoticButton_T(_("Refresh"), '0 0 0', _("Reload the server list")));
+               me.TD(me, 1, 0.6, e = makeXonoticCheckBox_T(0, "menu_slist_showlaggy", ZCTX(_("SRVS^Laggy")),
+                       _("Show high latency servers")));
+                       slist.filterShowLaggy = e.checked;
+                       e.onClickEntity = slist;
+                       e.onClick = ServerList_ShowLaggy_Click;
+               /* END FILTER CONTROLS */
+               me.TDempty(me, 0.1);
+               me.TD(me, 1, 0.8, e = makeXonoticButton_T(_("Refresh"), '0 0 0', _("Reload the server list")));
                        e.onClick = XonoticServerListTab_refresh;
                        e.onClickEntity = slist;
+               me.TD(me, 1, 0.6, e = makeXonoticCheckBox_T(0, "net_slist_pause", _("Pause"),
+                       _("Pause updating the server list to prevent servers from \"jumping around\"")));
 
        me.gotoRC(me, 2, 0);
                me.TD(me, 1, 1, slist.sortButton1 = makeXonoticButton(string_null, '0 0 0'));
@@ -81,10 +89,8 @@ void XonoticServerListTab_fill(entity me)
                        e.onClickEntity = slist;
                        slist.infoButton = e;
        me.TR(me);
-               me.TD(me, 1, 1, e = makeXonoticCommandButton_T(_("Disconnect"), '0 0 0', "echo disconnect\ndisconnect", 0,
-                       _("Disconnecting from server")));
-                       slist.disconnectButton = e;
-               me.TD(me, 1, me.columns-1, e = makeXonoticButton(_("Join!"), '0 0 0'));
+               me.TD(me, 1, me.columns * 0.5, e = makeXonoticLeaveMatchButton('0 0 0', 0));
+               me.TD(me, 1, me.columns * 0.5, e = makeXonoticButton(_("Join!"), '0 0 0'));
                        e.onClick = ServerList_Connect_Click;
                        e.onClickEntity = slist;
                        slist.connectButton = e;