-#ifndef TEXTSLIDER_H
-#define TEXTSLIDER_H
-#include "../item/textslider.qc"
-CLASS(XonoticTextSlider, TextSlider)
- METHOD(XonoticTextSlider, configureXonoticTextSlider, void(entity, string, string));
- METHOD(XonoticTextSlider, setValue, void(entity, float));
- METHOD(XonoticTextSlider, configureXonoticTextSliderValues, void(entity));
- ATTRIB(XonoticTextSlider, fontSize, float, SKINFONTSIZE_NORMAL)
- ATTRIB(XonoticTextSlider, valueSpace, float, SKINWIDTH_SLIDERTEXT)
- ATTRIB(XonoticTextSlider, image, string, SKINGFX_SLIDER)
- ATTRIB(XonoticTextSlider, tolerance, vector, SKINTOLERANCE_SLIDER)
- ATTRIB(XonoticTextSlider, align, float, 0.5)
- ATTRIB(XonoticTextSlider, color, vector, SKINCOLOR_SLIDER_N)
- ATTRIB(XonoticTextSlider, colorC, vector, SKINCOLOR_SLIDER_C)
- ATTRIB(XonoticTextSlider, colorF, vector, SKINCOLOR_SLIDER_F)
- ATTRIB(XonoticTextSlider, colorD, vector, SKINCOLOR_SLIDER_D)
- ATTRIB(XonoticTextSlider, color2, vector, SKINCOLOR_SLIDER_S)
+#include "textslider.qh"
- ATTRIB(XonoticTextSlider, cvarName, string, string_null)
- METHOD(XonoticTextSlider, loadCvars, void(entity));
- METHOD(XonoticTextSlider, saveCvars, void(entity));
- ATTRIB(XonoticTextSlider, sendCvars, float, 0)
-
- ATTRIB(XonoticTextSlider, alpha, float, SKINALPHA_TEXT)
- ATTRIB(XonoticTextSlider, disabledAlpha, float, SKINALPHA_DISABLED)
-ENDCLASS(XonoticTextSlider)
-entity makeXonoticTextSlider_T(string, string theTooltip);
-entity makeXonoticTextSlider(string); // note: you still need to call addValue and configureXonoticTextSliderValues!
-#endif
-
-#ifdef IMPLEMENTATION
entity makeXonoticTextSlider_T(string theCvar, string theTooltip)
{
entity me;
me.saveCvars(me);
}
}
+void XonoticTextSlider_setValue_noAnim(entity me, float val)
+{
+ if(val != me.value)
+ {
+ SUPER(XonoticTextSlider).setValue_noAnim(me, val);
+ me.saveCvars(me);
+ }
+}
void XonoticTextSlider_loadCvars(entity me)
{
if (!me.cvarName)
float i;
for(i = 1; i < n; ++i)
s = strcat(s, " ", cvar_string(argv(i)));
- me.setValueFromIdentifier(me, s);
+ me.setValueFromIdentifier_noAnim(me, s);
if(me.value < 0 && n > 1)
{
// if it failed: check if all cvars have the same value
if(cvar_string(argv(i)) != cvar_string(argv(i-1)))
break;
if(i >= n)
- me.setValueFromIdentifier(me, cvar_string(argv(0)));
+ me.setValueFromIdentifier_noAnim(me, cvar_string(argv(0)));
}
}
void XonoticTextSlider_saveCvars(entity me)
me.configureTextSliderValues(me, string_null);
me.loadCvars(me);
}
-#endif