| OpenTTD
    | 
Graphical user interface for bridge construction. More...
#include "stdafx.h"#include "error.h"#include "command_func.h"#include "rail.h"#include "strings_func.h"#include "window_func.h"#include "sound_func.h"#include "gfx_func.h"#include "tunnelbridge.h"#include "sortlist_type.h"#include "widgets/dropdown_func.h"#include "core/geometry_func.hpp"#include "cmd_helper.h"#include "tunnelbridge_map.h"#include "road_gui.h"#include "widgets/bridge_widget.h"#include "table/strings.h"#include "safeguards.h"Go to the source code of this file.
| Data Structures | |
| struct | BuildBridgeData | 
| Carriage for the data we need if we want to build a bridge.  More... | |
| class | BuildBridgeWindow | 
| Window class for handling the bridge-build GUI.  More... | |
| Typedefs | |
| typedef GUIList< BuildBridgeData > | GUIBridgeList | 
| List of bridges, used in BuildBridgeWindow. | |
| Functions | |
| void | CcBuildBridge (const CommandCost &result, TileIndex end_tile, uint32 p1, uint32 p2) | 
| Callback executed after a build Bridge CMD has been called. | |
| void | ShowBuildBridgeWindow (TileIndex start, TileIndex end, TransportType transport_type, byte road_rail_type) | 
| Prepare the data for the build a bridge window. | |
| Variables | |
| static BridgeType | _last_railbridge_type = 0 | 
| The type of the last built rail bridge. | |
| static BridgeType | _last_roadbridge_type = 0 | 
| The type of the last built road bridge. | |
| static const NWidgetPart | _nested_build_bridge_widgets [] | 
| Widgets of the bridge gui. | |
| static WindowDesc | _build_bridge_desc (WDP_AUTO,"build_bridge", 200, 114, WC_BUILD_BRIDGE, WC_BUILD_TOOLBAR, WDF_CONSTRUCTION, _nested_build_bridge_widgets, lengthof(_nested_build_bridge_widgets)) | 
| Window definition for the rail bridge selection window. | |
Graphical user interface for bridge construction.
Definition in file bridge_gui.cpp.
| void CcBuildBridge | ( | const CommandCost & | result, | 
| TileIndex | end_tile, | ||
| uint32 | p1, | ||
| uint32 | p2 | ||
| ) | 
Callback executed after a build Bridge CMD has been called.
| result | Whether the build succeeded | 
| end_tile | End tile of the bridge. | 
| p1 | packed start tile coords (~ dx) | 
| p2 | various bitstuffed elements 
 | 
Definition at line 61 of file bridge_gui.cpp.
References _settings_client, SoundSettings::confirm, ConnectRoadToStructure(), CommandCost::Failed(), GetTunnelBridgeDirection(), ReverseDiagDir(), ClientSettings::sound, and TRANSPORT_ROAD.
Referenced by BuildDocksToolbarWindow::OnPlaceObject(), and ShowBuildBridgeWindow().
| void ShowBuildBridgeWindow | ( | TileIndex | start, | 
| TileIndex | end, | ||
| TransportType | transport_type, | ||
| byte | road_rail_type | ||
| ) | 
Prepare the data for the build a bridge window.
If we can't build a bridge under the given conditions show an error message.
| start | The start tile of the bridge | 
| end | The end tile of the bridge | 
| transport_type | The transport type | 
| road_rail_type | The road/rail type | 
Definition at line 361 of file bridge_gui.cpp.
References _build_bridge_desc, _ctrl_pressed, _last_railbridge_type, _last_roadbridge_type, SmallVector< T, S >::Append(), CalcBridgeLenCostFactor(), CcBuildBridge(), CheckBridgeAvailability(), CMD_BUILD_BRIDGE, CMD_MSG, CommandFlagsToDCFlags(), CountBits(), DC_QUERY_COST, DeleteWindowByClass(), DoCommand(), DoCommandP(), CommandCost::Failed(), GetBridgeSpec(), GetCommandFlags(), CommandCost::GetCost(), CommandCost::GetErrorMessage(), GetRoadTypes(), GetTunnelBridgeLength(), INVALID_STRING_ID, IsBridgeTile(), SmallVector< T, S >::Length(), MAX_BRIDGES, BridgeSpec::price, RailBuildCost(), ShowErrorMessage(), CommandCost::Succeeded(), TILE_SIZE, TileX(), TileY(), TRANSPORT_RAIL, TRANSPORT_ROAD, WC_BUILD_BRIDGE, and WL_INFO.
Referenced by BuildRoadToolbarWindow::OnPlaceMouseUp(), and BuildRailToolbarWindow::OnPlaceMouseUp().
| 
 | static | 
Window definition for the rail bridge selection window.
Referenced by ShowBuildBridgeWindow().
| 
 | static | 
Widgets of the bridge gui.
Definition at line 316 of file bridge_gui.cpp.
 1.8.1.2
 1.8.1.2