OpenTTD Source  20240915-master-g3784a3d3d6
rail_gui.h File Reference
#include "rail_type.h"
#include "dropdown_type.h"

Go to the source code of this file.

Enumerations

enum  SignalGUISettings : uint8_t { SIGNAL_GUI_PATH = 0, SIGNAL_GUI_ALL = 1 }
 Settings for which signals are shown by the signal GUI. More...
 
enum  SignalCycleSettings : uint8_t { SIGNAL_CYCLE_GROUP = 0, SIGNAL_CYCLE_ALL = 1 }
 Settings for which signals are cycled through by control-clicking on the signal with the signal tool. More...
 

Functions

struct WindowShowBuildRailToolbar (RailType railtype)
 Open the build rail toolbar window for a specific rail type. More...
 
void ReinitGuiAfterToggleElrail (bool disable)
 Re-initialize rail-build toolbar after toggling support for electric trains. More...
 
void ResetSignalVariant (int32_t=0)
 Updates the current signal variant used in the signal GUI to the one adequate to current year.
 
void InitializeRailGUI ()
 Resets the rail GUI - sets default railtype to build and resets the signal GUI.
 
DropDownList GetRailTypeDropDownList (bool for_replacement=false, bool all_option=false)
 Create a drop down list for all the rail types of the local company. More...
 

Detailed Description

Functions/types etc. related to the rail GUI.

Definition in file rail_gui.h.

Enumeration Type Documentation

◆ SignalCycleSettings

enum SignalCycleSettings : uint8_t

Settings for which signals are cycled through by control-clicking on the signal with the signal tool.

Enumerator
SIGNAL_CYCLE_GROUP 

Cycle through current signal group (block or path) only.

SIGNAL_CYCLE_ALL 

Cycle through all signals visible to the player.

Definition at line 29 of file rail_gui.h.

◆ SignalGUISettings

enum SignalGUISettings : uint8_t

Settings for which signals are shown by the signal GUI.

Enumerator
SIGNAL_GUI_PATH 

Show path signals only.

SIGNAL_GUI_ALL 

Show all signals, including block and presignals.

Definition at line 23 of file rail_gui.h.

Function Documentation

◆ GetRailTypeDropDownList()

DropDownList GetRailTypeDropDownList ( bool  for_replacement,
bool  all_option 
)

Create a drop down list for all the rail types of the local company.

Parameters
for_replacementWhether this list is for the replacement window.
all_optionWhether to add an 'all types' item.
Returns
The populated and sorted DropDownList.

Definition at line 2011 of file rail_gui.cpp.

References _local_company, Company::avail_railtypes, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::Get(), GetCompanyRailTypes(), GetRailTypes(), and Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index.

◆ ReinitGuiAfterToggleElrail()

void ReinitGuiAfterToggleElrail ( bool  disable)

Re-initialize rail-build toolbar after toggling support for electric trains.

Parameters
disableBoolean whether electric trains are disabled (removed from the game)

Definition at line 1908 of file rail_gui.cpp.

Referenced by SettingsDisableElrail().

◆ ShowBuildRailToolbar()

struct Window* ShowBuildRailToolbar ( RailType  railtype)

Open the build rail toolbar window for a specific rail type.

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

Parameters
railtypeRail type to open the window for
Returns
newly opened rail toolbar, or nullptr if the toolbar could not be opened.

Definition at line 918 of file rail_gui.cpp.

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