ScummVM API documentation
fluidsynth-dialog.h
1 /* ScummVM - Graphic Adventure Engine
2  *
3  * ScummVM is the legal property of its developers, whose names
4  * are too numerous to list here. Please refer to the COPYRIGHT
5  * file distributed with this source distribution.
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  *
20  */
21 
22 #ifndef FLUIDSYNTH_DIALOG_H
23 #define FLUIDSYNTH_DIALOG_H
24 
25 #include "common/str.h"
26 #include "gui/dialog.h"
27 
28 namespace GUI {
29 
30 class TabWidget;
31 class CheckboxWidget;
32 class SliderWidget;
33 class StaticTextWidget;
34 class PopUpWidget;
35 
37 public:
39  ~FluidSynthSettingsDialog() override;
40 
41  void open() override;
42  void close() override;
43  void handleCommand(CommandSender *sender, uint32 cmd, uint32 data) override;
44 
45 protected:
46  void setChorusSettingsState(bool enabled);
47  void setReverbSettingsState(bool enabled);
48 
49  void readSettings();
50  void writeSettings();
51 
52  void resetSettings();
53 
54 private:
55  Common::String _domain;
56 
57  TabWidget *_tabWidget;
58 
59  CheckboxWidget *_chorusActivate;
60 
61  StaticTextWidget *_chorusVoiceCountDesc;
62  SliderWidget *_chorusVoiceCountSlider;
63  StaticTextWidget *_chorusVoiceCountLabel;
64 
65  StaticTextWidget *_chorusLevelDesc;
66  SliderWidget *_chorusLevelSlider;
67  StaticTextWidget *_chorusLevelLabel;
68 
69  StaticTextWidget *_chorusSpeedDesc;
70  SliderWidget *_chorusSpeedSlider;
71  StaticTextWidget *_chorusSpeedLabel;
72 
73  StaticTextWidget *_chorusDepthDesc;
74  SliderWidget *_chorusDepthSlider;
75  StaticTextWidget *_chorusDepthLabel;
76 
77  StaticTextWidget *_chorusWaveFormTypePopUpDesc;
78  PopUpWidget *_chorusWaveFormTypePopUp;
79 
80  CheckboxWidget *_reverbActivate;
81 
82  StaticTextWidget *_reverbRoomSizeDesc;
83  SliderWidget *_reverbRoomSizeSlider;
84  StaticTextWidget *_reverbRoomSizeLabel;
85 
86  StaticTextWidget *_reverbDampingDesc;
87  SliderWidget *_reverbDampingSlider;
88  StaticTextWidget *_reverbDampingLabel;
89 
90  StaticTextWidget *_reverbWidthDesc;
91  SliderWidget *_reverbWidthSlider;
92  StaticTextWidget *_reverbWidthLabel;
93 
94  StaticTextWidget *_reverbLevelDesc;
95  SliderWidget *_reverbLevelSlider;
96  StaticTextWidget *_reverbLevelLabel;
97 
98  StaticTextWidget *_miscInterpolationPopUpDesc;
99  PopUpWidget *_miscInterpolationPopUp;
100 };
101 
102 } // End of namespace GUI
103 
104 #endif
Definition: fluidsynth-dialog.h:36
Definition: str.h:59
Definition: widget.h:329
Definition: widget.h:205
Definition: widget.h:405
Definition: system.h:46
Definition: dialog.h:49
Definition: tab.h:36
Definition: popup.h:39
Definition: object.h:40