OpenTTD Source  14.0-beta1
road_gui.cpp File Reference
#include "stdafx.h"
#include "gui.h"
#include "window_gui.h"
#include "station_gui.h"
#include "terraform_gui.h"
#include "viewport_func.h"
#include "command_func.h"
#include "road_cmd.h"
#include "station_func.h"
#include "window_func.h"
#include "vehicle_func.h"
#include "sound_func.h"
#include "company_func.h"
#include "tunnelbridge.h"
#include "tunnelbridge_map.h"
#include "tilehighlight_func.h"
#include "company_base.h"
#include "hotkeys.h"
#include "road_gui.h"
#include "zoom_func.h"
#include "engine_base.h"
#include "strings_func.h"
#include "core/geometry_func.hpp"
#include "station_cmd.h"
#include "tunnelbridge_cmd.h"
#include "newgrf_roadstop.h"
#include "querystring_gui.h"
#include "sortlist_type.h"
#include "stringfilter_type.h"
#include "string_func.h"
#include "timer/timer.h"
#include "timer/timer_game_calendar.h"
#include "widgets/road_widget.h"
#include "table/strings.h"
#include "safeguards.h"

Go to the source code of this file.

Data Structures

struct  RoadStopGUISettings
 
struct  BuildRoadToolbarWindow
 Road toolbar window handler. More...
 
struct  BuildRoadDepotWindow
 
struct  BuildRoadStationWindow
 

Typedefs

typedef void OnButtonClick(Window *w)
 

Enumerations

enum  BuildRoadStopHotkeys { BROSHK_FOCUS_FILTER_BOX }
 Enum referring to the Hotkeys in the build road stop window. More...
 

Functions

static void ShowRVStationPicker (Window *parent, RoadStopType rs)
 
static void ShowRoadDepotPicker (Window *parent)
 
static bool IsRoadStopAvailable (const RoadStopSpec *roadstopspec, StationType type)
 Check whether a road stop type can be built. More...
 
void CcPlaySound_CONSTRUCTION_OTHER (Commands, const CommandCost &result, TileIndex tile)
 
static void PlaceRoad_Bridge (TileIndex tile, Window *w)
 Callback to start placing a bridge. More...
 
void CcBuildRoadTunnel (Commands, const CommandCost &result, TileIndex start_tile)
 Callback executed after a build road tunnel command has been called. More...
 
void ConnectRoadToStructure (TileIndex tile, DiagDirection direction)
 If required, connects a new structure to an existing road or tram by building the missing roadbit. More...
 
void CcRoadDepot (Commands, const CommandCost &result, TileIndex tile, RoadType, DiagDirection dir)
 
void CcRoadStop (Commands, const CommandCost &result, TileIndex tile, uint8_t width, uint8_t length, RoadStopType, bool is_drive_through, DiagDirection dir, RoadType, RoadStopClassID spec_class, uint16_t spec_index, StationID, bool)
 Command callback for building road stops. More...
 
static void PlaceRoadStop (TileIndex start_tile, TileIndex end_tile, RoadStopType stop_type, bool adjacent, RoadType rt, StringID err_msg)
 Place a new road stop. More...
 
static void PlaceRoad_BusStation (TileIndex tile)
 Callback for placing a bus station. More...
 
static void PlaceRoad_TruckStation (TileIndex tile)
 Callback for placing a truck station. More...
 
static void ToggleRoadButton_Remove (Window *w)
 Toggles state of the Remove button of Build road toolbar. More...
 
static bool RoadToolbar_CtrlChanged (Window *w)
 Updates the Remove button because of Ctrl state change. More...
 
WindowShowBuildRoadToolbar (RoadType roadtype)
 Open the build road toolbar window. More...
 
WindowShowBuildRoadScenToolbar (RoadType roadtype)
 Show the road building toolbar in the scenario editor. More...
 
void InitializeRoadGui ()
 
void InitializeRoadGUI ()
 I really don't know why rail_gui.cpp has this too, shouldn't be included in the other one?
 
DropDownList GetRoadTypeDropDownList (RoadTramTypes rtts, bool for_replacement, bool all_option)
 
DropDownList GetScenRoadTypeDropDownList (RoadTramTypes rtts)
 

Variables

static bool _remove_button_clicked
 
static bool _one_way_button_clicked
 
static Axis _place_road_dir
 
static bool _place_road_start_half_x
 
static bool _place_road_start_half_y
 
static bool _place_road_end_half
 
static RoadType _cur_roadtype
 
static DiagDirection _road_depot_orientation
 
static RoadStopGUISettings _roadstop_gui_settings
 
static constexpr NWidgetPart _nested_build_road_widgets []
 
static WindowDesc _build_road_desc (__FILE__, __LINE__, WDP_ALIGN_TOOLBAR, "toolbar_road", 0, 0, WC_BUILD_TOOLBAR, WC_NONE, WDF_CONSTRUCTION, std::begin(_nested_build_road_widgets), std::end(_nested_build_road_widgets), &BuildRoadToolbarWindow::road_hotkeys)
 
static constexpr NWidgetPart _nested_build_tramway_widgets []
 
static WindowDesc _build_tramway_desc (__FILE__, __LINE__, WDP_ALIGN_TOOLBAR, "toolbar_tramway", 0, 0, WC_BUILD_TOOLBAR, WC_NONE, WDF_CONSTRUCTION, std::begin(_nested_build_tramway_widgets), std::end(_nested_build_tramway_widgets), &BuildRoadToolbarWindow::tram_hotkeys)
 
static constexpr NWidgetPart _nested_build_road_scen_widgets []
 
static WindowDesc _build_road_scen_desc (__FILE__, __LINE__, WDP_AUTO, "toolbar_road_scen", 0, 0, WC_SCEN_BUILD_TOOLBAR, WC_NONE, WDF_CONSTRUCTION, std::begin(_nested_build_road_scen_widgets), std::end(_nested_build_road_scen_widgets), &BuildRoadToolbarWindow::road_hotkeys)
 
static constexpr NWidgetPart _nested_build_tramway_scen_widgets []
 
static WindowDesc _build_tramway_scen_desc (__FILE__, __LINE__, WDP_AUTO, "toolbar_tram_scen", 0, 0, WC_SCEN_BUILD_TOOLBAR, WC_NONE, WDF_CONSTRUCTION, std::begin(_nested_build_tramway_scen_widgets), std::end(_nested_build_tramway_scen_widgets), &BuildRoadToolbarWindow::tram_hotkeys)
 
static constexpr NWidgetPart _nested_build_road_depot_widgets []
 
static WindowDesc _build_road_depot_desc (__FILE__, __LINE__, WDP_AUTO, nullptr, 0, 0, WC_BUILD_DEPOT, WC_BUILD_TOOLBAR, WDF_CONSTRUCTION, std::begin(_nested_build_road_depot_widgets), std::end(_nested_build_road_depot_widgets))
 
static constexpr NWidgetPart _nested_road_station_picker_widgets []
 Widget definition of the build road station window.
 
static WindowDesc _road_station_picker_desc (__FILE__, __LINE__, WDP_AUTO, "build_station_road", 0, 0, WC_BUS_STATION, WC_BUILD_TOOLBAR, WDF_CONSTRUCTION, std::begin(_nested_road_station_picker_widgets), std::end(_nested_road_station_picker_widgets))
 
static constexpr NWidgetPart _nested_tram_station_picker_widgets []
 Widget definition of the build tram station window.
 
static WindowDesc _tram_station_picker_desc (__FILE__, __LINE__, WDP_AUTO, "build_station_tram", 0, 0, WC_BUS_STATION, WC_BUILD_TOOLBAR, WDF_CONSTRUCTION, std::begin(_nested_tram_station_picker_widgets), std::end(_nested_tram_station_picker_widgets))
 

Detailed Description

GUI for building roads.

Definition in file road_gui.cpp.

Enumeration Type Documentation

◆ BuildRoadStopHotkeys

Enum referring to the Hotkeys in the build road stop window.

Enumerator
BROSHK_FOCUS_FILTER_BOX 

Focus the edit box for editing the filter string.

Definition at line 1095 of file road_gui.cpp.

Function Documentation

◆ CcBuildRoadTunnel()

void CcBuildRoadTunnel ( Commands  ,
const CommandCost result,
TileIndex  start_tile 
)

Callback executed after a build road tunnel command has been called.

Parameters
resultWhether the build succeeded.
start_tileStarting tile of the tunnel.

Definition at line 127 of file road_gui.cpp.

◆ CcRoadStop()

void CcRoadStop ( Commands  ,
const CommandCost result,
TileIndex  tile,
uint8_t  width,
uint8_t  length,
RoadStopType  ,
bool  is_drive_through,
DiagDirection  dir,
RoadType  ,
RoadStopClassID  spec_class,
uint16_t  spec_index,
StationID  ,
bool   
)

Command callback for building road stops.

Parameters
resultResult of the build road stop command.
tileStart tile.
widthWidth of the road stop.
lengthLength of the road stop.
is_drive_throughFalse for normal stops, true for drive-through.
dirEntrance direction (DiagDirection) for normal stops. Converted to the axis for drive-through stops.
spec_classRoad stop spec class.
spec_indexRoad stop spec index.
See also
CmdBuildRoadStop

Definition at line 181 of file road_gui.cpp.

◆ ConnectRoadToStructure()

void ConnectRoadToStructure ( TileIndex  tile,
DiagDirection  direction 
)

If required, connects a new structure to an existing road or tram by building the missing roadbit.

Parameters
tileTile containing the structure to connect.
directionDirection to check.

Definition at line 149 of file road_gui.cpp.

References GetRoadBits(), IsNormalRoadTile(), and TileOffsByDiagDir().

◆ IsRoadStopAvailable()

static bool IsRoadStopAvailable ( const RoadStopSpec roadstopspec,
StationType  type 
)
static

Check whether a road stop type can be built.

Returns
true if building is allowed.

Definition at line 78 of file road_gui.cpp.

References HasBit(), and RSF_BUILD_MENU_ROAD_ONLY.

◆ PlaceRoad_Bridge()

static void PlaceRoad_Bridge ( TileIndex  tile,
Window w 
)
static

Callback to start placing a bridge.

Parameters
tileStart tile of the bridge.

Definition at line 110 of file road_gui.cpp.

References DDSP_BUILD_BRIDGE, GetOtherTunnelBridgeEnd(), IsBridgeTile(), Window::OnPlaceMouseUp(), VPM_X_OR_Y, and VpStartPlaceSizing().

◆ PlaceRoad_BusStation()

static void PlaceRoad_BusStation ( TileIndex  tile)
static

Callback for placing a bus station.

Parameters
tilePosition to place the station.

Definition at line 241 of file road_gui.cpp.

References _remove_button_clicked, DDSP_REMOVE_BUSSTOP, VPM_X_AND_Y, and VpStartPlaceSizing().

◆ PlaceRoad_TruckStation()

static void PlaceRoad_TruckStation ( TileIndex  tile)
static

Callback for placing a truck station.

Parameters
tilePosition to place the station.

Definition at line 259 of file road_gui.cpp.

References _remove_button_clicked, DDSP_REMOVE_TRUCKSTOP, VPM_X_AND_Y, and VpStartPlaceSizing().

◆ PlaceRoadStop()

static void PlaceRoadStop ( TileIndex  start_tile,
TileIndex  end_tile,
RoadStopType  stop_type,
bool  adjacent,
RoadType  rt,
StringID  err_msg 
)
static

Place a new road stop.

Parameters
start_tileFirst tile of the area.
end_tileLast tile of the area.
stop_typeType of stop (bus/truck).
adjacentAllow stations directly adjacent to other stations.
rtThe roadtypes.
err_msgError message to show.
See also
CcRoadStop()

Definition at line 215 of file road_gui.cpp.

◆ RoadToolbar_CtrlChanged()

static bool RoadToolbar_CtrlChanged ( Window w)
static

Updates the Remove button because of Ctrl state change.

Parameters
wwindow the button belongs to
Returns
true iff the remove button was changed

Definition at line 292 of file road_gui.cpp.

References Window::IsWidgetDisabled(), Window::IsWidgetLowered(), ToggleRoadButton_Remove(), WID_ROT_AUTOROAD, WID_ROT_REMOVE, and WID_ROT_ROAD_X.

Referenced by BuildRoadToolbarWindow::OnCTRLStateChange().

◆ ShowBuildRoadScenToolbar()

Window* ShowBuildRoadScenToolbar ( RoadType  roadtype)

Show the road building toolbar in the scenario editor.

Returns
The just opened toolbar, or nullptr if the toolbar was already open.

Definition at line 997 of file road_gui.cpp.

References CloseWindowById(), TRANSPORT_ROAD, and WC_SCEN_BUILD_TOOLBAR.

◆ ShowBuildRoadToolbar()

Window* ShowBuildRoadToolbar ( RoadType  roadtype)

Open the build road toolbar window.

If the terraform toolbar is linked to the toolbar, that window is also opened.

Returns
newly opened road toolbar, or nullptr if the toolbar could not be opened.

Definition at line 910 of file road_gui.cpp.

References _local_company, CloseWindowByClass(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::IsValidID(), ValParamRoadType(), and WC_BUILD_TOOLBAR.

◆ ToggleRoadButton_Remove()

static void ToggleRoadButton_Remove ( Window w)
static

Toggles state of the Remove button of Build road toolbar.

Parameters
wwindow the button belongs to

Definition at line 279 of file road_gui.cpp.

References _remove_button_clicked, Window::IsWidgetLowered(), Window::SetWidgetDirty(), Window::ToggleWidgetLoweredState(), and WID_ROT_REMOVE.

Referenced by RoadToolbar_CtrlChanged().

Variable Documentation

◆ _nested_build_road_depot_widgets

constexpr NWidgetPart _nested_build_road_depot_widgets[]
staticconstexpr
Initial value:
= {
NWidget(WWT_CLOSEBOX, COLOUR_DARK_GREEN),
NWidget(WWT_CAPTION, COLOUR_DARK_GREEN, WID_BROD_CAPTION), SetDataTip(STR_BUILD_DEPOT_ROAD_ORIENTATION_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_PANEL, COLOUR_DARK_GREEN),
NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_BROD_DEPOT_NW), SetMinimalSize(66, 50), SetFill(0, 0), SetDataTip(0x0, STR_BUILD_DEPOT_ROAD_ORIENTATION_SELECT_TOOLTIP),
NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_BROD_DEPOT_SW), SetMinimalSize(66, 50), SetFill(0, 0), SetDataTip(0x0, STR_BUILD_DEPOT_ROAD_ORIENTATION_SELECT_TOOLTIP),
NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_BROD_DEPOT_NE), SetMinimalSize(66, 50), SetFill(0, 0), SetDataTip(0x0, STR_BUILD_DEPOT_ROAD_ORIENTATION_SELECT_TOOLTIP),
NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_BROD_DEPOT_SE), SetMinimalSize(66, 50), SetFill(0, 0), SetDataTip(0x0, STR_BUILD_DEPOT_ROAD_ORIENTATION_SELECT_TOOLTIP),
}

Definition at line 1063 of file road_gui.cpp.

◆ _nested_build_road_scen_widgets

constexpr NWidgetPart _nested_build_road_scen_widgets[]
staticconstexpr
Initial value:
= {
NWidget(WWT_CLOSEBOX, COLOUR_DARK_GREEN),
NWidget(WWT_CAPTION, COLOUR_DARK_GREEN, WID_ROT_CAPTION), SetDataTip(STR_JUST_STRING2, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS), SetTextStyle(TC_WHITE),
NWidget(WWT_STICKYBOX, COLOUR_DARK_GREEN),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_ROAD_X),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_ROAD_X_DIR, STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_ROAD_Y),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_ROAD_Y_DIR, STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_AUTOROAD),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_AUTOROAD, STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOROAD),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_DEMOLISH),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_DYNAMITE, STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC),
NWidget(WWT_PANEL, COLOUR_DARK_GREEN, -1), SetMinimalSize(0, 22), SetFill(1, 1), EndContainer(),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_ONE_WAY),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_ROAD_ONE_WAY, STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_BUILD_BRIDGE),
SetFill(0, 1), SetMinimalSize(43, 22), SetDataTip(SPR_IMG_BRIDGE, STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_BUILD_TUNNEL),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_ROAD_TUNNEL, STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_REMOVE),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_REMOVE, STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_CONVERT_ROAD),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_CONVERT_ROAD, STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_ROAD),
}

Definition at line 921 of file road_gui.cpp.

◆ _nested_build_tramway_scen_widgets

constexpr NWidgetPart _nested_build_tramway_scen_widgets[]
staticconstexpr
Initial value:
= {
NWidget(WWT_CLOSEBOX, COLOUR_DARK_GREEN),
NWidget(WWT_CAPTION, COLOUR_DARK_GREEN, WID_ROT_CAPTION), SetDataTip(STR_JUST_STRING2, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS), SetTextStyle(TC_WHITE),
NWidget(WWT_STICKYBOX, COLOUR_DARK_GREEN),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_ROAD_X),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_TRAMWAY_X_DIR, STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_ROAD_Y),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_TRAMWAY_Y_DIR, STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_AUTOROAD),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_AUTOTRAM, STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOTRAM),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_DEMOLISH),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_DYNAMITE, STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC),
NWidget(WWT_PANEL, COLOUR_DARK_GREEN, -1), SetMinimalSize(0, 22), SetFill(1, 1), EndContainer(),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_BUILD_BRIDGE),
SetFill(0, 1), SetMinimalSize(43, 22), SetDataTip(SPR_IMG_BRIDGE, STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_BUILD_TUNNEL),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_ROAD_TUNNEL, STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_REMOVE),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_REMOVE, STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_ROT_CONVERT_ROAD),
SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_CONVERT_ROAD, STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_TRAM),
}

Definition at line 958 of file road_gui.cpp.

SetFill
constexpr NWidgetPart SetFill(uint16_t fill_x, uint16_t fill_y)
Widget part function for setting filling.
Definition: widget_type.h:1141
WID_ROT_BUILD_BRIDGE
@ WID_ROT_BUILD_BRIDGE
Build bridge.
Definition: road_widget.h:25
WID_ROT_DEMOLISH
@ WID_ROT_DEMOLISH
Demolish.
Definition: road_widget.h:20
WWT_STICKYBOX
@ WWT_STICKYBOX
Sticky box (at top-right of a window, after WWT_DEFSIZEBOX)
Definition: widget_type.h:68
WWT_CAPTION
@ WWT_CAPTION
Window caption (window title between closebox and stickybox)
Definition: widget_type.h:63
WWT_IMGBTN
@ WWT_IMGBTN
(Toggle) Button with image
Definition: widget_type.h:54
WID_BROD_DEPOT_NW
@ WID_BROD_DEPOT_NW
Depot with NW entry.
Definition: road_widget.h:40
NWID_HORIZONTAL
@ NWID_HORIZONTAL
Horizontal container.
Definition: widget_type.h:77
NWID_HORIZONTAL_LTR
@ NWID_HORIZONTAL_LTR
Horizontal container that doesn't change the order of the widgets for RTL languages.
Definition: widget_type.h:78
EndContainer
constexpr NWidgetPart EndContainer()
Widget part function for denoting the end of a container (horizontal, vertical, WWT_FRAME,...
Definition: widget_type.h:1151
WID_BROD_DEPOT_SE
@ WID_BROD_DEPOT_SE
Depot with SE entry.
Definition: road_widget.h:38
WID_BROD_DEPOT_SW
@ WID_BROD_DEPOT_SW
Depot with SW entry.
Definition: road_widget.h:39
SetPadding
constexpr NWidgetPart SetPadding(uint8_t top, uint8_t right, uint8_t bottom, uint8_t left)
Widget part function for setting additional space around a widget.
Definition: widget_type.h:1188
WID_ROT_ROAD_Y
@ WID_ROT_ROAD_Y
Build road in y-direction.
Definition: road_widget.h:18
WID_ROT_BUILD_TUNNEL
@ WID_ROT_BUILD_TUNNEL
Build tunnel.
Definition: road_widget.h:26
WID_ROT_REMOVE
@ WID_ROT_REMOVE
Remove road.
Definition: road_widget.h:27
WID_BROD_DEPOT_NE
@ WID_BROD_DEPOT_NE
Depot with NE entry.
Definition: road_widget.h:37
NWidget
constexpr NWidgetPart NWidget(WidgetType tp, Colours col, WidgetID idx=-1)
Widget part function for starting a new 'real' widget.
Definition: widget_type.h:1258
WID_ROT_ONE_WAY
@ WID_ROT_ONE_WAY
Build one-way road.
Definition: road_widget.h:24
NWID_VERTICAL
@ NWID_VERTICAL
Vertical container.
Definition: widget_type.h:79
WidgetDimensions::unscaled
static const WidgetDimensions unscaled
Unscaled widget dimensions.
Definition: window_gui.h:67
WWT_CLOSEBOX
@ WWT_CLOSEBOX
Close box (at top-left of a window)
Definition: widget_type.h:71
SetPIP
constexpr NWidgetPart SetPIP(uint8_t pre, uint8_t inter, uint8_t post)
Widget part function for setting a pre/inter/post spaces.
Definition: widget_type.h:1220
WID_ROT_ROAD_X
@ WID_ROT_ROAD_X
Build road in x-direction.
Definition: road_widget.h:17
WWT_PANEL
@ WWT_PANEL
Simple depressed panel.
Definition: widget_type.h:52
WID_ROT_AUTOROAD
@ WID_ROT_AUTOROAD
Autorail.
Definition: road_widget.h:19
WID_ROT_CAPTION
@ WID_ROT_CAPTION
Caption of the window.
Definition: road_widget.h:16
SetMinimalSize
constexpr NWidgetPart SetMinimalSize(int16_t x, int16_t y)
Widget part function for setting the minimal size.
Definition: widget_type.h:1097
SetPIPRatio
constexpr NWidgetPart SetPIPRatio(uint8_t ratio_pre, uint8_t ratio_inter, uint8_t ratio_post)
Widget part function for setting a pre/inter/post ratio.
Definition: widget_type.h:1232
WID_BROD_CAPTION
@ WID_BROD_CAPTION
Caption of the window.
Definition: road_widget.h:36
SetDataTip
constexpr NWidgetPart SetDataTip(uint32_t data, StringID tip)
Widget part function for setting the data and tooltip.
Definition: widget_type.h:1162
SetTextStyle
constexpr NWidgetPart SetTextStyle(TextColour colour, FontSize size=FS_NORMAL)
Widget part function for setting the text style.
Definition: widget_type.h:1120
WWT_TEXTBTN
@ WWT_TEXTBTN
(Toggle) Button with text
Definition: widget_type.h:57
WID_ROT_CONVERT_ROAD
@ WID_ROT_CONVERT_ROAD
Convert road.
Definition: road_widget.h:28