OpenTTD Source: src/zoom_func.h File Reference

OpenTTD Source 14.0-beta3

Functions
zoom_func.h File Reference
`#include "zoom_type.h"`

Go to the source code of this file.

## Functions
int | ScaleByZoom (int value, ZoomLevel zoom)
| Scale by zoom level, usually shift left (when zoom > ZOOM_LVL_NORMAL) When shifting right, value is rounded up. More...
int | UnScaleByZoom (int value, ZoomLevel zoom)
| Scale by zoom level, usually shift right (when zoom > ZOOM_LVL_NORMAL) When shifting right, value is rounded up. More...
int | AdjustByZoom (int value, int zoom)
| Adjust by zoom level; zoom < 0 shifts right, zoom >= 0 shifts left. More...
int | ScaleByZoomLower (int value, ZoomLevel zoom)
| Scale by zoom level, usually shift left (when zoom > ZOOM_LVL_NORMAL) More...
int | UnScaleByZoomLower (int value, ZoomLevel zoom)
| Scale by zoom level, usually shift right (when zoom > ZOOM_LVL_NORMAL) More...
int | UnScaleGUI (int value)
| Short-hand to apply GUI zoom level. More...
ZoomLevel | ScaleZoomGUI (ZoomLevel value)
| Scale zoom level relative to GUI zoom. More...
ZoomLevel | UnScaleZoomGUI (ZoomLevel value)
| UnScale zoom level relative to GUI zoom. More...
int | ScaleSpriteTrad (int value)
| Scale traditional pixel dimensions to GUI zoom level, for drawing sprites. More...
int | ScaleGUITrad (int value)
| Scale traditional pixel dimensions to GUI zoom level. More...

## Detailed Description

Functions related to zooming.

Definition in file zoom_func.h.

## Function Documentation

## ◆ AdjustByZoom()

int AdjustByZoom | ( | int | value,
|  | int | zoom
| ) |  |
| inline

Adjust by zoom level; zoom < 0 shifts right, zoom >= 0 shifts left.

Parameters

  value | value to shift
  zoom | zoom level to shift to

Returns
  shifted value

Definition at line 45 of file zoom_func.h.

References ScaleByZoom(), and UnScaleByZoom().

## ◆ ScaleByZoom()

int ScaleByZoom | ( | int | value,
|  | ZoomLevel | zoom
| ) |  |
| inline

Scale by zoom level, usually shift left (when zoom > ZOOM_LVL_NORMAL) When shifting right, value is rounded up.

Parameters

  value | value to shift
  zoom | zoom level to shift to

Returns
  shifted value

Definition at line 22 of file zoom_func.h.

Referenced by AdjustByZoom(), Blitter_8bppSimple::Draw(), Blitter_32bppSimple::Draw(), ViewportSign::MarkDirty(), NWidgetViewport::UpdateViewportCoordinates(), and ViewportAddString().

## ◆ ScaleByZoomLower()

int ScaleByZoomLower | ( | int | value,
|  | ZoomLevel | zoom
| ) |  |
| inline

Scale by zoom level, usually shift left (when zoom > ZOOM_LVL_NORMAL)

Parameters

  value | value to shift
  zoom | zoom level to shift to

Returns
  shifted value

Definition at line 56 of file zoom_func.h.

## ◆ ScaleGUITrad()

int ScaleGUITrad | ( | int | value | ) |
| inline

Scale traditional pixel dimensions to GUI zoom level.

Parameters

  value | Pixel amount at #ZOOM_LVL_BASE (traditional "normal" interface size).

Returns
  Pixel amount at #ZOOM_LVL_GUI (current interface size).

Definition at line 117 of file zoom_func.h.

References _gui_scale.

Referenced by SpriteFontCache::ClearFontCache(), ClickSliderWidget(), LinkGraphOverlay::DrawContent(), LinkGraphOverlay::DrawLinks(), DrawSliderWidget(), LinkGraphOverlay::DrawStationDots(), EnsureVisibleCaption(), WindowDesc::GetDefaultHeight(), WindowDesc::GetDefaultWidth(), VehicleDetailsWindow::GetRoadVehDetailsHeight(), GetVehicleListHeight(), NetworkInitChatMessage(), NetworkReInitChatBoxSize(), BuildObjectWindow::OnInit(), NetworkGameWindow::OnInit(), IndustryCargoesWindow::OnInit(), PreventHiding(), and SpriteFontCache::SpriteFontCache().

## ◆ ScaleSpriteTrad()

int ScaleSpriteTrad | ( | int | value | ) |
| inline

Scale traditional pixel dimensions to GUI zoom level, for drawing sprites.

Parameters

  value | Pixel amount at #ZOOM_LVL_BASE (traditional "normal" interface size).

Returns
  Pixel amount at #ZOOM_LVL_GUI (current interface size).

Definition at line 107 of file zoom_func.h.

References UnScaleGUI().

Referenced by DepotWindow::DrawVehicleInDepot(), GetTrainDetailsWndVScroll(), EndGameWindow::OnPaint(), and HighScoreWindow::OnPaint().

## ◆ ScaleZoomGUI()

ZoomLevel ScaleZoomGUI | ( | ZoomLevel | value | ) |
| inline

Scale zoom level relative to GUI zoom.

Parameters

  value | zoom level to scale

Returns
  scaled zoom level

Definition at line 87 of file zoom_func.h.

Referenced by WaypointWindow::WaypointWindow().

## ◆ UnScaleByZoom()

int UnScaleByZoom | ( | int | value,
|  | ZoomLevel | zoom
| ) |  |
| inline

Scale by zoom level, usually shift right (when zoom > ZOOM_LVL_NORMAL) When shifting right, value is rounded up.

Parameters

  value | value to shift
  zoom | zoom level to shift to

Returns
  shifted value

Definition at line 34 of file zoom_func.h.

Referenced by AdjustByZoom(), MarkViewportDirty(), ScaleFontTrad(), and UnScaleGUI().

## ◆ UnScaleByZoomLower()

int UnScaleByZoomLower | ( | int | value,
|  | ZoomLevel | zoom
| ) |  |
| inline

Scale by zoom level, usually shift right (when zoom > ZOOM_LVL_NORMAL)

Parameters

  value | value to shift
  zoom | zoom level to shift to

Returns
  shifted value

Definition at line 67 of file zoom_func.h.

Referenced by MarkViewportDirty().

## ◆ UnScaleGUI()

int UnScaleGUI | ( | int | value | ) |
| inline

Short-hand to apply GUI zoom level.

Parameters

  value | Pixel amount at ZOOM_LVL_BEGIN (full zoom in).

Returns
  Pixel amount at #ZOOM_LVL_GUI (current interface size).

Definition at line 77 of file zoom_func.h.

References UnScaleByZoom().

Referenced by DrawAircraftImage(), DrawShipImage(), GetSingleVehicleWidth(), and ScaleSpriteTrad().

## ◆ UnScaleZoomGUI()

ZoomLevel UnScaleZoomGUI | ( | ZoomLevel | value | ) |
| inline

UnScale zoom level relative to GUI zoom.

Parameters

  value | zoom level to scale

Returns
  un-scaled zoom level

Definition at line 97 of file zoom_func.h.