]> icculus.org git repositories - divverent/nexuiz.git/blob - data/qcsrc/menu-div0test/nexuiz/dialog_settings_audio.c
fix divisions by zero
[divverent/nexuiz.git] / data / qcsrc / menu-div0test / nexuiz / dialog_settings_audio.c
1 #ifdef INTERFACE
2 CLASS(NexuizAudioSettingsTab) EXTENDS(NexuizTab)
3         METHOD(NexuizAudioSettingsTab, fill, void(entity))
4         ATTRIB(NexuizAudioSettingsTab, title, string, "Settings")
5         ATTRIB(NexuizAudioSettingsTab, intendedWidth, float, 0.9)
6         ATTRIB(NexuizAudioSettingsTab, rows, float, 15)
7         ATTRIB(NexuizAudioSettingsTab, columns, float, 6.5)
8 ENDCLASS(NexuizAudioSettingsTab)
9 entity makeNexuizAudioSettingsTab();
10 #endif
11
12 #ifdef IMPLEMENTATION
13 entity makeNexuizAudioSettingsTab()
14 {
15         entity me;
16         me = spawnNexuizAudioSettingsTab();
17         me.configureDialog(me);
18         return me;
19 }
20 entity makeNexuizDemoListbox()
21 {
22         entity me;
23         me = spawnListBox();
24         me.configureListBox(me, 16, 0.1);
25         return me;
26 }
27 void fillNexuizAudioSettingsTab(entity me)
28 {
29         entity e;
30
31         me.TR(me);
32                 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Music Volume:"));
33                 me.TD(me, 1, 2, e = makeNexuizSlider(0, 255, 1, "bgmvolume"));
34         me.TR(me);
35                 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Game Volume:"));
36                 me.TD(me, 1, 2, e = makeNexuizSlider(0, 255, 1, "volume"));
37         me.TR(me);
38                 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Ambient Volume:"));
39                 me.TD(me, 1, 2, e = makeNexuizSlider(0, 255, 1, "snd_staticvolume"));
40         me.TR(me);
41                 me.TD(me, 7, 3, e = makeNexuizDemoListbox());
42
43         me.gotoXY(me, 0, 3.5); me.setFirstColumn(me, me.currentColumn);
44                 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Frequency:"));
45                 me.TD(me, 1, 2, e = makeNexuizTextSlider("snd_speed"));
46                         e.addValue(e, "8 kHz", "8000");
47                         e.addValue(e, "11.025 kHz", "11025");
48                         e.addValue(e, "16 kHz", "16000");
49                         e.addValue(e, "22.05 kHz", "22050");
50                         e.addValue(e, "24 kHz", "24000");
51                         e.addValue(e, "32 kHz", "32000");
52                         e.addValue(e, "44.1 kHz", "44100");
53                         e.addValue(e, "48 kHz", "48000");
54                         e.configureNexuizTextSliderValues(e);
55         me.TR(me);
56                 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Channels:"));
57                 me.TD(me, 1, 2, e = makeNexuizSlider(1, 8, 1, "snd_channels"));
58         me.TR(me);
59                 me.TDempty(me, 0.2);
60                 me.TD(me, 1, 2.8, e = makeNexuizCheckBox(1, "snd_swapstereo", "Swap Stereo"));
61         me.TR(me);
62
63         me.gotoXY(me, me.rows - 1, 0);
64                 me.TD(me, 1, me.columns, makeNexuizCommandButton("Apply immediately", '0 0 0', "snd_restart", COMMANDBUTTON_APPLY));
65 }
66 #endif