From ad19520eb94bce24830773a015f7f3313dadc15f Mon Sep 17 00:00:00 2001 From: Rudolf Polzer Date: Tue, 18 Jan 2011 10:43:59 +0100 Subject: [PATCH] improve _cl_name handling --- qcsrc/menu/xonotic/dialog_firstrun.c | 1 + qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c | 1 + qcsrc/menu/xonotic/inputbox.c | 4 ++++ 3 files changed, 6 insertions(+) diff --git a/qcsrc/menu/xonotic/dialog_firstrun.c b/qcsrc/menu/xonotic/dialog_firstrun.c index 2df99c3ad..55985e0b1 100644 --- a/qcsrc/menu/xonotic/dialog_firstrun.c +++ b/qcsrc/menu/xonotic/dialog_firstrun.c @@ -52,6 +52,7 @@ void XonoticFirstRunDialog_fill(entity me) me.TD(me, 1, 3.0, box = makeXonoticInputBox(1, "_cl_name")); box.forbiddenCharacters = "\r\n\\\"$"; // don't care, isn't getting saved box.maxLength = -127; // negative means encoded length in bytes + box.saveImmediately = 1; label.textEntity = box; me.TR(me); me.TD(me, 5, 1, e = makeXonoticColorpicker(box)); diff --git a/qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c b/qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c index d42c9aaa9..adddf2fd1 100644 --- a/qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c +++ b/qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c @@ -47,6 +47,7 @@ void XonoticPlayerSettingsTab_fill(entity me) me.TD(me, 1, 3.0, box = makeXonoticInputBox(1, "_cl_name")); box.forbiddenCharacters = "\r\n\\\"$"; // don't care, isn't getting saved box.maxLength = -127; // negative means encoded length in bytes + box.saveImmediately = 1; label.textEntity = box; me.TR(me); me.TD(me, 5, 1, e = makeXonoticColorpicker(box)); diff --git a/qcsrc/menu/xonotic/inputbox.c b/qcsrc/menu/xonotic/inputbox.c index e457414b4..2a9c094b8 100644 --- a/qcsrc/menu/xonotic/inputbox.c +++ b/qcsrc/menu/xonotic/inputbox.c @@ -20,6 +20,8 @@ CLASS(XonoticInputBox) EXTENDS(InputBox) METHOD(XonoticInputBox, loadCvars, void(entity)) METHOD(XonoticInputBox, saveCvars, void(entity)) METHOD(XonoticInputBox, keyDown, float(entity, float, float, float)) + + ATTRIB(XonoticInputBox, saveImmediately, float, 0) ENDCLASS(XonoticInputBox) entity makeXonoticInputBox(float, string); #endif @@ -54,6 +56,8 @@ void XonoticInputBox_setText(entity me, string new) { SUPER(XonoticInputBox).setText(me, new); me.onChange(me, me.onChangeEntity); + if(me.saveImmediately) + me.saveCvars(me); } else SUPER(XonoticInputBox).setText(me, new); -- 2.39.2