Files
@ r28353:bfc4ab63f376
Branch filter:
Location: cpp/openttd-patchpack/source/src/widgets/rail_widget.h
r28353:bfc4ab63f376
7.4 KiB
text/x-c
Codechange: Replace mishmash of types for widget index with WidgetID.
Indices were stored as int, but often passed around as uint/uint8_t and casts.
Now they should all use WidgetID.
Indices were stored as int, but often passed around as uint/uint8_t and casts.
Now they should all use WidgetID.
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 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 | /*
* 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 rail_widget.h Types related to the rail widgets. */
#ifndef WIDGETS_RAIL_WIDGET_H
#define WIDGETS_RAIL_WIDGET_H
/** Widgets of the #BuildRailToolbarWindow class. */
enum RailToolbarWidgets {
/* Name starts with RA instead of R, because of collision with RoadToolbarWidgets */
WID_RAT_CAPTION, ///< Caption of the window.
WID_RAT_BUILD_NS, ///< Build rail along the game view Y axis.
WID_RAT_BUILD_X, ///< Build rail along the game grid X axis.
WID_RAT_BUILD_EW, ///< Build rail along the game view X axis.
WID_RAT_BUILD_Y, ///< Build rail along the game grid Y axis.
WID_RAT_AUTORAIL, ///< Autorail tool.
WID_RAT_DEMOLISH, ///< Destroy something with dynamite!
WID_RAT_BUILD_DEPOT, ///< Build a depot.
WID_RAT_BUILD_WAYPOINT, ///< Build a waypoint.
WID_RAT_BUILD_STATION, ///< Build a station.
WID_RAT_BUILD_SIGNALS, ///< Build signals.
WID_RAT_BUILD_BRIDGE, ///< Build a bridge.
WID_RAT_BUILD_TUNNEL, ///< Build a tunnel.
WID_RAT_REMOVE, ///< Bulldozer to remove rail.
WID_RAT_CONVERT_RAIL, ///< Convert other rail to this type.
INVALID_WID_RAT = -1,
};
/** Widgets of the #BuildRailStationWindow class. */
enum BuildRailStationWidgets {
/* Name starts with BRA instead of BR, because of collision with BuildRoadStationWidgets */
WID_BRAS_PLATFORM_DIR_X, ///< Button to select '/' view.
WID_BRAS_PLATFORM_DIR_Y, ///< Button to select '\' view.
WID_BRAS_PLATFORM_NUM_1, ///< Button to select stations with a single platform.
WID_BRAS_PLATFORM_NUM_2, ///< Button to select stations with 2 platforms.
WID_BRAS_PLATFORM_NUM_3, ///< Button to select stations with 3 platforms.
WID_BRAS_PLATFORM_NUM_4, ///< Button to select stations with 4 platforms.
WID_BRAS_PLATFORM_NUM_5, ///< Button to select stations with 5 platforms.
WID_BRAS_PLATFORM_NUM_6, ///< Button to select stations with 6 platforms.
WID_BRAS_PLATFORM_NUM_7, ///< Button to select stations with 7 platforms.
WID_BRAS_PLATFORM_LEN_1, ///< Button to select single tile length station platforms.
WID_BRAS_PLATFORM_LEN_2, ///< Button to select 2 tiles length station platforms.
WID_BRAS_PLATFORM_LEN_3, ///< Button to select 3 tiles length station platforms.
WID_BRAS_PLATFORM_LEN_4, ///< Button to select 4 tiles length station platforms.
WID_BRAS_PLATFORM_LEN_5, ///< Button to select 5 tiles length station platforms.
WID_BRAS_PLATFORM_LEN_6, ///< Button to select 6 tiles length station platforms.
WID_BRAS_PLATFORM_LEN_7, ///< Button to select 7 tiles length station platforms.
WID_BRAS_PLATFORM_DRAG_N_DROP, ///< Button to enable drag and drop type station placement.
WID_BRAS_HIGHLIGHT_OFF, ///< Button for turning coverage highlighting off.
WID_BRAS_HIGHLIGHT_ON, ///< Button for turning coverage highlighting on.
WID_BRAS_COVERAGE_TEXTS, ///< Empty space for the coverage texts.
WID_BRAS_MATRIX, ///< Matrix widget displaying the available stations.
WID_BRAS_IMAGE, ///< Panel used at each cell of the matrix.
WID_BRAS_MATRIX_SCROLL, ///< Scrollbar of the matrix widget.
WID_BRAS_FILTER_CONTAINER, ///< Container for the filter text box for the station class list.
WID_BRAS_FILTER_EDITBOX, ///< Filter text box for the station class list.
WID_BRAS_SHOW_NEWST_DEFSIZE, ///< Selection for default-size button for newstation.
WID_BRAS_SHOW_NEWST_ADDITIONS, ///< Selection for newstation class selection list.
WID_BRAS_SHOW_NEWST_MATRIX, ///< Selection for newstation image matrix.
WID_BRAS_SHOW_NEWST_RESIZE, ///< Selection for panel and resize at bottom right for newstation.
WID_BRAS_SHOW_NEWST_TYPE, ///< Display of selected station type.
WID_BRAS_NEWST_LIST, ///< List with available newstation classes.
WID_BRAS_NEWST_SCROLL, ///< Scrollbar of the #WID_BRAS_NEWST_LIST.
WID_BRAS_PLATFORM_NUM_BEGIN = WID_BRAS_PLATFORM_NUM_1 - 1, ///< Helper for determining the chosen platform width.
WID_BRAS_PLATFORM_LEN_BEGIN = WID_BRAS_PLATFORM_LEN_1 - 1, ///< Helper for determining the chosen platform length.
};
/** Widgets of the #BuildSignalWindow class. */
enum BuildSignalWidgets {
WID_BS_CAPTION, ///< Caption for the Signal Selection window.
WID_BS_TOGGLE_SIZE, ///< Toggle showing advanced signal types.
WID_BS_SEMAPHORE_NORM, ///< Build a semaphore normal block signal.
WID_BS_SEMAPHORE_ENTRY, ///< Build a semaphore entry block signal.
WID_BS_SEMAPHORE_EXIT, ///< Build a semaphore exit block signal.
WID_BS_SEMAPHORE_COMBO, ///< Build a semaphore combo block signal.
WID_BS_SEMAPHORE_PBS, ///< Build a semaphore path signal.
WID_BS_SEMAPHORE_PBS_OWAY, ///< Build a semaphore one way path signal.
WID_BS_ELECTRIC_NORM, ///< Build an electric normal block signal.
WID_BS_ELECTRIC_ENTRY, ///< Build an electric entry block signal.
WID_BS_ELECTRIC_EXIT, ///< Build an electric exit block signal.
WID_BS_ELECTRIC_COMBO, ///< Build an electric combo block signal.
WID_BS_ELECTRIC_PBS, ///< Build an electric path signal.
WID_BS_ELECTRIC_PBS_OWAY, ///< Build an electric one way path signal.
WID_BS_CONVERT, ///< Convert the signal.
WID_BS_DRAG_SIGNALS_DENSITY_LABEL, ///< The current signal density.
WID_BS_DRAG_SIGNALS_DENSITY_DECREASE, ///< Decrease the signal density.
WID_BS_DRAG_SIGNALS_DENSITY_INCREASE, ///< Increase the signal density.
WID_BS_SEMAPHORE_NORM_SEL, ///< NWID_SELECTION for WID_BS_SEMAPHORE_NORM.
WID_BS_ELECTRIC_NORM_SEL, ///< NWID_SELECTION for WID_BS_ELECTRIC_NORM.
WID_BS_SEMAPHORE_ENTRY_SEL, ///< NWID_SELECTION for WID_BS_SEMAPHORE_ENTRY.
WID_BS_ELECTRIC_ENTRY_SEL, ///< NWID_SELECTION for WID_BS_ELECTRIC_ENTRY.
WID_BS_SEMAPHORE_EXIT_SEL, ///< NWID_SELECTION for WID_BS_SEMAPHORE_EXIT.
WID_BS_ELECTRIC_EXIT_SEL, ///< NWID_SELECTION for WID_BS_ELECTRIC_EXIT.
WID_BS_SEMAPHORE_COMBO_SEL, ///< NWID_SELECTION for WID_BS_SEMAPHORE_COMBO.
WID_BS_ELECTRIC_COMBO_SEL, ///< NWID_SELECTION for WID_BS_ELECTRIC_COMBO.
};
/** Widgets of the #BuildRailDepotWindow class. */
enum BuildRailDepotWidgets {
/* Name starts with BRA instead of BR, because of collision with BuildRoadDepotWidgets */
WID_BRAD_DEPOT_NE, ///< Build a depot with the entrance in the north east.
WID_BRAD_DEPOT_SE, ///< Build a depot with the entrance in the south east.
WID_BRAD_DEPOT_SW, ///< Build a depot with the entrance in the south west.
WID_BRAD_DEPOT_NW, ///< Build a depot with the entrance in the north west.
};
/** Widgets of the #BuildRailWaypointWindow class. */
enum BuildRailWaypointWidgets {
WID_BRW_FILTER, ///< Text filter.
WID_BRW_WAYPOINT_MATRIX, ///< Matrix with waypoints.
WID_BRW_WAYPOINT, ///< A single waypoint.
WID_BRW_SCROLL, ///< Scrollbar for the matrix.
WID_BRW_NAME, ///< Name of selected waypoint.
};
#endif /* WIDGETS_RAIL_WIDGET_H */
|