OpenTTD Source: src/transparency.h File Reference

OpenTTD Source 15.0-RC2

Typedefs | Enumerations | Functions | Variables
transparency.h File Reference

Functions related to transparency. More...

`#include "gfx_func.h"`
`#include "openttd.h"`
`#include "core/bitmath_func.hpp"`
`#include "station_type.h"`

Go to the source code of this file.

## Typedefs
typedef uint | TransparencyOptionBits
| transparency option bits

## Enumerations
enum | TransparencyOption : uint8_t { TO_SIGNS = 0 , TO_TREES , TO_HOUSES , TO_INDUSTRIES , TO_BUILDINGS , TO_BRIDGES , TO_STRUCTURES , TO_CATENARY , TO_TEXT , TO_END , TO_INVALID }
| Transparency option bits: which position in _transparency_opt stands for which transparency. More...

## Functions
bool | IsTransparencySet (TransparencyOption to)
| Check if the transparency option bit is set and if we aren't in the game menu (there's never transparency)
bool | IsInvisibilitySet (TransparencyOption to)
| Check if the invisibility option bit is set and if we aren't in the game menu (there's never transparency)
void | ToggleTransparency (TransparencyOption to)
| Toggle the transparency option bit.
void | ToggleInvisibility (TransparencyOption to)
| Toggle the invisibility option bit.
void | ToggleInvisibilityWithTransparency (TransparencyOption to)
| Toggles between invisible and solid state.
void | ToggleTransparencyLock (TransparencyOption to)
| Toggle the transparency lock bit.
void | ResetRestoreAllTransparency ()
| Set or clear all non-locked transparency options.

## Variables
TransparencyOptionBits | _transparency_opt
| The bits that should be transparent.
TransparencyOptionBits | _transparency_lock
| Prevent these bits from flipping with X.
TransparencyOptionBits | _invisibility_opt
| The bits that should be invisible.
uint8_t | _display_opt
| What do we want to draw/do?
StationFacilities | _facility_display_opt
| What station facilities to draw.

## Detailed Description

Functions related to transparency.

Definition in file transparency.h.

## Typedef Documentation

## ◆ TransparencyOptionBits

typedef uint TransparencyOptionBits

transparency option bits

Definition at line 37 of file transparency.h.

## Enumeration Type Documentation

## ◆ TransparencyOption

enum TransparencyOption : uint8_t

Transparency option bits: which position in _transparency_opt stands for which transparency.

If you change the order, change the order of the ShowTransparencyToolbar() stuff in transparency_gui.cpp too. If you add or remove an option don't forget to change the transparency 'hot keys' in main_gui.cpp.

Enumerator
TO_SIGNS | signs
TO_TREES | trees
TO_HOUSES | town buildings
TO_INDUSTRIES | industries
TO_BUILDINGS | company buildings - depots, stations, HQ, ...
TO_BRIDGES | bridges
TO_STRUCTURES | other objects such as transmitters and lighthouses
TO_CATENARY | catenary
TO_TEXT | loading and cost/income text
TO_INVALID | Invalid transparency option.

Definition at line 23 of file transparency.h.

## Function Documentation

## ◆ IsInvisibilitySet()

bool IsInvisibilitySet | ( | TransparencyOption | to | ) |
| inline

Check if the invisibility option bit is set and if we aren't in the game menu (there's never transparency)

Parameters

  to | the structure which invisibility option is ask for

Definition at line 61 of file transparency.h.

References _invisibility_opt, _transparency_opt, and HasBit().

Referenced by CheckClickOnViewportSign(), DoDrawVehicle(), DrawBridgeMiddle(), DrawBridgeRoadBits(), DrawCommonTileSeq(), DrawRoadBits(), DrawTile_Town(), DrawWaterTileStruct(), HasRailCatenaryDrawn(), HasRoadCatenaryDrawn(), and ToggleInvisibilityWithTransparency().

## ◆ IsTransparencySet()

bool IsTransparencySet | ( | TransparencyOption | to | ) |
| inline

Check if the transparency option bit is set and if we aren't in the game menu (there's never transparency)

Parameters

  to | the structure which transparency option is ask for

Definition at line 50 of file transparency.h.

References _transparency_opt, and HasBit().

Referenced by DoDrawVehicle(), DrawBridgeMiddle(), DrawBridgeRoadBits(), DrawCommonTileSeq(), DrawRailCatenary(), DrawRailCatenaryOnBridge(), DrawRailCatenaryOnTunnel(), DrawRailCatenaryRailway(), DrawRoadBits(), DrawRoadTypeCatenary(), DrawTile_Town(), DrawTile_TunnelBridge(), DrawWaterTileStruct(), TransparenciesWindow::OnClick(), TransparenciesWindow::OnInvalidateData(), ToolbarOptionsClick(), ViewportAddSignStrings(), and ViewportAddStationStrings().

## ◆ ResetRestoreAllTransparency()

void ResetRestoreAllTransparency | ( |  | ) |
| inline

Set or clear all non-locked transparency options.

Definition at line 115 of file transparency.h.

References _transparency_lock, _transparency_opt, GB(), and MarkWholeScreenDirty().

Referenced by MainWindow::OnHotkey().

## ◆ ToggleInvisibility()

void ToggleInvisibility | ( | TransparencyOption | to | ) |
| inline

Toggle the invisibility option bit.

Parameters

  to | the structure which invisibility option is toggle

Definition at line 81 of file transparency.h.

References _invisibility_opt, and ToggleBit().

Referenced by TransparenciesWindow::OnClick().

## ◆ ToggleInvisibilityWithTransparency()

void ToggleInvisibilityWithTransparency | ( | TransparencyOption | to | ) |
| inline

Toggles between invisible and solid state.

If object is transparent, then it is made invisible. Used by the keyboard shortcuts.

Parameters

  to | the object type which invisibility option to toggle

Definition at line 93 of file transparency.h.

References _invisibility_opt, _transparency_opt, ClrBit(), IsInvisibilitySet(), and SetBit().

Referenced by MainWindow::OnHotkey().

## ◆ ToggleTransparency()

void ToggleTransparency | ( | TransparencyOption | to | ) |
| inline

Toggle the transparency option bit.

Parameters

  to | the transparency option to be toggled

Definition at line 71 of file transparency.h.

References _transparency_opt, and ToggleBit().

Referenced by MenuClickSettings(), TransparenciesWindow::OnClick(), and MainWindow::OnHotkey().

## ◆ ToggleTransparencyLock()

void ToggleTransparencyLock | ( | TransparencyOption | to | ) |
| inline

Toggle the transparency lock bit.

Parameters

  to | the transparency option to be locked or unlocked

Definition at line 109 of file transparency.h.

References _transparency_lock, and ToggleBit().

Referenced by TransparenciesWindow::OnClick().

## Variable Documentation

## ◆ _display_opt

uint8_t _display_opt
| extern

What do we want to draw/do?

Definition at line 26 of file transparency_gui.cpp.

Referenced by CheckClickOnViewportSign(), DrawRoadBits(), SignList::FilterSignList(), LoadNewGRF(), MenuClickSettings(), SignList::OwnerVisibilityFilter(), SwitchNewGRFBlitter(), and ToolbarOptionsClick().

## ◆ _facility_display_opt

StationFacilities _facility_display_opt
| extern

What station facilities to draw.

Definition at line 27 of file transparency_gui.cpp.

Referenced by MenuClickSettings(), and ToolbarOptionsClick().

## ◆ _invisibility_opt

TransparencyOptionBits _invisibility_opt
| extern

The bits that should be invisible.

Definition at line 25 of file transparency_gui.cpp.

Referenced by TransparenciesWindow::DrawWidget(), IsInvisibilitySet(), ToggleInvisibility(), and ToggleInvisibilityWithTransparency().

## ◆ _transparency_lock

TransparencyOptionBits _transparency_lock
| extern

Prevent these bits from flipping with X.

Definition at line 24 of file transparency_gui.cpp.

Referenced by TransparenciesWindow::DrawWidget(), ResetRestoreAllTransparency(), and ToggleTransparencyLock().

## ◆ _transparency_opt

TransparencyOptionBits _transparency_opt
| extern

The bits that should be transparent.

Definition at line 23 of file transparency_gui.cpp.

Referenced by NWidgetViewport::Draw(), IsInvisibilitySet(), IsTransparencySet(), ResetRestoreAllTransparency(), ToggleInvisibilityWithTransparency(), and ToggleTransparency().