]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/menu/xonotic/dialog_settings_misc_cvars.c
Merge branch 'master' of git://de.git.xonotic.org/xonotic/xonotic-data.pk3dir
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_settings_misc_cvars.c
1 #ifdef INTERFACE
2 CLASS(XonoticCvarsDialog) EXTENDS(XonoticDialog)
3         METHOD(XonoticCvarsDialog, toString, string(entity))
4         METHOD(XonoticCvarsDialog, fill, void(entity))
5         METHOD(XonoticCvarsDialog, showNotify, void(entity))
6         ATTRIB(XonoticCvarsDialog, title, string, "Advanced settings")
7         ATTRIB(XonoticCvarsDialog, color, vector, SKINCOLOR_DIALOG_CVARS)
8         ATTRIB(XonoticCvarsDialog, intendedWidth, float, 0.8)
9         ATTRIB(XonoticCvarsDialog, rows, float, 25)
10         ATTRIB(XonoticCvarsDialog, columns, float, 6)
11 ENDCLASS(XonoticCvarsDialog)
12 #endif
13
14 #ifdef IMPLEMENTATION
15 void XonoticCvarsDialog_showNotify(entity me)
16 {
17         loadAllCvars(me);
18 }
19 string XonoticCvarsDialog_toString(entity me)
20 {
21         return "XXX";
22 }
23 void XonoticCvarsDialog_fill(entity me)
24 {
25         entity e, cvarlist, btn;
26         cvarlist = makeXonoticCvarList();
27         me.TR(me);
28                 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, "Cvar filter:"));
29                 me.TD(me, 1, 0.5, btn = makeXonoticButton("Clear", '0 0 0'));
30                 me.TD(me, 1, me.columns - 1.5, e = makeXonoticInputBox(0, string_null));
31                         e.onChange = CvarList_Filter_Change;
32                         e.onChangeEntity = cvarlist;
33                         btn.onClick = InputBox_Clear_Click;
34                         btn.onClickEntity = e;
35                         cvarlist.controlledTextbox = e; // this COULD also be the Value box, but this leads to accidentally editing stuff
36         me.TR(me);
37                 me.TD(me, me.rows - me.currentRow - 7, me.columns, cvarlist);
38         me.gotoRC(me, me.rows - 7, 0);
39                 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, "Setting:"));
40                 me.TD(me, 1, me.columns - 1, e = makeXonoticTextLabel(0, string_null));
41                         cvarlist.cvarNameBox = e;
42         me.TR(me);
43                 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, "Type:"));
44                 me.TD(me, 1, me.columns - 1, e = makeXonoticTextLabel(0, string_null));
45                         cvarlist.cvarTypeBox = e;
46         me.TR(me);
47                 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, "Value:"));
48                 me.TD(me, 1, me.columns - 2, e = makeXonoticInputBox(0, string_null));
49                         cvarlist.cvarValueBox = e;
50                         e.onChange = CvarList_Value_Change;
51                         e.onChangeEntity = cvarlist;
52                 me.TD(me, 1, 1, e = makeXonoticButton(string_null, SKINCOLOR_CVARLIST_REVERTBUTTON));
53                         cvarlist.cvarDefaultBox = e;
54                         e.onClick = CvarList_Revert_Click;
55                         e.onClickEntity = cvarlist;
56                         e.allowCut = 1;
57                         e.marginLeft = e.marginRight = 0.5;
58         me.TR(me);
59                 me.TD(me, 1, 1, e = makeXonoticTextLabel(0, "Description:"));
60                 me.TD(me, 1, me.columns - 1, e = makeXonoticTextLabel(0, string_null));
61                         cvarlist.cvarDescriptionBox = e;
62                         e.allowWrap = 1;
63         me.gotoRC(me, me.rows - 1, 0);
64                 me.TD(me, 1, me.columns, e = makeXonoticButton("OK", '0 0 0'));
65                         e.onClick = Dialog_Close;
66                         e.onClickEntity = me;
67 }
68
69 #endif