OpenTTD Source 20241224-master-gf74b0cf984
window_type.h
Go to the documentation of this file.
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
10#ifndef WINDOW_TYPE_H
11#define WINDOW_TYPE_H
12
18using WidgetID = int;
19
42
46
52
59
65
74
81
87
93
99
105
111
117
124
131
138
139
145
151
157
163
169
170
176
182
188
189
195
201
207
213
219
225
231
237
243
249
255
261
267
273
279
285
291
297
303
309
315
321
327
328
334
340
346
352
358
364
370
371
377
383
390
396
404
410
416
424
430
436
442
443
449
456
463
470
471
479
485
492
498
504
510
516
522
528
534
540
546
552
558
564
570
576
582
588
589
595
601
602
608
614
625
631
637
643
644
650
656
662
668
669
675
681
687
693
699
705
711
717
718 /*
719 * Help and manuals window; %Window numbers:
720 * - 0 = #HelpWindowWidgets
721 */
722 WC_HELPWIN,
723
724 WC_INVALID = 0xFFFF,
725};
726
736
737struct Window;
738
741
747
748#endif /* WINDOW_TYPE_H */
Data structure for an opened window.
Definition window_gui.h:273
const NWID * GetWidget(WidgetID widnum) const
Get the nested widget with number widnum from the nested widget tree.
Definition window_gui.h:977
int WidgetID
Widget ID.
Definition window_type.h:18
WindowNumberEnum
Window numbers.
Definition window_type.h:21
@ WN_QUERY_STRING
Query string.
Definition window_type.h:29
@ WN_NETWORK_WINDOW_CONTENT_LIST
Network content list.
Definition window_type.h:36
@ WN_GAME_OPTIONS_NEWGRF_STATE
NewGRF settings.
Definition window_type.h:25
@ WN_NETWORK_STATUS_WINDOW_JOIN
Network join status.
Definition window_type.h:39
@ WN_GAME_OPTIONS_ABOUT
About window.
Definition window_type.h:24
@ WN_CONFIRM_POPUP_QUERY_BOOTSTRAP
Query popup confirm for bootstrap.
Definition window_type.h:33
@ WN_GAME_OPTIONS_GS
GS settings.
Definition window_type.h:23
@ WN_NETWORK_STATUS_WINDOW_CONTENT_DOWNLOAD
Network content download status.
Definition window_type.h:40
@ WN_QUERY_STRING_SIGN
Query string for signs.
Definition window_type.h:30
@ WN_NETWORK_WINDOW_GAME
Network game window.
Definition window_type.h:35
@ WN_CONFIRM_POPUP_QUERY
Query popup confirm.
Definition window_type.h:32
@ WN_GAME_OPTIONS_GAME_OPTIONS
Game options.
Definition window_type.h:26
@ WN_GAME_OPTIONS_AI
AI settings.
Definition window_type.h:22
@ WN_NETWORK_WINDOW_START
Network start server.
Definition window_type.h:37
@ WN_GAME_OPTIONS_GAME_SETTINGS
Game settings.
Definition window_type.h:27
int32_t WindowNumber
Number to differentiate different windows of the same class.
EventState
State of handling an event.
@ ES_HANDLED
The passed event is handled.
@ ES_NOT_HANDLED
The passed event is not handled.
WindowClass
Window classes.
Definition window_type.h:44
@ WC_PERFORMANCE_HISTORY
Performance history graph; Window numbers:
@ WC_INVALID
Invalid window.
@ WC_LAND_INFO
Land info window; Window numbers:
@ WC_TOWN_AUTHORITY
Town authority; Window numbers:
@ WC_OSK
On Screen Keyboard; Window numbers:
@ WC_FRAMETIME_GRAPH
Frame time graph; Window numbers:
@ WC_WAYPOINT_VIEW
Waypoint view; Window numbers:
@ WC_COMPANY_LEAGUE
Company league window; Window numbers:
@ WC_CONSOLE
Console; Window numbers:
@ WC_SET_DATE
Set date; Window numbers:
@ WC_BUILD_STATION
Build station; Window numbers:
@ WC_NEWS_WINDOW
News window; Window numbers:
@ WC_HIGHSCORE
Highscore; Window numbers:
@ WC_BUILD_OBJECT
Build object; Window numbers:
@ WC_SIGN_LIST
Sign list; Window numbers:
@ WC_BUY_COMPANY
Buyout company (merger); Window numbers:
@ WC_SPRITE_ALIGNER
Sprite aligner (debug); Window numbers:
@ WC_COMPANY_INFRASTRUCTURE
Company infrastructure overview; Window numbers:
@ WC_PERFORMANCE_DETAIL
Performance detail window; Window numbers:
@ WC_ENDSCREEN
Endscreen; Window numbers:
@ WC_COMPANY_COLOUR
Company colour selection; Window numbers:
@ WC_PAYMENT_RATES
Payment rates graph; Window numbers:
@ WC_GRAPH_LEGEND
Legend for graphs; Window numbers:
@ WC_STATION_LIST
Station list; Window numbers:
@ WC_ROADVEH_LIST
Road vehicle list; Window numbers:
@ WC_LINKGRAPH_LEGEND
Linkgraph legend; Window numbers:
@ WC_STATUS_BAR
Statusbar (at the bottom of your screen); Window numbers:
Definition window_type.h:64
@ WC_FOUND_TOWN
Found a town; Window numbers:
@ WC_EXTRA_VIEWPORT
Extra viewport; Window numbers:
@ WC_GOAL_QUESTION
Popup with a set of buttons, designed to ask the user a question from a GameScript.
@ WC_INDUSTRY_DIRECTORY
Industry directory; Window numbers:
@ WC_VEHICLE_ORDERS
Vehicle orders; Window numbers:
@ WC_SEND_NETWORK_MSG
Chatbox; Window numbers:
@ WC_ERRMSG
Error message; Window numbers:
@ WC_BUILD_HOUSE
Build house; Window numbers:
@ WC_SCEN_BUILD_TOOLBAR
Scenario build toolbar; Window numbers:
Definition window_type.h:80
@ WC_BUILD_TOOLBAR
Build toolbar; Window numbers:
Definition window_type.h:73
@ WC_SELECT_GAME
Select game window; Window numbers:
@ WC_NETWORK_ASK_RELAY
Network ask relay window; Window numbers:
@ WC_VEHICLE_DEPOT
Depot view; Window numbers:
@ WC_SCRIPT_SETTINGS
Script settings; Window numbers:
@ WC_REPLACE_VEHICLE
Replace vehicle window; Window numbers:
@ WC_NONE
No window, redirects to WC_MAIN_WINDOW.
Definition window_type.h:45
@ WC_SCEN_LAND_GEN
Landscape generation (in Scenario Editor); Window numbers:
@ WC_SELECT_STATION
Select station (when joining stations); Window numbers:
@ WC_SCRIPT_LIST
Scripts list; Window numbers:
@ WC_CHEATS
Cheat window; Window numbers:
@ WC_SAVE_PRESET
Save preset; Window numbers:
@ WC_INDUSTRY_CARGOES
Industry cargoes chain; Window numbers:
@ WC_SHIPS_LIST
Ships list; Window numbers:
@ WC_MESSAGE_HISTORY
News history list; Window numbers:
@ WC_GOALS_LIST
Goals list; Window numbers:
@ WC_TRANSPARENCY_TOOLBAR
Transparency toolbar; Window numbers:
Definition window_type.h:92
@ WC_STATION_VIEW
Station view; Window numbers:
@ WC_MUSIC_TRACK_SELECTION
Music track selection; Window numbers:
@ WC_BUILD_SIGNAL
Build signal toolbar; Window numbers:
Definition window_type.h:98
@ WC_OPERATING_PROFIT
Operating profit graph; Window numbers:
@ WC_MUSIC_WINDOW
Music window; Window numbers:
@ WC_BUILD_DEPOT
Build depot; Window numbers:
@ WC_INDUSTRY_PRODUCTION
Industry production history graph; Window numbers:
@ WC_ENGINE_PREVIEW
Engine preview window; Window numbers:
@ WC_CLIENT_LIST
Client list; Window numbers:
@ WC_CONFIRM_POPUP_QUERY
Popup with confirm question; Window numbers:
@ WC_GENERATE_LANDSCAPE
Generate landscape (newgame); Window numbers:
@ WC_CUSTOM_CURRENCY
Custom currency; Window numbers:
@ WC_MAIN_WINDOW
Main window; Window numbers:
Definition window_type.h:51
@ WC_TRUCK_STATION
Build truck station; Window numbers:
@ WC_TRAINS_LIST
Trains list; Window numbers:
@ WC_TOWN_VIEW
Town view; Window numbers:
@ WC_GAME_OPTIONS
Game options window; Window numbers:
@ WC_NETWORK_WINDOW
Network window; Window numbers:
@ WC_INDUSTRY_VIEW
Industry view; Window numbers:
@ WC_FINANCES
Finances of a company; Window numbers:
@ WC_SCRIPT_DEBUG
Script debug window; Window numbers:
@ WC_TEXTFILE
textfile; Window numbers:
@ WC_INCOME_GRAPH
Income graph; Window numbers:
@ WC_TOWN_DIRECTORY
Town directory; Window numbers:
@ WC_VEHICLE_REFIT
Vehicle refit; Window numbers:
@ WC_DROPDOWN_MENU
Drop down menu; Window numbers:
@ WC_NEWGRF_INSPECT
NewGRF inspect (debug); Window numbers:
@ WC_BUS_STATION
Build bus station; Window numbers:
@ WC_QUERY_STRING
Query string window; Window numbers:
@ WC_BUILD_WAYPOINT
Build waypoint; Window numbers:
@ WC_SMALLMAP
Small map; Window numbers:
@ WC_COMPANY_MANAGER_FACE
Alter company face window; Window numbers:
@ WC_BOOTSTRAP
Bootstrap; Window numbers:
@ WC_SAVELOAD
Saveload window; Window numbers:
@ WC_DELIVERED_CARGO
Delivered cargo graph; Window numbers:
@ WC_FRAMERATE_DISPLAY
Framerate display; Window numbers:
@ WC_GRF_PARAMETERS
NewGRF parameters; Window numbers:
@ WC_COMPANY_VALUE
Company value graph; Window numbers:
@ WC_BUILD_TREES
Build trees toolbar; Window numbers:
Definition window_type.h:86
@ WC_STORY_BOOK
Story book; Window numbers:
@ WC_MODAL_PROGRESS
Progress report of landscape generation; Window numbers:
@ WC_MAIN_TOOLBAR
Main toolbar (the long bar at the top); Window numbers:
Definition window_type.h:58
@ WC_TOOLTIPS
Tooltip window; Window numbers:
@ WC_SUBSIDIES_LIST
Subsidies list; Window numbers:
@ WC_VEHICLE_DETAILS
Vehicle details; Window numbers:
@ WC_COMPANY
Company view; Window numbers:
@ WC_BUILD_BRIDGE
Build bridge; Window numbers:
@ WC_NETWORK_STATUS_WINDOW
Network status window; Window numbers:
@ WC_VEHICLE_VIEW
Vehicle view; Window numbers:
@ WC_BUILD_VEHICLE
Build vehicle; Window numbers:
@ WC_BUILD_INDUSTRY
Build industry; Window numbers:
@ WC_VEHICLE_TIMETABLE
Vehicle timetable; Window numbers:
@ WC_AIRCRAFT_LIST
Aircraft list; Window numbers:
@ WC_SCREENSHOT
Screenshot window; Window numbers:
@ WC_NETWORK_ASK_SURVEY
Network ask survey window; Window numbers:
GameOptionsInvalidationData
Data value for Window::OnInvalidateData() of windows with class WC_GAME_OPTIONS.
@ GOID_NEWGRF_CURRENT_LOADED
The current list of active NewGRF has been loaded.
@ GOID_NEWGRF_RESCANNED
NewGRFs were just rescanned.
@ GOID_NEWGRF_CHANGES_APPLIED
The active NewGRF list changes have been applied.
@ GOID_NEWGRF_CHANGES_MADE
Changes have been made to a given NewGRF either through the palette or its parameters.
@ GOID_NEWGRF_LIST_EDITED
List of active NewGRFs is being edited.