summaryrefslogtreecommitdiff
path: root/src/widgets/newgrf_widget.h
blob: b19a395522d11f107da026c604a5d78756e92d8a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/* $Id$ */

/*
 * This file is part of OpenTTD.
 * 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.
 * 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.
 * 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/>.
 */

/** @file newgrf_widget.h Types related to the newgrf widgets. */

#ifndef WIDGETS_NEWGRF_WIDGET_H
#define WIDGETS_NEWGRF_WIDGET_H

#include "../newgrf_config.h"

/** Widgets of the WC_GRF_PARAMETERS. */
enum NewGRFParametersWidgets {
	WID_NP_SHOW_NUMPAR,      ///< #NWID_SELECTION to optionally display #WID_NP_NUMPAR
	WID_NP_NUMPAR_DEC,       ///< Button to decrease number of parameters
	WID_NP_NUMPAR_INC,       ///< Button to increase number of parameters
	WID_NP_NUMPAR,           ///< Optional number of parameters
	WID_NP_NUMPAR_TEXT,      ///< Text description
	WID_NP_BACKGROUND,       ///< Panel to draw the settings on
	WID_NP_SCROLLBAR,        ///< Scrollbar to scroll through all settings
	WID_NP_ACCEPT,           ///< Accept button
	WID_NP_RESET,            ///< Reset button
	WID_NP_SHOW_DESCRIPTION, ///< #NWID_SELECTION to optionally display parameter descriptions
	WID_NP_DESCRIPTION,      ///< Multi-line description of a parameter
};

/** Widgets of the WC_NEWGRF_TEXTFILE. */
enum NewGRFTextfileWidgets {
	WID_NT_CAPTION,    ///< The caption of the window.
	WID_NT_BACKGROUND, ///< Panel to draw the textfile on.
	WID_NT_VSCROLLBAR, ///< Vertical scrollbar to scroll through the textfile up-and-down.
	WID_NT_HSCROLLBAR, ///< Horizontal scrollbar to scroll through the textfile left-to-right.
};

/** Widgets of the WC_GAME_OPTIONS (WC_GAME_OPTIONS is also used in others). */
enum NewGRFStateWidgets {
	WID_NS_PRESET_LIST,         ///< Active NewGRF preset.
	WID_NS_PRESET_SAVE,         ///< Save list of active NewGRFs as presets.
	WID_NS_PRESET_DELETE,       ///< Delete active preset.
	WID_NS_ADD,                 ///< Add NewGRF to active list.
	WID_NS_REMOVE,              ///< Remove NewGRF from active list.
	WID_NS_MOVE_UP,             ///< Move NewGRF up in active list.
	WID_NS_MOVE_DOWN,           ///< Move NewGRF down in active list.
	WID_NS_FILTER,              ///< Filter list of available NewGRFs.
	WID_NS_FILE_LIST,           ///< List window of active NewGRFs.
	WID_NS_SCROLLBAR,           ///< Scrollbar for active NewGRF list.
	WID_NS_AVAIL_LIST,          ///< List window of available NewGRFs.
	WID_NS_SCROLL2BAR,          ///< Scrollbar for available NewGRF list.
	WID_NS_NEWGRF_INFO_TITLE,   ///< Title for Info on selected NewGRF.
	WID_NS_NEWGRF_INFO,         ///< Panel for Info on selected NewGRF.
	WID_NS_OPEN_URL,            ///< Open URL of NewGRF.
	WID_NS_NEWGRF_TEXTFILE,     ///< Open NewGRF readme, changelog (+1) or license (+2).
	WID_NS_SET_PARAMETERS = WID_NS_NEWGRF_TEXTFILE + TFT_END,   ///< Open Parameters Window for selected, active NewGRF.
	WID_NS_TOGGLE_PALETTE,      ///< Toggle Palette of selected, active NewGRF.
	WID_NS_APPLY_CHANGES,       ///< Apply changes to NewGRF config.
	WID_NS_RESCAN_FILES,        ///< Rescan files (available NewGRFs).
	WID_NS_RESCAN_FILES2,       ///< Rescan files (active NewGRFs).
	WID_NS_CONTENT_DOWNLOAD,    ///< Open content download (available NewGRFs).
	WID_NS_CONTENT_DOWNLOAD2,   ///< Open content download (active NewGRFs).
	WID_NS_SHOW_REMOVE,         ///< Select active list buttons (0 = normal, 1 = simple layout).
	WID_NS_SHOW_APPLY,          ///< Select display of the buttons below the 'details'.
};

/** Widgets of the WC_MODAL_PROGRESS (WC_MODAL_PROGRESS is also used in GenerationProgressWindowWidgets). */
enum ScanProgressWidgets {
	WID_SP_PROGRESS_BAR,  ///< Simple progress bar.
	WID_SP_PROGRESS_TEXT, ///< Text explaining what is happening.
};

#endif /* WIDGETS_NEWGRF_WIDGET_H */