]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/menu/item/textslider.qc
take3: format 903 files
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / item / textslider.qc
1 #include "textslider.qh"
2
3 string TextSlider_valueToIdentifier(entity me, int val)
4 {
5         if (val >= me.nValues) { return "custom"; }
6         if (val < 0) { return "custom"; }
7         return me.(valueIdentifiers[val]);
8 }
9 string TextSlider_valueToText(entity me, int val)
10 {
11         if (val >= me.nValues) { return _("Custom"); }
12         if (val < 0) { return _("Custom"); }
13         return me.(valueStrings[val]);
14 }
15 void TextSlider_setValueFromIdentifier_allowAnim(entity me, string id, bool allowAnim)
16 {
17         int i;
18         for (i = 0; i < me.nValues; ++i) {
19                 if (me.valueToIdentifier(me, i) == id) {
20                         SUPER(TextSlider).setValue_allowAnim(me, i, allowAnim);
21                         return;
22                 }
23         }
24         SUPER(TextSlider).setValue_allowAnim(me, -1, allowAnim);
25 }
26 void TextSlider_setValueFromIdentifier_noAnim(entity me, string id)
27 {
28         TextSlider_setValueFromIdentifier_allowAnim(me, id, false);
29 }
30 void TextSlider_setValueFromIdentifier(entity me, string id)
31 {
32         TextSlider_setValueFromIdentifier_allowAnim(me, id, true);
33 }
34 string TextSlider_getIdentifier(entity me)
35 {
36         return me.valueToIdentifier(me, me.value);
37 }
38 void TextSlider_clearValues(entity me)
39 {
40         me.nValues = 0;
41 }
42 void TextSlider_addValue(entity me, string theString, string theIdentifier)
43 {
44         me.(valueStrings[me.nValues]) = theString;
45         me.(valueIdentifiers[me.nValues]) = theIdentifier;
46         me.nValues += 1;
47 }
48 void TextSlider_insertValue(entity me, int pos, string theString, string theIdentifier)
49 {
50         int i;
51         for (i = me.nValues; i > pos; --i) {
52                 me.(valueStrings[i]) = me.(valueStrings[i - 1]);
53                 me.(valueIdentifiers[i]) = me.(valueIdentifiers[i - 1]);
54         }
55         me.(valueStrings[pos]) = theString;
56         me.(valueIdentifiers[pos]) = theIdentifier;
57         me.nValues += 1;
58 }
59 void TextSlider_configureTextSliderValues(entity me, string theDefault)
60 {
61         me.configureSliderValues(me, 0, 0, me.nValues - 1, 1, 1, 1);
62         me.setValueFromIdentifier_noAnim(me, theDefault);
63 }