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)
18 void XonoticHUDExitDialog_fill(entity me)
22 hudskinlist = makeXonoticHUDSkinList();
25 me.TD(me, 1, 4, makeXonoticHeaderLabel(_("HUD skins")));
28 me.TD(me, 1, 0.7, e = makeXonoticTextLabel(0.5, _("Filter:")));
29 me.TD(me, 1, 2.9, e = makeXonoticInputBox(0, string_null));
30 e.onChange = HUDSkinList_Filter_Change;
31 e.onChangeEntity = hudskinlist;
33 me.TD(me, 12, 4, hudskinlist);
34 me.gotoRC(me, me.rows - 4, 0);
36 me.TD(me, 1, 1.4, e = makeXonoticButton(_("Refresh"), '0 0 0'));
37 e.onClick = HUDSkinList_Refresh_Click;
38 e.onClickEntity = hudskinlist;
39 me.TD(me, 1, 2.2, e = makeXonoticButton(_("Set skin"), '0 0 0'));
40 e.onClick = SetHUDSkin_Click;
41 e.onClickEntity = hudskinlist;
42 me.gotoRC(me, me.rows - 2.5, 0);
43 me.TD(me, 1, 2, e = makeXonoticButton_T(_("Save current skin"), '0 0 0',
44 "Note: HUD skins are saved in data/data/ directory and can be manually renamed/deleted from there"));
45 e.onClick = SaveHUDSkin_Click;
46 e.onClickEntity = hudskinlist;
47 me.TD(me, 1, 2, e = makeXonoticInputBox(0, string_null));
48 e.onChange = HUDSkinList_SavedName_Change;
49 e.onChangeEntity = hudskinlist;
51 me.gotoRC(me, 0, 4.2); me.setFirstColumn(me, me.currentColumn);
52 me.TD(me, 1, 4, makeXonoticTextLabel(0, _("Panel background defaults:")));
54 me.TD(me, 1, 1.4, e = makeXonoticTextLabel(0, _("Background:")));
55 me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_bg"));
56 e.addValue(e, _("Disable"), "0");
57 e.addValue(e, "border_default", "border_default"); // this is a file name!
58 e.configureXonoticTextSliderValues(e);
61 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Color:")));
62 me.TD(me, 2, 2.6, e = makeXonoticColorpickerString("hud_panel_bg_color", "hud_panel_bg_color"));
66 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Border size:")));
67 me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_bg_border"));
68 e.addValue(e, _("Disable"), "0");
69 for(i = 1; i <= 10; ++i)
70 e.addValue(e, strzone(ftos_decimals(i * 2, 0)), strzone(ftos(i * 2)));
71 e.configureXonoticTextSliderValues(e);
74 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Alpha:")));
75 me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_bg_alpha"));
76 for(i = 1; i <= 10; ++i)
77 e.addValue(e, strzone(ftos_decimals(i/10, 1)), strzone(ftos(i/10)));
78 e.configureXonoticTextSliderValues(e);
81 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Team color:")));
82 me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_bg_color_team"));
83 e.addValue(e, _("Disable"), "0");
84 for(i = 1; i <= 10; ++i)
85 e.addValue(e, strzone(ftos_decimals(i/10, 1)), strzone(ftos(i/10)));
86 e.configureXonoticTextSliderValues(e);
89 me.TD(me, 1, 3.6, e = makeXonoticCheckBox(0, "hud_configure_teamcolorforced", _("Test team color in configure mode")));
92 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Padding:")));
93 me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_panel_bg_padding"));
94 for(i = 0; i <= 10; ++i)
95 e.addValue(e, strzone(ftos_decimals(i - 5, 0)), strzone(ftos(i - 5)));
96 e.configureXonoticTextSliderValues(e);
99 me.TD(me, 1, 1.4, e = makeXonoticTextLabel(0, _("HUD Dock:")));
100 me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_dock"));
101 e.addValue(e, ZCTX(_("DOCK^Disabled")), "0");
102 e.addValue(e, ZCTX(_("DOCK^Small")), "dock_small");
103 e.addValue(e, ZCTX(_("DOCK^Medium")), "dock_medium");
104 e.addValue(e, ZCTX(_("DOCK^Large")), "dock_large");
105 e.configureXonoticTextSliderValues(e);
108 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Color:")));
109 me.TD(me, 2, 2.6, e = makeXonoticColorpickerString("hud_dock_color", "hud_dock_color"));
113 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Alpha:")));
114 me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_dock_alpha"));
115 for(i = 1; i <= 10; ++i)
116 e.addValue(e, strzone(ftos_decimals(i/10, 1)), strzone(ftos(i/10)));
117 e.configureXonoticTextSliderValues(e);
120 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Team color:")));
121 me.TD(me, 1, 2.6, e = makeXonoticTextSlider("hud_dock_color_team"));
122 e.addValue(e, _("Disable"), "0");
123 for(i = 1; i <= 10; ++i)
124 e.addValue(e, strzone(ftos_decimals(i/10, 1)), strzone(ftos(i/10)));
125 e.configureXonoticTextSliderValues(e);
127 me.TD(me, 1, 4, makeXonoticTextLabel(0, _("Grid settings:")));
130 me.TD(me, 1, 3.8, e = makeXonoticCheckBox(0, "hud_configure_grid", _("Snap panels to grid")));
133 me.TD(me, 1, 1.2, e = makeXonoticTextLabel(0, _("Grid size:")));
134 setDependent(e, "hud_configure_grid", 1, 1);
135 me.TD(me, 1, 0.2, e = makeXonoticTextLabel(0, _("X:")));
136 setDependent(e, "hud_configure_grid", 1, 1);
137 me.TD(me, 1, 1.1, e = makeXonoticTextSlider("hud_configure_grid_xsize"));
138 for(i = 1; i <= 14; ++i)
139 e.addValue(e, strzone(sprintf("%.1f%%", i/2)), strzone(ftos(i/200)));
140 e.configureXonoticTextSliderValues(e);
141 setDependent(e, "hud_configure_grid", 1, 1);
142 me.TD(me, 1, 0.2, e = makeXonoticTextLabel(0, _("Y:")));
143 setDependent(e, "hud_configure_grid", 1, 1);
144 me.TD(me, 1, 1.1, e = makeXonoticTextSlider("hud_configure_grid_ysize"));
145 for(i = 1; i <= 14; ++i)
146 e.addValue(e, strzone(sprintf("%.1f%%", i/2)), strzone(ftos(i/200)));
147 e.configureXonoticTextSliderValues(e);
148 setDependent(e, "hud_configure_grid", 1, 1);
150 me.gotoRC(me, me.rows - 1, 0);
151 me.TD(me, 1, me.columns, e = makeXonoticCommandButton(_("Exit setup"), '0 0 0', "_hud_configure 0", 1));