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 ai_widget.h Types related to the ai widgets. */
9 
10 #ifndef WIDGETS_AI_WIDGET_H
11 #define WIDGETS_AI_WIDGET_H
12 
13 #include "../company_type.h"
14 #include "../textfile_type.h"
15 
16 /** Widgets of the #AIListWindow class. */
17 enum AIListWidgets {
18 	WID_AIL_CAPTION,   ///< Caption of the window.
19 	WID_AIL_LIST,      ///< The matrix with all available AIs.
20 	WID_AIL_SCROLLBAR, ///< Scrollbar next to the AI list.
21 	WID_AIL_INFO_BG,   ///< Panel to draw some AI information on.
22 	WID_AIL_ACCEPT,    ///< Accept button.
23 	WID_AIL_CANCEL,    ///< Cancel button.
24 };
25 
26 /** Widgets of the #AISettingsWindow class. */
27 enum AISettingsWidgets {
28 	WID_AIS_CAPTION,    ///< Caption of the window.
29 	WID_AIS_BACKGROUND, ///< Panel to draw the settings on.
30 	WID_AIS_SCROLLBAR,  ///< Scrollbar to scroll through all settings.
31 	WID_AIS_ACCEPT,     ///< Accept button.
32 	WID_AIS_RESET,      ///< Reset button.
33 };
34 
35 /** Widgets of the #AIConfigWindow class. */
36 enum AIConfigWidgets {
37 	WID_AIC_BACKGROUND,       ///< Window background.
38 	WID_AIC_DECREASE,         ///< Decrease the number of AIs.
39 	WID_AIC_INCREASE,         ///< Increase the number of AIs.
40 	WID_AIC_NUMBER,           ///< Number of AIs.
41 	WID_AIC_GAMELIST,         ///< List with current selected GameScript.
42 	WID_AIC_LIST,             ///< List with currently selected AIs.
43 	WID_AIC_SCROLLBAR,        ///< Scrollbar to scroll through the selected AIs.
44 	WID_AIC_MOVE_UP,          ///< Move up button.
45 	WID_AIC_MOVE_DOWN,        ///< Move down button.
46 	WID_AIC_CHANGE,           ///< Select another AI button.
47 	WID_AIC_CONFIGURE,        ///< Change AI settings button.
48 	WID_AIC_CLOSE,            ///< Close window button.
49 	WID_AIC_TEXTFILE,         ///< Open AI readme, changelog (+1) or license (+2).
50 	WID_AIC_CONTENT_DOWNLOAD = WID_AIC_TEXTFILE + TFT_END, ///< Download content button.
51 };
52 
53 /** Widgets of the #AIDebugWindow class. */
54 enum AIDebugWidgets {
55 	WID_AID_VIEW,                 ///< The row of company buttons.
56 	WID_AID_NAME_TEXT,            ///< Name of the current selected.
57 	WID_AID_SETTINGS,             ///< Settings button.
58 	WID_AID_SCRIPT_GAME,          ///< Game Script button.
59 	WID_AID_RELOAD_TOGGLE,        ///< Reload button.
60 	WID_AID_LOG_PANEL,            ///< Panel where the log is in.
61 	WID_AID_SCROLLBAR,            ///< Scrollbar of the log panel.
62 	WID_AID_COMPANY_BUTTON_START, ///< Buttons in the VIEW.
63 	WID_AID_COMPANY_BUTTON_END = WID_AID_COMPANY_BUTTON_START + MAX_COMPANIES - 1, ///< Last possible button in the VIEW.
64 	WID_AID_BREAK_STRING_WIDGETS, ///< The panel to handle the breaking on string.
65 	WID_AID_BREAK_STR_ON_OFF_BTN, ///< Enable breaking on string.
66 	WID_AID_BREAK_STR_EDIT_BOX,   ///< Edit box for the string to break on.
67 	WID_AID_MATCH_CASE_BTN,       ///< Checkbox to use match caching or not.
68 	WID_AID_CONTINUE_BTN,         ///< Continue button.
69 };
70 
71 #endif /* WIDGETS_AI_WIDGET_H */
72