#include "dialog_multiplayer_profile.qh"
-#ifndef DIALOG_MULTIPLAYER_PROFILE_H
-#define DIALOG_MULTIPLAYER_PROFILE_H
-#include "tab.qc"
-CLASS(XonoticProfileTab, XonoticTab)
- METHOD(XonoticProfileTab, fill, void(entity));
- METHOD(XonoticProfileTab, draw, void(entity));
- ATTRIB(XonoticProfileTab, intendedWidth, float, 0.9)
- ATTRIB(XonoticProfileTab, rows, float, 23)
- ATTRIB(XonoticProfileTab, columns, float, 6.1) // added extra .2 for center space
- ATTRIB(XonoticProfileTab, playerNameLabel, entity, NULL)
- ATTRIB(XonoticProfileTab, playerNameLabelAlpha, float, SKINALPHA_HEADER)
-ENDCLASS(XonoticProfileTab)
-entity makeXonoticProfileTab();
-#endif
-#ifdef IMPLEMENTATION
+#include "playermodel.qh"
+#include "statslist.qh"
+#include "languagelist.qh"
+#include "textlabel.qh"
+#include "commandbutton.qh"
+#include "inputbox.qh"
+#include "colorpicker.qh"
+#include "charmap.qh"
+#include "colorbutton.qh"
+#include "checkbox.qh"
+#include "radiobutton.qh"
+
entity makeXonoticProfileTab()
{
entity me;
me.playerNameLabel.alpha = me.playerNameLabelAlpha;
SUPER(XonoticProfileTab).draw(me);
}
+void language_selector_click(entity me, entity btn)
+{
+ localcmd("\nmenu_cmd languageselect\n");
+}
void XonoticProfileTab_fill(entity me)
{
entity e, pms, label, box;
"name \"$_cl_name\";"
"playermodel $_cl_playermodel;"
"playerskin $_cl_playerskin;"
- "sendcvar cl_allow_uidtracking;"
- "sendcvar cl_allow_uid2name;"
, COMMANDBUTTON_APPLY);
profileApplyButton.disableOnClick = true;
me.TR(me);
me.TDempty(me, 0.25);
me.TD(me, 1, 2.5, e = makeXonoticCheckBox(0, "cl_allow_uidtracking", _("Allow player statistics to track your client")));
- e.applyButton = profileApplyButton;
+ e.sendCvars = true;
me.TR(me);
me.TDempty(me, 0.25);
me.TD(me, 1, 2.5, e = makeXonoticCheckBox(0, "cl_allow_uid2name", _("Allow player statistics to use your nickname")));
- e.applyButton = profileApplyButton;
+ e.sendCvars = true;
+ setDependent(e, "cl_allow_uidtracking", 1, 1);
+ me.TR(me);
+ me.TDempty(me, 0.25);
+ me.TD(me, 1, 2.5, e = makeXonoticCheckBox(0, "cl_allow_uidranking", _("Allow player statistics to rank you in leaderboards")));
+ e.sendCvars = true;
setDependent(e, "cl_allow_uidtracking", 1, 1);
- me.gotoRC(me, 4, 3.1); // TOP RIGHT
+ me.gotoRC(me, 4.5, 3.1); // TOP RIGHT
//me.gotoRC(me, 12.5, 3.1); // BOTTOM RIGHT
//me.gotoRC(me, 12.5, 0); // BOTTOM LEFT
me.TDempty(me, 0.25);
me.TD(me, 1, 3, e = makeXonoticHeaderLabel(_("Country")));
me.TR(me);
+ me.TDempty(me, 0.75);
+ me.TD(me, 1, 1.5, e = makeXonoticButton(_("Select language..."), '0 0 0'));
+ e.onClick = language_selector_click;
+ e.onClickEntity = me;
+ /*
me.TDempty(me, 0.5);
me.TD(me, 4.5, 2, e = makeXonoticLanguageList()); // todo: cl_country: create proper country list
+ */
// ================
me.gotoRC(me, me.rows - 1, 0);
me.TD(me, 1, me.columns, profileApplyButton);
}
-#endif