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