OpenTTD Source: src/airport_gui.cpp File Reference

OpenTTD Source 14.1

Data Structures | Functions | Variables
airport_gui.cpp File Reference
`#include "stdafx.h"`
`#include "economy_func.h"`
`#include "window_gui.h"`
`#include "station_gui.h"`
`#include "terraform_gui.h"`
`#include "sound_func.h"`
`#include "window_func.h"`
`#include "strings_func.h"`
`#include "viewport_func.h"`
`#include "company_func.h"`
`#include "tilehighlight_func.h"`
`#include "company_base.h"`
`#include "station_type.h"`
`#include "newgrf_airport.h"`
`#include "newgrf_callbacks.h"`
`#include "widgets/dropdown_type.h"`
`#include "core/geometry_func.hpp"`
`#include "hotkeys.h"`
`#include "vehicle_func.h"`
`#include "gui.h"`
`#include "command_func.h"`
`#include "airport_cmd.h"`
`#include "station_cmd.h"`
`#include "zoom_func.h"`
`#include "timer/timer.h"`
`#include "timer/timer_game_calendar.h"`
`#include "widgets/airport_widget.h"`
`#include "safeguards.h"`

Go to the source code of this file.

## Data Structures
struct | BuildAirToolbarWindow
| Airport build toolbar window handler. More...
class | BuildAirportWindow

## Functions
static void | ShowBuildAirportPicker (Window *parent)
SpriteID | GetCustomAirportSprite (const AirportSpec *as, byte layout)
void | CcBuildAirport (Commands, const CommandCost &result, TileIndex tile)
static void | PlaceAirport (TileIndex tile)
| Place an airport. More...
Window * | ShowBuildAirToolbar ()
| Open the build airport toolbar window. More...
void | InitializeAirportGui ()

## Variables
static AirportClassID | _selected_airport_class
| the currently visible airport class
static int | _selected_airport_index
| the index of the selected airport in the current class or -1
static byte | _selected_airport_layout
| selected airport layout number.
static constexpr NWidgetPart | _nested_air_toolbar_widgets []
static WindowDesc | _air_toolbar_desc (__FILE__, __LINE__, WDP_ALIGN_TOOLBAR, "toolbar_air", 0, 0, WC_BUILD_TOOLBAR, WC_NONE, WDF_CONSTRUCTION, std::begin(_nested_air_toolbar_widgets), std::end(_nested_air_toolbar_widgets), &BuildAirToolbarWindow::hotkeys)
static constexpr NWidgetPart | _nested_build_airport_widgets []
static WindowDesc | _build_airport_desc (__FILE__, __LINE__, WDP_AUTO, nullptr, 0, 0, WC_BUILD_STATION, WC_BUILD_TOOLBAR, WDF_CONSTRUCTION, std::begin(_nested_build_airport_widgets), std::end(_nested_build_airport_widgets))

## Detailed Description

The GUI for airports.

Definition in file airport_gui.cpp.

## Function Documentation

## ◆ PlaceAirport()

static void PlaceAirport | ( | TileIndex | tile | ) |
| static

Place an airport.

Parameters

  tile | Position to put the new airport.

Definition at line 62 of file airport_gui.cpp.

References _ctrl_pressed, _selected_airport_class, _selected_airport_index, _selected_airport_layout, CommandFlagsToDCFlags(), and NewGRFClass< Tspec, Tid, Tmax >::Get().

## ◆ ShowBuildAirToolbar()

Window* ShowBuildAirToolbar | ( |  | ) |

Open the build airport toolbar window.

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

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

Definition at line 225 of file airport_gui.cpp.

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

Referenced by MenuClickBuildAir().

## Variable Documentation

## ◆ _nested_air_toolbar_widgets

constexpr NWidgetPart _nested_air_toolbar_widgets[]
| staticconstexpr

Initial value:
= {
NWidget(NWID_HORIZONTAL),
NWidget(WWT_CLOSEBOX, COLOUR_DARK_GREEN),
NWidget(WWT_CAPTION, COLOUR_DARK_GREEN), SetDataTip(STR_TOOLBAR_AIRCRAFT_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS),
NWidget(WWT_STICKYBOX, COLOUR_DARK_GREEN),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_AT_AIRPORT), SetFill(0, 1), SetMinimalSize(42, 22), SetDataTip(SPR_IMG_AIRPORT, STR_TOOLBAR_AIRCRAFT_BUILD_AIRPORT_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_DARK_GREEN), SetMinimalSize(4, 22), SetFill(1, 1), EndContainer(),
NWidget(WWT_IMGBTN, COLOUR_DARK_GREEN, WID_AT_DEMOLISH), SetFill(0, 1), SetMinimalSize(22, 22), SetDataTip(SPR_IMG_DYNAMITE, STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC),
EndContainer(),
}

Definition at line 197 of file airport_gui.cpp.

SetFill
constexpr NWidgetPart SetFill(uint16_t fill_x, uint16_t fill_y)
Widget part function for setting filling.
Definition: widget_type.h:1143
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
NWID_HORIZONTAL
@ NWID_HORIZONTAL
Horizontal container.
Definition: widget_type.h:77
EndContainer
constexpr NWidgetPart EndContainer()
Widget part function for denoting the end of a container (horizontal, vertical, WWT_FRAME,...
Definition: widget_type.h:1153
WID_AT_DEMOLISH
@ WID_AT_DEMOLISH
Demolish button.
Definition: airport_widget.h:16
NWidget
constexpr NWidgetPart NWidget(WidgetType tp, Colours col, WidgetID idx=-1)
Widget part function for starting a new 'real' widget.
Definition: widget_type.h:1260
WWT_CLOSEBOX
@ WWT_CLOSEBOX
Close box (at top-left of a window)
Definition: widget_type.h:71
WID_AT_AIRPORT
@ WID_AT_AIRPORT
Build airport button.
Definition: airport_widget.h:15
WWT_PANEL
@ WWT_PANEL
Simple depressed panel.
Definition: widget_type.h:52
SetMinimalSize
constexpr NWidgetPart SetMinimalSize(int16_t x, int16_t y)
Widget part function for setting the minimal size.
Definition: widget_type.h:1099
SetDataTip
constexpr NWidgetPart SetDataTip(uint32_t data, StringID tip)
Widget part function for setting the data and tooltip.
Definition: widget_type.h:1164