1 /*
2  * This file is part of OpenTTD.
3  * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
4  * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
5  * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
6  */
7 
8 /** @file settings_widget.h Types related to the settings widgets. */
9 
10 #ifndef WIDGETS_SETTINGS_WIDGET_H
11 #define WIDGETS_SETTINGS_WIDGET_H
12 
13 /** Widgets of the #GameOptionsWindow class. */
14 enum GameOptionsWidgets {
15 	WID_GO_BACKGROUND,             ///< Background of the window.
16 	WID_GO_CURRENCY_DROPDOWN,      ///< Currency dropdown.
17 	WID_GO_DISTANCE_DROPDOWN,      ///< Measuring unit dropdown.
18 	WID_GO_AUTOSAVE_DROPDOWN,      ///< Dropdown to say how often to autosave.
19 	WID_GO_LANG_DROPDOWN,          ///< Language dropdown.
20 	WID_GO_RESOLUTION_DROPDOWN,    ///< Dropdown for the resolution.
21 	WID_GO_FULLSCREEN_BUTTON,      ///< Toggle fullscreen.
22 	WID_GO_GUI_ZOOM_DROPDOWN,      ///< Dropdown for the GUI zoom level.
23 	WID_GO_BASE_GRF_DROPDOWN,      ///< Use to select a base GRF.
24 	WID_GO_BASE_GRF_STATUS,        ///< Info about missing files etc.
25 	WID_GO_BASE_GRF_TEXTFILE,      ///< Open base GRF readme, changelog (+1) or license (+2).
26 	WID_GO_BASE_GRF_DESCRIPTION = WID_GO_BASE_GRF_TEXTFILE + TFT_END,     ///< Description of selected base GRF.
27 	WID_GO_BASE_SFX_DROPDOWN,      ///< Use to select a base SFX.
28 	WID_GO_BASE_SFX_VOLUME,        ///< Change sound effects volume.
29 	WID_GO_BASE_SFX_TEXTFILE,      ///< Open base SFX readme, changelog (+1) or license (+2).
30 	WID_GO_BASE_SFX_DESCRIPTION = WID_GO_BASE_SFX_TEXTFILE + TFT_END,     ///< Description of selected base SFX.
31 	WID_GO_BASE_MUSIC_DROPDOWN,    ///< Use to select a base music set.
32 	WID_GO_BASE_MUSIC_VOLUME,      ///< Change music volume.
33 	WID_GO_BASE_MUSIC_STATUS,      ///< Info about corrupted files etc.
34 	WID_GO_BASE_MUSIC_TEXTFILE,    ///< Open base music readme, changelog (+1) or license (+2).
35 	WID_GO_BASE_MUSIC_DESCRIPTION = WID_GO_BASE_MUSIC_TEXTFILE + TFT_END, ///< Description of selected base music set.
36 	WID_GO_FONT_ZOOM_DROPDOWN,     ///< Dropdown for the font zoom level.
37 	WID_GO_VIDEO_ACCEL_BUTTON,     ///< Toggle for video acceleration.
38 	WID_GO_VIDEO_VSYNC_BUTTON,     ///< Toggle for video vsync.
39 	WID_GO_REFRESH_RATE_DROPDOWN,  ///< Dropdown for all available refresh rates.
40 };
41 
42 /** Widgets of the #GameSettingsWindow class. */
43 enum GameSettingsWidgets {
44 	WID_GS_FILTER,             ///< Text filter.
45 	WID_GS_OPTIONSPANEL,       ///< Panel widget containing the option lists.
46 	WID_GS_SCROLLBAR,          ///< Scrollbar.
47 	WID_GS_HELP_TEXT,          ///< Information area to display help text of the selected option.
48 	WID_GS_EXPAND_ALL,         ///< Expand all button.
49 	WID_GS_COLLAPSE_ALL,       ///< Collapse all button.
50 	WID_GS_RESET_ALL,          ///< Reset all button.
51 	WID_GS_RESTRICT_CATEGORY,  ///< Label upfront to the category drop-down box to restrict the list of settings to show
52 	WID_GS_RESTRICT_TYPE,      ///< Label upfront to the type drop-down box to restrict the list of settings to show
53 	WID_GS_RESTRICT_DROPDOWN,  ///< The drop down box to restrict the list of settings
54 	WID_GS_TYPE_DROPDOWN,      ///< The drop down box to choose client/game/company/all settings
55 };
56 
57 /** Widgets of the #CustomCurrencyWindow class. */
58 enum CustomCurrencyWidgets {
59 	WID_CC_RATE_DOWN,      ///< Down button.
60 	WID_CC_RATE_UP,        ///< Up button.
61 	WID_CC_RATE,           ///< Rate of currency.
62 	WID_CC_SEPARATOR_EDIT, ///< Separator edit button.
63 	WID_CC_SEPARATOR,      ///< Current separator.
64 	WID_CC_PREFIX_EDIT,    ///< Prefix edit button.
65 	WID_CC_PREFIX,         ///< Current prefix.
66 	WID_CC_SUFFIX_EDIT,    ///< Suffix edit button.
67 	WID_CC_SUFFIX,         ///< Current suffix.
68 	WID_CC_YEAR_DOWN,      ///< Down button.
69 	WID_CC_YEAR_UP,        ///< Up button.
70 	WID_CC_YEAR,           ///< Year of introduction.
71 	WID_CC_PREVIEW,        ///< Preview.
72 };
73 
74 #endif /* WIDGETS_SETTINGS_WIDGET_H */
75