Functions related to the gfx engine. More...
#include "gfx_type.h"
#include "strings_type.h"
#include "string_type.h"
Go to the source code of this file.
Defines | |
#define | FONT_HEIGHT_SMALL (GetCharacterHeight(FS_SMALL)) |
Height of characters in the small (FS_SMALL) font. | |
#define | FONT_HEIGHT_NORMAL (GetCharacterHeight(FS_NORMAL)) |
Height of characters in the normal (FS_NORMAL) font. | |
#define | FONT_HEIGHT_LARGE (GetCharacterHeight(FS_LARGE)) |
Height of characters in the large (FS_LARGE) font. | |
#define | FONT_HEIGHT_MONO (GetCharacterHeight(FS_MONO)) |
Height of characters in the large (FS_MONO) font. | |
#define | GREY_SCALE(level) (level) |
Return the colour for a particular greyscale level. | |
Enumerations | |
enum | StringAlignment { SA_LEFT = 0 << 0, SA_HOR_CENTER = 1 << 0, SA_RIGHT = 2 << 0, SA_HOR_MASK = 3 << 0, SA_TOP = 0 << 2, SA_VERT_CENTER = 1 << 2, SA_BOTTOM = 2 << 2, SA_VERT_MASK = 3 << 2, SA_CENTER = SA_HOR_CENTER | SA_VERT_CENTER, SA_FORCE = 1 << 4 } |
How to align the to-be drawn text. More... | |
Functions | |
void | GameLoop () |
void | CreateConsole () |
void | HandleKeypress (uint keycode, WChar key) |
Handle keyboard input. | |
void | HandleTextInput (const char *str, bool marked=false, const char *caret=NULL, const char *insert_location=NULL, const char *replacement_end=NULL) |
Handle text input. | |
void | HandleCtrlChanged () |
State of CONTROL key has changed. | |
void | HandleMouseEvents () |
Handle a mouse event from the video driver. | |
void | CSleep (int milliseconds) |
void | UpdateWindows () |
Update the continuously changing contents of the windows, such as the viewports. | |
void | DrawMouseCursor () |
void | ScreenSizeChanged () |
void | GameSizeChanged () |
Size of the application screen changed. | |
void | UndrawMouseCursor () |
void | RedrawScreenRect (int left, int top, int right, int bottom) |
void | GfxScroll (int left, int top, int width, int height, int xo, int yo) |
Dimension | GetSpriteSize (SpriteID sprid, Point *offset=NULL, ZoomLevel zoom=ZOOM_LVL_GUI) |
Get the size of a sprite. | |
void | DrawSpriteViewport (SpriteID img, PaletteID pal, int x, int y, const SubSprite *sub=NULL) |
Draw a sprite in a viewport. | |
void | DrawSprite (SpriteID img, PaletteID pal, int x, int y, const SubSprite *sub=NULL, ZoomLevel zoom=ZOOM_LVL_GUI) |
Draw a sprite, not in a viewport. | |
int | DrawString (int left, int right, int top, const char *str, TextColour colour=TC_FROMSTRING, StringAlignment align=SA_LEFT, bool underline=false, FontSize fontsize=FS_NORMAL) |
Draw string, possibly truncated to make it fit in its allocated space. | |
int | DrawString (int left, int right, int top, StringID str, TextColour colour=TC_FROMSTRING, StringAlignment align=SA_LEFT, bool underline=false, FontSize fontsize=FS_NORMAL) |
Draw string, possibly truncated to make it fit in its allocated space. | |
int | DrawStringMultiLine (int left, int right, int top, int bottom, const char *str, TextColour colour=TC_FROMSTRING, StringAlignment align=(SA_TOP|SA_LEFT), bool underline=false, FontSize fontsize=FS_NORMAL) |
Draw string, possibly over multiple lines. | |
int | DrawStringMultiLine (int left, int right, int top, int bottom, StringID str, TextColour colour=TC_FROMSTRING, StringAlignment align=(SA_TOP|SA_LEFT), bool underline=false, FontSize fontsize=FS_NORMAL) |
Draw string, possibly over multiple lines. | |
void | DrawCharCentered (uint32 c, int x, int y, TextColour colour) |
void | GfxFillRect (int left, int top, int right, int bottom, int colour, FillRectMode mode=FILLRECT_OPAQUE) |
Applies a certain FillRectMode-operation to a rectangle [left, right] x [top, bottom] on the screen. | |
void | GfxDrawLine (int left, int top, int right, int bottom, int colour, int width=1, int dash=0) |
void | DrawBox (int x, int y, int dx1, int dy1, int dx2, int dy2, int dx3, int dy3) |
Draws the projection of a parallelepiped. | |
Dimension | GetStringBoundingBox (const char *str, FontSize start_fontsize=FS_NORMAL) |
Return the string dimension in pixels. | |
Dimension | GetStringBoundingBox (StringID strid) |
Get bounding box of a string. | |
int | GetStringHeight (const char *str, int maxw, FontSize fontsize=FS_NORMAL) |
Calculates height of string (in pixels). | |
int | GetStringHeight (StringID str, int maxw) |
Calculates height of string (in pixels). | |
int | GetStringLineCount (StringID str, int maxw) |
Calculates number of lines of string. | |
Dimension | GetStringMultiLineBoundingBox (StringID str, const Dimension &suggestion) |
Calculate string bounding box for multi-line strings. | |
Dimension | GetStringMultiLineBoundingBox (const char *str, const Dimension &suggestion) |
Calculate string bounding box for multi-line strings. | |
void | LoadStringWidthTable (bool monospace=false) |
Initialize _stringwidth_table cache. | |
Point | GetCharPosInString (const char *str, const char *ch, FontSize start_fontsize=FS_NORMAL) |
Get the leading corner of a character in a single-line string relative to the start of the string. | |
const char * | GetCharAtPosition (const char *str, int x, FontSize start_fontsize=FS_NORMAL) |
Get the character from a string that is drawn at a specific position. | |
void | DrawDirtyBlocks () |
Repaints the rectangle blocks which are marked as 'dirty'. | |
void | SetDirtyBlocks (int left, int top, int right, int bottom) |
This function extends the internal _invalid_rect rectangle as it now contains the rectangle defined by the given parameters. | |
void | MarkWholeScreenDirty () |
This function mark the whole screen as dirty. | |
void | GfxInitPalettes () |
void | CheckBlitter () |
Check whether we still use the right blitter, or use another (better) one. | |
bool | FillDrawPixelInfo (DrawPixelInfo *n, int left, int top, int width, int height) |
Set up a clipping area for only drawing into a certain area. | |
void | DrawOverlappedWindowForAll (int left, int top, int right, int bottom) |
From a rectangle that needs redrawing, find the windows that intersect with the rectangle. | |
void | SetMouseCursor (CursorID cursor, PaletteID pal) |
Assign a single non-animated sprite to the cursor. | |
void | SetAnimatedMouseCursor (const AnimCursor *table) |
Assign an animation to the cursor. | |
void | CursorTick () |
void | UpdateCursorSize () |
Update cursor dimension. | |
bool | ChangeResInGame (int w, int h) |
void | SortResolutions (int count) |
bool | ToggleFullScreen (bool fs) |
byte | GetCharacterWidth (FontSize size, uint32 key) |
byte | GetDigitWidth (FontSize size=FS_NORMAL) |
Return the maximum width of single digit. | |
void | GetBroadestDigit (uint *front, uint *next, FontSize size=FS_NORMAL) |
Determine the broadest digits for guessing the maximum width of a n-digit number. | |
int | GetCharacterHeight (FontSize size) |
Get height of a character for a given font size. | |
TextColour | GetContrastColour (uint8 background) |
Determine a contrasty text colour for a coloured background. | |
Variables | |
byte | _dirkeys |
1 = left, 2 = up, 4 = right, 8 = down | |
bool | _fullscreen |
CursorVars | _cursor |
bool | _ctrl_pressed |
Is Ctrl pressed? | |
bool | _shift_pressed |
Is Shift pressed? | |
byte | _fast_forward |
bool | _left_button_down |
Is left mouse button pressed? | |
bool | _left_button_clicked |
Is left mouse button clicked? | |
bool | _right_button_down |
Is right mouse button pressed? | |
bool | _right_button_clicked |
Is right mouse button clicked? | |
DrawPixelInfo | _screen |
bool | _screen_disable_anim |
Disable palette animation (important for 32bpp-anim blitter during giant screenshot). | |
int | _num_resolutions |
The number of resolutions. | |
Dimension | _resolutions [32] |
List of resolutions. | |
Dimension | _cur_resolution |
The current resolution. | |
Palette | _cur_palette |
Current palette. | |
static const int | DRAW_STRING_BUFFER = 2048 |
Size of the buffer used for drawing strings. | |
DrawPixelInfo * | _cur_dpi |
byte | _colour_gradient [COLOUR_END][8] |
All 16 colour gradients 8 colours per gradient from darkest (0) to lightest (7). | |
bool | _palette_remap_grf [] |
Whether the given NewGRFs must get a palette remap from windows to DOS or not. | |
static const uint8 | PC_BLACK = GREY_SCALE(1) |
Black palette colour. | |
static const uint8 | PC_DARK_GREY = GREY_SCALE(6) |
Dark grey palette colour. | |
static const uint8 | PC_GREY = GREY_SCALE(10) |
Grey palette colour. | |
static const uint8 | PC_WHITE = GREY_SCALE(15) |
White palette colour. | |
static const uint8 | PC_VERY_DARK_RED = 0xB2 |
Almost-black red palette colour. | |
static const uint8 | PC_DARK_RED = 0xB4 |
Dark red palette colour. | |
static const uint8 | PC_RED = 0xB8 |
Red palette colour. | |
static const uint8 | PC_VERY_DARK_BROWN = 0x56 |
Almost-black brown palette colour. | |
static const uint8 | PC_ORANGE = 0xC2 |
Orange palette colour. | |
static const uint8 | PC_YELLOW = 0xBF |
Yellow palette colour. | |
static const uint8 | PC_LIGHT_YELLOW = 0x44 |
Light yellow palette colour. | |
static const uint8 | PC_VERY_LIGHT_YELLOW = 0x45 |
Almost-white yellow palette colour. | |
static const uint8 | PC_GREEN = 0xD0 |
Green palette colour. | |
static const uint8 | PC_DARK_BLUE = 0x9D |
Dark blue palette colour. | |
static const uint8 | PC_LIGHT_BLUE = 0x98 |
Light blue palette colour. |
Functions related to the gfx engine.
Definition in file gfx_func.h.
#define FONT_HEIGHT_LARGE (GetCharacterHeight(FS_LARGE)) |
Height of characters in the large (FS_LARGE) font.
Definition at line 169 of file gfx_func.h.
Referenced by DrawString(), and HighScoreWindow::OnPaint().
#define FONT_HEIGHT_MONO (GetCharacterHeight(FS_MONO)) |
Height of characters in the large (FS_MONO) font.
Definition at line 172 of file gfx_func.h.
Referenced by DrawString().
#define FONT_HEIGHT_NORMAL (GetCharacterHeight(FS_NORMAL)) |
Height of characters in the normal (FS_NORMAL) font.
Definition at line 166 of file gfx_func.h.
Referenced by CargoesField::CargoClickedAt(), CargoesField::CargoLabelClickedAt(), CheckClickOnViewportSign(), CargoesField::Draw(), StationViewWindow::DrawAcceptedCargo(), DrawAircraftDetails(), DrawButtonDropdown(), StationViewWindow::DrawCargoRatings(), DrawCategories(), CompanyInfrastructureWindow::DrawCountLine(), NetworkContentListWindow::DrawDetails(), DrawFrame(), CargoesField::DrawHorConnection(), NetworkContentListWindow::DrawMatrix(), DrawOrderString(), GoalListWindow::DrawPartialGoalList(), TownAuthorityWindow::DrawRatings(), DrawRoadVehDetails(), NetworkGameWindow::DrawServerLine(), DrawShipDetails(), DrawString(), DrawTrainDetails(), DepotWindow::DrawVehicleInDepot(), BaseVehicleListWindow::DrawVehicleListItems(), DrawVehicleRefitWindow(), VehicleDetailsWindow::DrawWidget(), TownDirectoryWindow::DrawWidget(), TownViewWindow::DrawWidget(), ScenarioEditorToolbarWindow::DrawWidget(), SubsidyListWindow::DrawWidget(), StatusBarWindow::DrawWidget(), GameSettingsWindow::DrawWidget(), ScanProgressWindow::DrawWidget(), NetworkJoinStatusWindow::DrawWidget(), NetworkClientListWindow::DrawWidget(), NetworkClientListPopupWindow::DrawWidget(), LandInfoWindow::DrawWidget(), CompanyLeagueWindow::DrawWidget(), GraphLegendWindow::DrawWidget(), GenerateProgressWindow::DrawWidget(), SaveLoadWindow::DrawWidget(), CompanyInfrastructureWindow::DrawWidget(), CheatWindow::DrawWidget(), AIListWindow::DrawWidget(), DrawYearColumn(), TownViewWindow::GetDesiredInfoHeight(), GetEngineListHeight(), VehicleDetailsWindow::GetRoadVehDetailsHeight(), MakeAsdfgKeys(), MakeNumberKeys(), MakeQwertyKeys(), MakeSpacebarKeys(), MakeTopKeys(), MakeZxcvbKeys(), ViewportSign::MarkDirty(), NetworkDrawChatMessage(), NetworkReInitChatBoxSize(), TownAuthorityWindow::OnClick(), StationViewWindow::OnClick(), CompanyStationsWindow::OnClick(), IndustryViewWindow::OnClick(), CheatWindow::OnClick(), IndustryCargoesWindow::OnInit(), NetworkClientListPopupWindow::OnMouseLoop(), NetworkClientListWindow::OnMouseOver(), BuildAirportWindow::OnPaint(), NWidgetBackground::SetupSmallestSize(), VehicleDetailsWindow::UpdateWidgetSize(), RefitWindow::UpdateWidgetSize(), TownAuthorityWindow::UpdateWidgetSize(), TimetableWindow::UpdateWidgetSize(), StationViewWindow::UpdateWidgetSize(), GameSettingsWindow::UpdateWidgetSize(), BuildRailStationWindow::UpdateWidgetSize(), BuildObjectWindow::UpdateWidgetSize(), MessageHistoryWindow::UpdateWidgetSize(), ScanProgressWindow::UpdateWidgetSize(), NewGRFParametersWindow::UpdateWidgetSize(), SpriteAlignerWindow::UpdateWidgetSize(), NewGRFInspectWindow::UpdateWidgetSize(), NetworkLobbyWindow::UpdateWidgetSize(), NetworkGameWindow::UpdateWidgetSize(), LandInfoWindow::UpdateWidgetSize(), SelectGameWindow::UpdateWidgetSize(), BuildIndustryWindow::UpdateWidgetSize(), PerformanceRatingDetailWindow::UpdateWidgetSize(), GenerateProgressWindow::UpdateWidgetSize(), GenerateLandscapeWindow::UpdateWidgetSize(), SaveLoadWindow::UpdateWidgetSize(), EnginePreviewWindow::UpdateWidgetSize(), DepotWindow::UpdateWidgetSize(), CompanyInfrastructureWindow::UpdateWidgetSize(), CheatWindow::UpdateWidgetSize(), BuildAirportWindow::UpdateWidgetSize(), AIDebugWindow::UpdateWidgetSize(), AIConfigWindow::UpdateWidgetSize(), AISettingsWindow::UpdateWidgetSize(), AIListWindow::UpdateWidgetSize(), and ViewportAddString().
#define FONT_HEIGHT_SMALL (GetCharacterHeight(FS_SMALL)) |
Height of characters in the small (FS_SMALL) font.
Definition at line 163 of file gfx_func.h.
Referenced by CheckClickOnViewportSign(), DrawEngineList(), DrawString(), SmallMapWindow::DrawTowns(), DepotWindow::DrawVehicleInDepot(), BaseVehicleListWindow::DrawVehicleListItems(), LinkGraphLegendWindow::DrawWidget(), SmallMapWindow::GetPositionOnLegend(), GetVehicleListHeight(), MusicTrackSelectionWindow::OnClick(), and BaseGraphWindow::UpdateWidgetSize().
#define GREY_SCALE | ( | level | ) | (level) |
Return the colour for a particular greyscale level.
level | Intensity, 0 = black, 15 = white |
Definition at line 191 of file gfx_func.h.
enum StringAlignment |
How to align the to-be drawn text.
Definition at line 96 of file gfx_func.h.
void CheckBlitter | ( | ) |
Check whether we still use the right blitter, or use another (better) one.
Definition at line 294 of file gfxinit.cpp.
References GfxClearSpriteCache(), and SwitchNewGRFBlitter().
Referenced by MenuClickSettings().
void DrawBox | ( | int | x, | |
int | y, | |||
int | dx1, | |||
int | dy1, | |||
int | dx2, | |||
int | dy2, | |||
int | dx3, | |||
int | dy3 | |||
) |
Draws the projection of a parallelepiped.
This can be used to draw boxes in world coordinates.
x | Screen X-coordinate of top front corner. | |
y | Screen Y-coordinate of top front corner. | |
dx1 | Screen X-length of first edge. | |
dy1 | Screen Y-length of first edge. | |
dx2 | Screen X-length of second edge. | |
dy2 | Screen Y-length of second edge. | |
dx3 | Screen X-length of third edge. | |
dy3 | Screen Y-length of third edge. |
Definition at line 277 of file gfx.cpp.
References PC_WHITE.
Referenced by ViewportDrawBoundingBoxes().
void DrawDirtyBlocks | ( | ) |
Repaints the rectangle blocks which are marked as 'dirty'.
Definition at line 1278 of file gfx.cpp.
References _modal_progress_paint_mutex, _modal_progress_work_mutex, _realtime_tick, _switch_mode, Align(), ThreadMutex::BeginCritical(), ThreadMutex::EndCritical(), HasModalProgress(), IsFirstModalProgressLoop(), and MODAL_PROGRESS_REDRAW_TIMEOUT.
Referenced by MakeScreenshot(), and UpdateWindows().
void DrawOverlappedWindowForAll | ( | int | left, | |
int | top, | |||
int | right, | |||
int | bottom | |||
) |
From a rectangle that needs redrawing, find the windows that intersect with the rectangle.
These windows should be re-painted.
left | Left edge of the rectangle that should be repainted | |
top | Top edge of the rectangle that should be repainted | |
right | Right edge of the rectangle that should be repainted | |
bottom | Bottom edge of the rectangle that should be repainted |
Definition at line 910 of file window.cpp.
References DrawOverlappedWindow(), Window::height, Window::left, MayBeShown(), Window::top, and Window::width.
void DrawSprite | ( | SpriteID | img, | |
PaletteID | pal, | |||
int | x, | |||
int | y, | |||
const SubSprite * | sub, | |||
ZoomLevel | zoom | |||
) |
Draw a sprite, not in a viewport.
img | Image number to draw | |
pal | Palette to use. | |
x | Left coordinate of image in pixels | |
y | Top coordinate of image in pixels | |
sub | If available, draw only specified part of the sprite | |
zoom | Zoom level of sprite |
Definition at line 813 of file gfx.cpp.
References BM_COLOUR_REMAP, BM_CRASH_REMAP, BM_NORMAL, BM_TRANSPARENT, GB(), HasBit(), PALETTE_CRASH, PALETTE_MODIFIER_TRANSPARENT, PALETTE_WIDTH, SPRITE_WIDTH, ST_NORMAL, and ST_RECOLOUR.
Referenced by SettingEntry::Draw(), StoryBookWindow::DrawActionElement(), DrawAircraftImage(), DrawArrowButtons(), DrawCargoIcons(), DrawCommonTileSeqInGUI(), DrawCompanyIcon(), DrawCompanyManagerFace(), DrawDebugBox(), DrawDefSizeBox(), DrawEngineList(), VehicleGroupWindow::DrawGroupInfo(), DrawHorizontalScrollbar(), DrawImageButtons(), NetworkContentListWindow::DrawMatrix(), DrawNewObjectTileInGUI(), DrawOrderString(), TownAuthorityWindow::DrawRatings(), DrawResizeBox(), DrawRoadDepotSprite(), DrawRoadVehEngine(), DrawRoadVehImage(), NetworkGameWindow::DrawServerLine(), DrawShadeBox(), DrawShipImage(), BuildSignalWindow::DrawSignalSprite(), DrawStationTile(), DrawStickyBox(), DrawTrainDetails(), DrawTrainImage(), DepotWindow::DrawVehicleInDepot(), DrawVehicleProfitButton(), DrawVehicleRefitWindow(), VehicleViewWindow::DrawWidget(), BuildTreesWindow::DrawWidget(), TransparenciesWindow::DrawWidget(), TownDirectoryWindow::DrawWidget(), ScenarioEditorLandscapeGenerationWindow::DrawWidget(), StatusBarWindow::DrawWidget(), SpriteAlignerWindow::DrawWidget(), CompanyWindow::DrawWidget(), SelectCompanyLiveryWindow::DrawWidget(), CheatWindow::DrawWidget(), BuildBridgeWindow::DrawWidget(), BuildAirportWindow::DrawWidget(), and MainWindow::OnPaint().
Draw a sprite in a viewport.
img | Image number to draw | |
pal | Palette to use. | |
x | Left coordinate of image in viewport, scaled by zoom | |
y | Top coordinate of image in viewport, scaled by zoom | |
sub | If available, draw only specified part of the sprite |
Definition at line 790 of file gfx.cpp.
References BM_COLOUR_REMAP, BM_CRASH_REMAP, BM_NORMAL, BM_TRANSPARENT, GB(), HasBit(), PALETTE_CRASH, PALETTE_MODIFIER_TRANSPARENT, PALETTE_WIDTH, SPRITE_WIDTH, ST_NORMAL, and ST_RECOLOUR.
int DrawString | ( | int | left, | |
int | right, | |||
int | top, | |||
const char * | str, | |||
TextColour | colour, | |||
StringAlignment | align, | |||
bool | underline, | |||
FontSize | fontsize | |||
) |
Draw string, possibly truncated to make it fit in its allocated space.
left | The left most position to draw on. | |
right | The right most position to draw on. | |
top | The top most position to draw on. | |
str | String to draw. | |
colour | Colour used for drawing the string, see DoDrawString() for details | |
align | The alignment of the string when drawing left-to-right. In the case a right-to-left language is chosen this is inverted so it will be drawn in the right direction. | |
underline | Whether to underline what has been drawn or not. | |
fontsize | The size of the initial characters. |
Definition at line 498 of file gfx.cpp.
References SmallVector< T, S >::Begin(), DrawLayoutLine(), FONT_HEIGHT_LARGE, FONT_HEIGHT_MONO, FONT_HEIGHT_NORMAL, FONT_HEIGHT_SMALL, SmallVector< T, S >::Length(), and max().
Referenced by SettingEntry::Draw(), CargoesField::Draw(), StoryBookWindow::DrawActionElement(), DrawAircraftDetails(), DrawButtonDropdown(), DrawCaption(), StationViewWindow::DrawCargoRatings(), DrawCategories(), DrawCloseBox(), CompanyInfrastructureWindow::DrawCountLine(), NetworkContentListWindow::DrawDetails(), DrawDropDownButton(), DrawEngineList(), StationViewWindow::DrawEntries(), SelectCompanyManagerFaceWindow::DrawFaceStringLabel(), DrawFrame(), BaseGraphWindow::DrawGraph(), VehicleGroupWindow::DrawGroupInfo(), IndustryViewWindow::DrawInfo(), DrawInset(), DrawLabel(), NetworkContentListWindow::DrawMatrix(), DrawNewsString(), DrawOrderString(), GoalListWindow::DrawPartialGoalList(), DrawPrice(), TownAuthorityWindow::DrawRatings(), DrawRoadVehDetails(), NetworkGameWindow::DrawServerLine(), SettingEntry::DrawSetting(), DrawShipDetails(), Window::DrawSortButtonState(), DrawString(), DrawText(), SmallMapWindow::DrawTowns(), DrawTrainDetails(), DepotWindow::DrawVehicleInDepot(), BaseVehicleListWindow::DrawVehicleListItems(), DrawVehiclePurchaseInfo(), DrawVehicleRefitWindow(), DrawVerticalScrollbar(), VehicleViewWindow::DrawWidget(), VehicleDetailsWindow::DrawWidget(), TownDirectoryWindow::DrawWidget(), TownViewWindow::DrawWidget(), TownAuthorityWindow::DrawWidget(), ScenarioEditorToolbarWindow::DrawWidget(), TimetableWindow::DrawWidget(), SubsidyListWindow::DrawWidget(), StoryBookWindow::DrawWidget(), StatusBarWindow::DrawWidget(), SelectStationWindow< T >::DrawWidget(), CompanyStationsWindow::DrawWidget(), SmallMapWindow::DrawWidget(), GameSettingsWindow::DrawWidget(), BuildRailStationWindow::DrawWidget(), OrdersWindow::DrawWidget(), BuildObjectWindow::DrawWidget(), MessageHistoryWindow::DrawWidget(), ScanProgressWindow::DrawWidget(), NewGRFParametersWindow::DrawWidget(), SpriteAlignerWindow::DrawWidget(), NetworkJoinStatusWindow::DrawWidget(), NetworkClientListWindow::DrawWidget(), NetworkClientListPopupWindow::DrawWidget(), NetworkStartServerWindow::DrawWidget(), NetworkChatWindow::DrawWidget(), MusicWindow::DrawWidget(), MusicTrackSelectionWindow::DrawWidget(), AboutWindow::DrawWidget(), LandInfoWindow::DrawWidget(), LinkGraphLegendWindow::DrawWidget(), IndustryDirectoryWindow::DrawWidget(), BuildIndustryWindow::DrawWidget(), PerformanceRatingDetailWindow::DrawWidget(), CompanyLeagueWindow::DrawWidget(), PaymentRatesGraphWindow::DrawWidget(), GraphLegendWindow::DrawWidget(), GenerateProgressWindow::DrawWidget(), GenerateLandscapeWindow::DrawWidget(), SaveLoadWindow::DrawWidget(), EnginePreviewWindow::DrawWidget(), CompanyWindow::DrawWidget(), CompanyInfrastructureWindow::DrawWidget(), SelectCompanyManagerFaceWindow::DrawWidget(), SelectCompanyLiveryWindow::DrawWidget(), CompanyFinancesWindow::DrawWidget(), CheatWindow::DrawWidget(), ReplaceVehicleWindow::DrawWidget(), BuildAirportWindow::DrawWidget(), AIDebugWindow::DrawWidget(), AIConfigWindow::DrawWidget(), AISettingsWindow::DrawWidget(), AIListWindow::DrawWidget(), DrawYearColumn(), GameSettingsWindow::OnPaint(), HighScoreWindow::OnPaint(), IConsoleWindow::OnPaint(), BuildAirportWindow::OnPaint(), StationsWndShowStationRating(), TrainDetailsCapacityTab(), TrainDetailsCargoTab(), and TrainDetailsInfoTab().
int DrawString | ( | int | left, | |
int | right, | |||
int | top, | |||
StringID | str, | |||
TextColour | colour, | |||
StringAlignment | align, | |||
bool | underline, | |||
FontSize | fontsize | |||
) |
Draw string, possibly truncated to make it fit in its allocated space.
left | The left most position to draw on. | |
right | The right most position to draw on. | |
top | The top most position to draw on. | |
str | String to draw. | |
colour | Colour used for drawing the string, see DoDrawString() for details | |
align | The alignment of the string when drawing left-to-right. In the case a right-to-left language is chosen this is inverted so it will be drawn in the right direction. | |
underline | Whether to underline what has been drawn or not. | |
fontsize | The size of the initial characters. |
Definition at line 533 of file gfx.cpp.
References DRAW_STRING_BUFFER, DrawString(), and lastof.
int DrawStringMultiLine | ( | int | left, | |
int | right, | |||
int | top, | |||
int | bottom, | |||
StringID | str, | |||
TextColour | colour, | |||
StringAlignment | align, | |||
bool | underline, | |||
FontSize | fontsize | |||
) |
Draw string, possibly over multiple lines.
left | The left most position to draw on. | |
right | The right most position to draw on. | |
top | The top most position to draw on. | |
bottom | The bottom most position to draw on. | |
str | String to draw. | |
colour | Colour used for drawing the string, see DoDrawString() for details | |
align | The horizontal and vertical alignment of the string. | |
underline | Whether to underline all strings | |
fontsize | The size of the initial characters. |
Definition at line 681 of file gfx.cpp.
References DRAW_STRING_BUFFER, DrawStringMultiLine(), and lastof.
int DrawStringMultiLine | ( | int | left, | |
int | right, | |||
int | top, | |||
int | bottom, | |||
const char * | str, | |||
TextColour | colour, | |||
StringAlignment | align, | |||
bool | underline, | |||
FontSize | fontsize | |||
) |
Draw string, possibly over multiple lines.
left | The left most position to draw on. | |
right | The right most position to draw on. | |
top | The top most position to draw on. | |
bottom | The bottom most position to draw on. | |
str | String to draw. | |
colour | Colour used for drawing the string, see DoDrawString() for details | |
align | The horizontal and vertical alignment of the string. | |
underline | Whether to underline all strings | |
fontsize | The size of the initial characters. |
Definition at line 619 of file gfx.cpp.
References SmallVector< T, S >::Begin(), DrawLayoutLine(), SmallVector< T, S >::End(), Layouter::GetBounds(), RoundDivSU(), SA_BOTTOM, SA_TOP, SA_VERT_CENTER, and SA_VERT_MASK.
Referenced by StationViewWindow::DrawAcceptedCargo(), StationViewWindow::DrawCargoRatings(), NetworkContentListWindow::DrawDetails(), BaseGraphWindow::DrawGraph(), IndustryViewWindow::DrawInfo(), DrawStationCoverageAreaText(), DrawStringMultiLine(), RefitWindow::DrawWidget(), TownViewWindow::DrawWidget(), TownAuthorityWindow::DrawWidget(), StoryBookWindow::DrawWidget(), GameSettingsWindow::DrawWidget(), GameOptionsWindow::DrawWidget(), BuildObjectWindow::DrawWidget(), NewsWindow::DrawWidget(), NewGRFParametersWindow::DrawWidget(), QueryWindow::DrawWidget(), TooltipsWindow::DrawWidget(), LandInfoWindow::DrawWidget(), SelectGameWindow::DrawWidget(), BuildIndustryWindow::DrawWidget(), GoalQuestionWindow::DrawWidget(), SaveLoadWindow::DrawWidget(), EnginePreviewWindow::DrawWidget(), BuyCompanyWindow::DrawWidget(), CompanyWindow::DrawWidget(), CheatWindow::DrawWidget(), BuildBridgeWindow::DrawWidget(), BuildAirportWindow::DrawWidget(), AIListWindow::DrawWidget(), NetworkDrawChatMessage(), GameSettingsWindow::OnPaint(), HighScoreWindow::OnPaint(), EndGameWindow::OnPaint(), IConsoleWindow::OnPaint(), ShowAdditionalText(), and ShowRefitOptionsList().
bool FillDrawPixelInfo | ( | DrawPixelInfo * | n, | |
int | left, | |||
int | top, | |||
int | width, | |||
int | height | |||
) |
Set up a clipping area for only drawing into a certain area.
To do this, Fill a DrawPixelInfo object with the supplied relative rectangle, backup the original (calling) _cur_dpi and assign the just returned DrawPixelInfo _cur_dpi. When you are done, give restore _cur_dpi's original value
*n | the DrawPixelInfo that will be the clipping rectangle box allowed for drawing | |
left,top,width,height | the relative coordinates of the clipping rectangle relative to the current _cur_dpi. This will most likely be the offset from the calling window coordinates |
Definition at line 1451 of file gfx.cpp.
References BlitterFactory::GetCurrentBlitter(), and Blitter::MoveTo().
Referenced by NWidgetMatrix::Draw(), DrawRoadVehImage(), DrawTrainImage(), StoryBookWindow::DrawWidget(), SmallMapWindow::DrawWidget(), BuildRailStationWindow::DrawWidget(), BuildObjectWindow::DrawWidget(), and IndustryCargoesWindow::DrawWidget().
void GameSizeChanged | ( | ) |
Size of the application screen changed.
Adapt the game screen-size, re-allocate the open windows, and repaint everything
Definition at line 589 of file main_gui.cpp.
References _cur_resolution, MarkWholeScreenDirty(), and RelocateAllWindows().
Referenced by VideoDriver_Win32::MakeWindow().
void GetBroadestDigit | ( | uint * | front, | |
uint * | next, | |||
FontSize | size | |||
) |
Determine the broadest digits for guessing the maximum width of a n-digit number.
[out] | front | Broadest digit, which is not 0. (Use this digit as first digit for numbers with more than one digit.) |
[out] | next | Broadest digit, including 0. (Use this digit for all digits, except the first one; or for numbers with only one digit.) |
size | Font of the digit |
Definition at line 1151 of file gfx.cpp.
References GetCharacterWidth().
Referenced by SetDParamMaxDigits().
int GetCharacterHeight | ( | FontSize | size | ) |
Get height of a character for a given font size.
size | Font size to get height of |
Definition at line 60 of file fontcache.cpp.
References FontCache::Get(), and FontCache::GetHeight().
Referenced by BaseGraphWindow::DrawGraph(), NWidgetResizeBase::SetMinimalTextLines(), and StationsWndShowStationRating().
const char* GetCharAtPosition | ( | const char * | str, | |
int | x, | |||
FontSize | start_fontsize | |||
) |
Get the character from a string that is drawn at a specific position.
str | String to test. | |
x | Position relative to the start of the string. | |
start_fontsize | Font size to start the text with. |
Definition at line 739 of file gfx.cpp.
References Layouter::GetCharAtPosition().
Referenced by IConsoleWindow::GetTextCharacterAtPosition().
Get the leading corner of a character in a single-line string relative to the start of the string.
str | String containing the character. | |
ch | Pointer to the character in the string. | |
start_fontsize | Font size to start the text with. |
Definition at line 726 of file gfx.cpp.
References Layouter::GetCharPosition().
Referenced by QueryString::GetBoundingRect(), IConsoleWindow::GetTextBoundingRect(), Textbuf::UpdateCaretPosition(), and Textbuf::UpdateMarkedText().
TextColour GetContrastColour | ( | uint8 | background | ) |
Determine a contrasty text colour for a coloured background.
background | Background colour. |
Definition at line 1092 of file gfx.cpp.
References Palette::palette.
Referenced by CompanyStationsWindow::DrawWidget(), and StationsWndShowStationRating().
byte GetDigitWidth | ( | FontSize | size | ) |
Return the maximum width of single digit.
size | Font of the digit |
Definition at line 1136 of file gfx.cpp.
References GetCharacterWidth(), and max().
Referenced by BaseVehicleListWindow::DrawVehicleListItems(), BuildSignalWindow::UpdateWidgetSize(), and DepotWindow::UpdateWidgetSize().
Get the size of a sprite.
sprid | Sprite to examine. | |
[out] | offset | Optionally returns the sprite position offset. |
Definition at line 767 of file gfx.cpp.
References Sprite::height, ST_NORMAL, UnScaleByZoom(), Sprite::width, Sprite::x_offs, and Sprite::y_offs.
Referenced by VehicleGroupWindow::ComputeGroupInfoSize(), StoryBookWindow::DrawActionElement(), DrawEngineList(), DrawOrderString(), TownAuthorityWindow::DrawRatings(), DrawResizeBox(), BuildSignalWindow::DrawSignalSprite(), BaseVehicleListWindow::DrawVehicleListItems(), DrawVehicleRefitWindow(), VehicleViewWindow::DrawWidget(), TownDirectoryWindow::DrawWidget(), TimetableWindow::DrawWidget(), StatusBarWindow::DrawWidget(), OrdersWindow::DrawWidget(), LinkGraphLegendWindow::DrawWidget(), PerformanceRatingDetailWindow::DrawWidget(), GraphLegendWindow::DrawWidget(), CompanyWindow::DrawWidget(), BuildBridgeWindow::DrawWidget(), BuildAirportWindow::DrawWidget(), QueryString::GetBoundingRect(), QueryString::GetCaretPosition(), QueryString::GetCharAtPosition(), BuildTreesWindow::GetMaxTreeSpriteSize(), StoryBookWindow::GetPageElementHeight(), MakeCompanyButtonRows(), MakeNWidgetCompanyLines(), NWidgetLeaf::NWidgetLeaf(), BuildSignalWindow::OnInit(), SelectCompanyManagerFaceWindow::OnInit(), MainWindow::OnPaint(), NWidgetLeaf::SetupSmallestSize(), VehicleViewWindow::UpdateWidgetSize(), TownDirectoryWindow::UpdateWidgetSize(), ScenarioEditorToolbarWindow::UpdateWidgetSize(), NetworkClientListWindow::UpdateWidgetSize(), VehicleGroupWindow::UpdateWidgetSize(), CompanyLeagueWindow::UpdateWidgetSize(), BuyCompanyWindow::UpdateWidgetSize(), CompanyWindow::UpdateWidgetSize(), BuildBridgeWindow::UpdateWidgetSize(), and BuildAirportWindow::UpdateWidgetSize().
Return the string dimension in pixels.
The height and width are returned in a single Dimension value. TINYFONT, BIGFONT modifiers are only supported as the first character of the string. The returned dimensions are therefore a rough estimation correct for all the current strings but not every possible combination
str | string to calculate pixel-width | |
start_fontsize | Fontsize to start the text with |
Definition at line 698 of file gfx.cpp.
References Layouter::GetBounds().
Referenced by VehicleGroupWindow::ComputeGroupInfoSize(), DrawCaption(), DrawEngineList(), DrawLabel(), DrawText(), TimetableWindow::DrawWidget(), OrdersWindow::DrawWidget(), CheatWindow::DrawWidget(), BaseVehicleListWindow::GetActionDropdownSize(), ExpensesList::GetCategoriesWidth(), GetStringBoundingBox(), BaseGraphWindow::GetYLabelWidth(), SmallMapWindow::OnInit(), IndustryCargoesWindow::OnInit(), SelectCompanyManagerFaceWindow::OnInit(), RefitWindow::OnInvalidateData(), GoalListWindow::OnPaint(), TextfileWindow::SetupScrollbars(), NWidgetLeaf::SetupSmallestSize(), NWidgetBackground::SetupSmallestSize(), ViewportSign::UpdatePosition(), VehicleDetailsWindow::UpdateWidgetSize(), VehicleListWindow::UpdateWidgetSize(), TownDirectoryWindow::UpdateWidgetSize(), TownAuthorityWindow::UpdateWidgetSize(), ScenarioEditorToolbarWindow::UpdateWidgetSize(), TimetableWindow::UpdateWidgetSize(), SubsidyListWindow::UpdateWidgetSize(), StoryBookWindow::UpdateWidgetSize(), StatusBarWindow::UpdateWidgetSize(), SelectStationWindow< T >::UpdateWidgetSize(), StationViewWindow::UpdateWidgetSize(), CompanyStationsWindow::UpdateWidgetSize(), CustomCurrencyWindow::UpdateWidgetSize(), GameSettingsWindow::UpdateWidgetSize(), GameOptionsWindow::UpdateWidgetSize(), BuildRailStationWindow::UpdateWidgetSize(), OrdersWindow::UpdateWidgetSize(), BuildObjectWindow::UpdateWidgetSize(), MessageHistoryWindow::UpdateWidgetSize(), ScanProgressWindow::UpdateWidgetSize(), NewGRFParametersWindow::UpdateWidgetSize(), NetworkJoinStatusWindow::UpdateWidgetSize(), NetworkClientListWindow::UpdateWidgetSize(), NetworkClientListPopupWindow::UpdateWidgetSize(), NetworkStartServerWindow::UpdateWidgetSize(), NetworkGameWindow::UpdateWidgetSize(), NetworkChatWindow::UpdateWidgetSize(), MusicWindow::UpdateWidgetSize(), MusicTrackSelectionWindow::UpdateWidgetSize(), TooltipsWindow::UpdateWidgetSize(), AboutWindow::UpdateWidgetSize(), LandInfoWindow::UpdateWidgetSize(), LinkGraphLegendWindow::UpdateWidgetSize(), SelectGameWindow::UpdateWidgetSize(), IndustryDirectoryWindow::UpdateWidgetSize(), BuildIndustryWindow::UpdateWidgetSize(), VehicleGroupWindow::UpdateWidgetSize(), PerformanceRatingDetailWindow::UpdateWidgetSize(), CompanyLeagueWindow::UpdateWidgetSize(), PaymentRatesGraphWindow::UpdateWidgetSize(), BaseGraphWindow::UpdateWidgetSize(), GoalListWindow::UpdateWidgetSize(), GenerateProgressWindow::UpdateWidgetSize(), CreateScenarioWindow::UpdateWidgetSize(), GenerateLandscapeWindow::UpdateWidgetSize(), SaveLoadWindow::UpdateWidgetSize(), DepotWindow::UpdateWidgetSize(), CompanyWindow::UpdateWidgetSize(), CompanyInfrastructureWindow::UpdateWidgetSize(), SelectCompanyManagerFaceWindow::UpdateWidgetSize(), SelectCompanyLiveryWindow::UpdateWidgetSize(), CompanyFinancesWindow::UpdateWidgetSize(), CheatWindow::UpdateWidgetSize(), BuildVehicleWindow::UpdateWidgetSize(), BuildBridgeWindow::UpdateWidgetSize(), ReplaceVehicleWindow::UpdateWidgetSize(), BuildAirportWindow::UpdateWidgetSize(), and Textbuf::UpdateWidth().
Get bounding box of a string.
Uses parameters set by DParam if needed. Has the same restrictions as GetStringBoundingBox(const char *str).
strid | String to examine. |
Definition at line 710 of file gfx.cpp.
References DRAW_STRING_BUFFER, GetStringBoundingBox(), and lastof.
int GetStringHeight | ( | const char * | str, | |
int | maxw, | |||
FontSize | fontsize | |||
) |
Calculates height of string (in pixels).
The string is changed to a multiline string if needed.
str | string to check | |
maxw | maximum string width |
Definition at line 546 of file gfx.cpp.
References Layouter::GetBounds().
Referenced by EnginePreviewWindow::DrawWidget(), TextfileWindow::GetContentHeight(), TownViewWindow::GetDesiredInfoHeight(), StoryBookWindow::GetHeadHeight(), SettingEntry::GetMaxHelpHeight(), StoryBookWindow::GetPageElementHeight(), GetStringHeight(), GetStringMultiLineBoundingBox(), GameOptionsWindow::UpdateWidgetSize(), TooltipsWindow::UpdateWidgetSize(), LandInfoWindow::UpdateWidgetSize(), SelectGameWindow::UpdateWidgetSize(), GoalQuestionWindow::UpdateWidgetSize(), EnginePreviewWindow::UpdateWidgetSize(), BuyCompanyWindow::UpdateWidgetSize(), and CheatWindow::UpdateWidgetSize().
int GetStringHeight | ( | StringID | str, | |
int | maxw | |||
) |
Calculates height of string (in pixels).
The string is changed to a multiline string if needed.
str | string to check | |
maxw | maximum string width |
Definition at line 558 of file gfx.cpp.
References DRAW_STRING_BUFFER, GetStringHeight(), and lastof.
int GetStringLineCount | ( | StringID | str, | |
int | maxw | |||
) |
Calculates number of lines of string.
The string is changed to a multiline string if needed.
str | string to check | |
maxw | maximum string width |
Definition at line 571 of file gfx.cpp.
References DRAW_STRING_BUFFER, lastof, and SmallVector< T, S >::Length().
Referenced by NetworkDrawChatMessage(), and GameSettingsWindow::OnPaint().
Calculate string bounding box for multi-line strings.
str | String to check. | |
suggestion | Suggested bounding box. |
Definition at line 598 of file gfx.cpp.
References GetStringHeight().
Calculate string bounding box for multi-line strings.
str | String to check. | |
suggestion | Suggested bounding box. |
Definition at line 586 of file gfx.cpp.
References GetStringHeight().
Referenced by TownAuthorityWindow::UpdateWidgetSize(), NewsWindow::UpdateWidgetSize(), NewGRFParametersWindow::UpdateWidgetSize(), QueryWindow::UpdateWidgetSize(), and BuildAirportWindow::UpdateWidgetSize().
void GfxFillRect | ( | int | left, | |
int | top, | |||
int | right, | |||
int | bottom, | |||
int | colour, | |||
FillRectMode | mode | |||
) |
Applies a certain FillRectMode-operation to a rectangle [left, right] x [top, bottom] on the screen.
left | Minimum X (inclusive) | |
top | Minimum Y (inclusive) | |
right | Maximum X (inclusive) | |
bottom | Maximum Y (inclusive) | |
colour | A 8 bit palette index (FILLRECT_OPAQUE and FILLRECT_CHECKER) or a recolour spritenumber (FILLRECT_RECOLOUR) | |
mode | FILLRECT_OPAQUE: Fill the rectangle with the specified colour FILLRECT_CHECKER: Like FILLRECT_OPAQUE, but only draw every second pixel (used to grey out things) FILLRECT_RECOLOUR: Apply a recolour sprite to every pixel in the rectangle currently on screen |
Definition at line 106 of file gfx.cpp.
References Blitter::DrawColourMappingRect(), Blitter::DrawRect(), FILLRECT_CHECKER, FILLRECT_RECOLOUR, GB(), BlitterFactory::GetCurrentBlitter(), Blitter::MoveTo(), PALETTE_WIDTH, Blitter::SetPixel(), and ZOOM_LVL_NORMAL.
Referenced by NWidgetLeaf::Draw(), NWidgetViewport::Draw(), NWidgetBackground::Draw(), NWidgetMatrix::Draw(), NWidgetToolbarContainer::Draw(), CargoesField::Draw(), DrawArrowButtons(), DrawCaption(), NetworkContentListWindow::DrawDetails(), DrawDropDownButton(), DrawFrame(), DrawFrameRect(), BaseGraphWindow::DrawGraph(), VehicleGroupWindow::DrawGroupInfo(), CargoesField::DrawHorConnection(), SmallMapWindow::DrawHorizMapIndicator(), DrawHorizontalScrollbar(), DrawLayoutLine(), DrawMatrix(), NetworkContentListWindow::DrawMatrix(), NetworkGameWindow::DrawServerLine(), SmallMapWindow::DrawSmallMap(), DrawTrainDetails(), LinkGraphOverlay::DrawVertex(), DrawVerticalScrollbar(), SmallMapWindow::DrawVertMapIndicator(), DropdownWindow::DrawWidget(), CompanyStationsWindow::DrawWidget(), SmallMapWindow::DrawWidget(), BuildRailWaypointWindow::DrawWidget(), BuildRailStationWindow::DrawWidget(), OrdersWindow::DrawWidget(), BuildObjectWindow::DrawWidget(), NewsWindow::DrawWidget(), NetworkClientListWindow::DrawWidget(), NetworkClientListPopupWindow::DrawWidget(), MusicWindow::DrawWidget(), MusicTrackSelectionWindow::DrawWidget(), TooltipsWindow::DrawWidget(), LinkGraphLegendWindow::DrawWidget(), BuildIndustryWindow::DrawWidget(), PerformanceRatingDetailWindow::DrawWidget(), PaymentRatesGraphWindow::DrawWidget(), SaveLoadWindow::DrawWidget(), CompanyInfrastructureWindow::DrawWidget(), CompanyFinancesWindow::DrawWidget(), BootstrapBackground::DrawWidget(), BuildAirportWindow::DrawWidget(), AIDebugWindow::DrawWidget(), Window::DrawWidgets(), DrawYearColumn(), HighlightDragPosition(), NetworkDrawChatMessage(), IConsoleWindow::OnPaint(), and StationsWndShowStationRating().
void HandleKeypress | ( | uint | keycode, | |
WChar | key | |||
) |
Handle keyboard input.
keycode | Virtual keycode of the key. | |
key | Unicode character of the key. |
Definition at line 2547 of file window.cpp.
References HotkeyList::CheckMatch(), EditBoxInGlobalFocus(), FindWindowById(), Window::HandleEditBoxKey(), HasModalProgress(), WindowDesc::hotkeys, NWidgetCore::index, IsLocalCompany(), Window::nested_focus, Window::OnHotkey(), Window::OnKeyPress(), WC_CONSOLE, WC_MAIN_TOOLBAR, Window::window_class, and Window::window_desc.
Referenced by HandleCharMsg().
void HandleTextInput | ( | const char * | str, | |
bool | marked, | |||
const char * | caret, | |||
const char * | insert_location, | |||
const char * | replacement_end | |||
) |
Handle text input.
str | Text string to input. | |
marked | Is the input a marked composition string from an IME? | |
caret | Move the caret to this point in the insertion string. |
Definition at line 2635 of file window.cpp.
References EditBoxInGlobalFocus(), NWidgetCore::index, Window::InsertTextString(), Window::nested_focus, WC_CONSOLE, and Window::window_class.
Referenced by CancelIMEComposition(), and HandleIMEComposition().
void LoadStringWidthTable | ( | bool | monospace | ) |
Initialize _stringwidth_table cache.
monospace | Whether to load the monospace cache or the normal fonts. |
Definition at line 1106 of file gfx.cpp.
References _stringwidth_table, FS_BEGIN, FS_MONO, GetGlyphWidth(), and ReInitAllWindows().
Referenced by AfterLoadGame(), CheckForMissingGlyphs(), GenerateWorld(), and ReloadNewGRFData().
void SetAnimatedMouseCursor | ( | const AnimCursor * | table | ) |
Assign an animation to the cursor.
table | Array of animation states. |
Definition at line 1569 of file gfx.cpp.
References CursorVars::animate_cur, and CursorVars::animate_list.
void SetDirtyBlocks | ( | int | left, | |
int | top, | |||
int | right, | |||
int | bottom | |||
) |
This function extends the internal _invalid_rect rectangle as it now contains the rectangle defined by the given parameters.
Note the point (0,0) is top left.
left | The left edge of the rectangle | |
top | The top edge of the rectangle | |
right | The right edge of the rectangle | |
bottom | The bottom edge of the rectangle |
AddDirtyBlock
as it neither set a dirty rect nor add several dirty rects although the function name is in plural. (Progman) Definition at line 1389 of file gfx.cpp.
Referenced by MarkViewportDirty(), MarkWholeScreenDirty(), PositionWindow(), Window::SetDirty(), NWidgetBase::SetDirty(), and NewsWindow::SetWindowTop().
Assign a single non-animated sprite to the cursor.
Definition at line 1556 of file gfx.cpp.
References CursorVars::animate_timeout, and SetCursorSprite().
Referenced by CleanupGeneration(), GenerateProgressWindow::OnClick(), SaveFileDone(), and SaveFileStart().
void UpdateCursorSize | ( | ) |
Update cursor dimension.
Called when changing cursor sprite resp. reloading grfs.
Definition at line 1501 of file gfx.cpp.
References CursorVars::dirty, GB(), Sprite::height, CursorVars::sprite, SPRITE_WIDTH, ST_NORMAL, UnScaleByZoom(), Sprite::width, Sprite::x_offs, Sprite::y_offs, and ZOOM_LVL_GUI.
Referenced by GfxLoadSprites(), and SetCursorSprite().
bool _palette_remap_grf[] |
Whether the given NewGRFs must get a palette remap from windows to DOS or not.
Definition at line 29 of file gfxinit.cpp.
Referenced by DecodeSingleSprite(), LoadNewGRFFile(), LoadSpriteTables(), and ReadRecolourSprite().
const int DRAW_STRING_BUFFER = 2048 [static] |
Size of the buffer used for drawing strings.
Definition at line 86 of file gfx_func.h.
Referenced by StringFilter::AddLine(), CopyOutDParam(), NetworkContentListWindow::DrawDetails(), DrawString(), DrawStringMultiLine(), GetLayouter(), GetStringBoundingBox(), GetStringHeight(), GetStringLineCount(), NetworkAddChatMessage(), NetworkHandlePauseChange(), ShowErrorMessage(), strnatcmp(), and ViewportSign::UpdatePosition().