]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/menu/xonotic/dialog_hudsetup_exit.qc
Add a HUD skin selector in the HUD Setup window (that one that appears pressing ESC...
[xonotic/xonotic-data.pk3dir.git] / qcsrc / menu / xonotic / dialog_hudsetup_exit.qc
1 #ifndef DIALOG_HUDSETUP_EXIT_H
2 #define DIALOG_HUDSETUP_EXIT_H
3 #include "rootdialog.qc"
4 CLASS(XonoticHUDExitDialog, XonoticRootDialog)
5         METHOD(XonoticHUDExitDialog, fill, void(entity));
6         ATTRIB(XonoticHUDExitDialog, title, string, _("Panel HUD Setup"))
7         ATTRIB(XonoticHUDExitDialog, color, vector, SKINCOLOR_DIALOG_TEAMSELECT)
8         ATTRIB(XonoticHUDExitDialog, intendedWidth, float, 0.8)
9         ATTRIB(XonoticHUDExitDialog, rows, float, 18)
10         ATTRIB(XonoticHUDExitDialog, columns, float, 8.2)
11         ATTRIB(XonoticHUDExitDialog, name, string, "HUDExit")
12         ATTRIB(XonoticHUDExitDialog, requiresConnection, float, true)
13 ENDCLASS(XonoticHUDExitDialog)
14
15 #endif
16
17 #ifdef IMPLEMENTATION
18 void XonoticHUDExitDialog_fill(entity me)
19 {
20         entity e;
21         int i;
22         hudskinlist = makeXonoticHUDSkinList();
23
24         me.TR(me);
25                 me.TD(me, 1, 4, makeXonoticHeaderLabel(_("HUD skins")));
26         me.TR(me);
27                 me.TD(me, 1, 0.9, e = makeXonoticButton(_("Refresh"), '0 0 0'));
28                         e.onClick = HUDSkinList_Refresh_Click;
29                         e.onClickEntity = hudskinlist;
30                 me.TDempty(me, 0.1);
31                 me.TD(me, 1, 1, e = makeXonoticTextLabel(1, _("Filter:")));
32                 me.TD(me, 1, 2, e = makeXonoticInputBox(0, string_null));
33                         e.onChange = HUDSkinList_Filter_Change;
34                         e.onChangeEntity = hudskinlist;
35                         hudskinlist.controlledTextbox = e;
36         me.TR(me);
37                 me.TD(me, 13.5, 4, hudskinlist);
38         me.gotoRC(me, me.rows - 2.5, 0);
39                 me.TDempty(me, 0.75);
40                 me.TD(me, 1, 2.5, e = makeXonoticButton(_("Set skin"), '0 0 0'));
41                         e.onClick = SetHUDSkin_Click;
42                         e.onClickEntity = hudskinlist;
43
44         me.gotoRC(me, 0, 4.2); me.setFirstColumn(me, me.currentColumn);
45                 me.TD(me, 1, 4, makeXonoticTextLabel(0, _("Panel background defaults:")));
46         me.TR(me);
47                 me.TD(me, 1, 1.4, e = makeXonoticTextLabel(0, _("Background:")));
48                         me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_bg"));
49                                 e.addValue(e, _("Disable"), "0");
50                                 e.addValue(e, "border_default", "border_default"); // this is a file name!
51                                 e.configureXonoticTextSliderValues(e);
52         me.TR(me);
53                 me.TDempty(me, 0.2);
54                 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Color:")));
55                 me.TD(me, 2, 2.6, e = makeXonoticColorpickerString("hud_panel_bg_color", "hud_panel_bg_color"));
56         me.TR(me);
57         me.TR(me);
58                 me.TDempty(me, 0.2);
59                 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Border size:")));
60                         me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_bg_border"));
61                                 e.addValue(e, _("Disable"), "0");
62                                 for(i = 1; i <= 10; ++i)
63                                         e.addValue(e, strzone(ftos_decimals(i * 2, 0)), strzone(ftos(i * 2)));
64                                 e.configureXonoticTextSliderValues(e);
65         me.TR(me);
66                 me.TDempty(me, 0.2);
67                 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Alpha:")));
68                         me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_bg_alpha"));
69                                 for(i = 1; i <= 10; ++i)
70                                         e.addValue(e, strzone(ftos_decimals(i/10, 1)), strzone(ftos(i/10)));
71                                 e.configureXonoticTextSliderValues(e);
72         me.TR(me);
73                 me.TDempty(me, 0.2);
74                 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Team color:")));
75                         me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_bg_color_team"));
76                                 e.addValue(e, _("Disable"), "0");
77                                 for(i = 1; i <= 10; ++i)
78                                         e.addValue(e, strzone(ftos_decimals(i/10, 1)), strzone(ftos(i/10)));
79                                 e.configureXonoticTextSliderValues(e);
80         me.TR(me);
81                 me.TDempty(me, 0.4);
82                 me.TD(me, 1, 3.6, e = makeXonoticCheckBox(0, "hud_configure_teamcolorforced", _("Test team color in configure mode")));
83         me.TR(me);
84                 me.TDempty(me, 0.2);
85                 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Padding:")));
86                         me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_bg_padding"));
87                                 for(i = 0; i <= 10; ++i)
88                                         e.addValue(e, strzone(ftos_decimals(i - 5, 0)), strzone(ftos(i - 5)));
89                                 e.configureXonoticTextSliderValues(e);
90
91         me.TR(me);
92                 me.TD(me, 1, 1.4, e = makeXonoticTextLabel(0, _("HUD Dock:")));
93                         me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_dock"));
94                                 e.addValue(e, ZCTX(_("DOCK^Disabled")), "0");
95                                 e.addValue(e, ZCTX(_("DOCK^Small")), "dock_small");
96                                 e.addValue(e, ZCTX(_("DOCK^Medium")), "dock_medium");
97                                 e.addValue(e, ZCTX(_("DOCK^Large")), "dock_large");
98                                 e.configureXonoticTextSliderValues(e);
99         me.TR(me);
100                 me.TDempty(me, 0.2);
101                 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Color:")));
102                 me.TD(me, 2, 2.6, e = makeXonoticColorpickerString("hud_dock_color", "hud_dock_color"));
103         me.TR(me);
104         me.TR(me);
105                 me.TDempty(me, 0.2);
106                 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Alpha:")));
107                         me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_dock_alpha"));
108                                 for(i = 1; i <= 10; ++i)
109                                         e.addValue(e, strzone(ftos_decimals(i/10, 1)), strzone(ftos(i/10)));
110                                 e.configureXonoticTextSliderValues(e);
111         me.TR(me);
112                 me.TDempty(me, 0.2);
113                 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Team color:")));
114                         me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_dock_color_team"));
115                                 e.addValue(e, _("Disable"), "0");
116                                 for(i = 1; i <= 10; ++i)
117                                         e.addValue(e, strzone(ftos_decimals(i/10, 1)), strzone(ftos(i/10)));
118                                 e.configureXonoticTextSliderValues(e);
119         me.TR(me);
120                 me.TD(me, 1, 4, makeXonoticTextLabel(0, _("Grid settings:")));
121         me.TR(me);
122                 me.TDempty(me, 0.2);
123                 me.TD(me, 1, 3.8, e = makeXonoticCheckBox(0, "hud_configure_grid", _("Snap panels to grid")));
124         me.TR(me);
125                 me.TDempty(me, 0.2);
126                 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Grid size:")));
127                 me.TD(me, 1, 0.2, e = makeXonoticTextLabel(0, _("X:")));
128                         me.TD(me, 1, 1.1, e = makeXonoticTextSlider("hud_configure_grid_xsize"));
129                                 for(i = 1; i <= 14; ++i)
130                                         e.addValue(e, strzone(ftos_decimals(i/200, 3)), strzone(ftos(i/200)));
131                                 e.configureXonoticTextSliderValues(e);
132                         setDependent(e, "hud_configure_grid", 1, 1);
133                 me.TD(me, 1, 0.2, e = makeXonoticTextLabel(0, _("Y:")));
134                         me.TD(me, 1, 1.1, e = makeXonoticTextSlider("hud_configure_grid_ysize"));
135                                 for(i = 1; i <= 14; ++i)
136                                         e.addValue(e, strzone(ftos_decimals(i/200, 3)), strzone(ftos(i/200)));
137                                 e.configureXonoticTextSliderValues(e);
138                         setDependent(e, "hud_configure_grid", 1, 1);
139
140         me.gotoRC(me, me.rows - 1, 0);
141                 me.TD(me, 1, me.columns, e = makeXonoticCommandButton(_("Exit setup"), '0 0 0', "_hud_configure 0", 1));
142 }
143 #endif