OpenTTD Source
12.0-beta2
|
Go to the documentation of this file.
10 #ifndef VIEWPORT_FUNC_H
11 #define VIEWPORT_FUNC_H
21 void SetSelectionRed(
bool);
23 void DeleteWindowViewport(
Window *w);
27 Point GetTileBelowCursor();
33 void ZoomInOrOutToCursorWindow(
bool in,
Window * w);
35 void FixTitleGameZoom();
53 void AddSortableSpriteToDraw(
SpriteID image,
PaletteID pal,
int x,
int y,
int w,
int h,
int dz,
int z,
bool transparent =
false,
int bb_offset_x = 0,
int bb_offset_y = 0,
int bb_offset_z = 0,
const SubSprite *sub =
nullptr);
61 bool HandleViewportClicked(
const Viewport *vp,
int x,
int y);
64 void SetTileSelectBigSize(
int ox,
int oy,
int sx,
int sy);
66 void ViewportDoDraw(
const Viewport *vp,
int left,
int top,
int right,
int bottom);
71 void RebuildViewportOverlay(
Window *w);
77 void ClearAllCachedNames();
79 extern Point _tile_fract_coords;
static void MaxZoomInOut(ZoomStateChange how, Window *w)
Zoom a viewport as far as possible in the given direction.
uint32 TileIndex
The index/ID of a Tile.
void DrawGroundSprite(SpriteID image, PaletteID pal, const SubSprite *sub=nullptr, int extra_offs_x=0, int extra_offs_y=0)
Draws a ground sprite for the current tile.
bool ScrollWindowToTile(TileIndex tile, Window *w, bool instant=false)
Scrolls the viewport in a window to a given location.
void SetRedErrorSquare(TileIndex tile)
Set a tile to display a red error square.
bool ScrollWindowTo(int x, int y, int z, Window *w, bool instant=false)
Scrolls the viewport in a window to a given location.
void AddSortableSpriteToDraw(SpriteID image, PaletteID pal, int x, int y, int w, int h, int dz, int z, bool transparent=false, int bb_offset_x=0, int bb_offset_y=0, int bb_offset_z=0, const SubSprite *sub=nullptr)
Draw a (transparent) sprite at given coordinates with a given bounding box.
void SetViewportCatchmentTown(const Town *t, bool sel)
Select or deselect town for coverage area highlight.
ZoomLevel
All zoom levels we know.
void InitializeWindowViewport(Window *w, int x, int y, int width, int height, uint32 follow_flags, ZoomLevel zoom)
Initialize viewport of the window for use.
Location information about a sign as seen on the viewport.
bool DoZoomInOutWindow(ZoomStateChange how, Window *w)
Zooms a viewport in a window in or out.
Used to only draw a part of the sprite.
void UpdateViewportPosition(Window *w)
Update the viewport position being displayed.
uint32 SpriteID
The number of a sprite, without mapping bits and colourtables.
Data structure for viewport, display of a part of the world.
void AddChildSpriteScreen(SpriteID image, PaletteID pal, int x, int y, bool transparent=false, const SubSprite *sub=nullptr, bool scale=true)
Add a child sprite to a parent sprite.
static uint TileHeight(TileIndex tile)
Returns the height of a tile.
void HandleZoomMessage(Window *w, const Viewport *vp, byte widget_zoom_in, byte widget_zoom_out)
Update the status of the zoom-buttons according to the zoom-level of the viewport.
Coordinates of a point in 2D.
void StartSpriteCombine()
Starts a block of sprites, which are "combined" into a single bounding box.
bool ScrollMainWindowToTile(TileIndex tile, bool instant=false)
Scrolls the viewport of the main window to a given location.
void DrawGroundSpriteAt(SpriteID image, PaletteID pal, int32 x, int32 y, int z, const SubSprite *sub=nullptr, int extra_offs_x=0, int extra_offs_y=0)
Draws a ground sprite at a specific world-coordinate relative to the current tile.
bool MarkAllViewportsDirty(int left, int top, int right, int bottom)
Mark all viewports that display an area as dirty (in need of repaint).
void SetTileSelectSize(int w, int h)
Highlight w by h tiles at the cursor.
uint32 StringID
Numeric value that represents a string, independent of the selected language.
void SetViewportCatchmentStation(const Station *st, bool sel)
Select or deselect station for coverage area highlight.
void EndSpriteCombine()
Terminates a block of sprites started by StartSpriteCombine.
void UpdateAllVirtCoords()
Update the viewport coordinates of all signs.
uint32 PaletteID
The number of the palette.
bool ScrollMainWindowTo(int x, int y, int z=-1, bool instant=false)
Scrolls the main window to given coordinates.
void MarkTileDirtyByTile(TileIndex tile, int bridge_level_offset, int tile_height_override)
Mark a tile given by its index dirty for repaint.
Viewport * IsPtInWindowViewport(const Window *w, int x, int y)
Is a xy position inside the viewport of the window?
void OffsetGroundSprite(int x, int y)
Called when a foundation has been drawn for the current tile.
Point TranslateXYToTileCoord(const Viewport *vp, int x, int y, bool clamp_to_map=true)
Translate screen coordinate in a viewport to underlying tile coordinate.
static const int TILE_HEIGHT_STEP
One Z unit tile height difference is displayed as 50m.
Data structure for an opened window.
void ViewportAddString(const DrawPixelInfo *dpi, ZoomLevel small_from, const ViewportSign *sign, StringID string_normal, StringID string_small, StringID string_small_shadow, uint64 params_1, uint64 params_2=0, Colours colour=INVALID_COLOUR)
Add a string to draw in the viewport.
ZoomStateChange
Directions of zooming.
Data about how and where to blit pixels.