|
|
|
@ -656,6 +656,28 @@ int DrawString(int left, int right, int top, const char *str, TextColour colour,
|
|
|
|
|
return DrawLayoutLine(*layout.front(), top, left, right, align, underline, true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Draw string, possibly truncated to make it fit in its allocated space
|
|
|
|
|
*
|
|
|
|
|
* @param left The left most position to draw on.
|
|
|
|
|
* @param right The right most position to draw on.
|
|
|
|
|
* @param top The top most position to draw on.
|
|
|
|
|
* @param str String to draw.
|
|
|
|
|
* @param colour Colour used for drawing the string, for details see _string_colourmap in
|
|
|
|
|
* table/palettes.h or docs/ottd-colourtext-palette.png or the enum TextColour in gfx_type.h
|
|
|
|
|
* @param 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.
|
|
|
|
|
* @param underline Whether to underline what has been drawn or not.
|
|
|
|
|
* @param fontsize The size of the initial characters.
|
|
|
|
|
* @return In case of left or center alignment the right most pixel we have drawn to.
|
|
|
|
|
* In case of right alignment the left most pixel we have drawn to.
|
|
|
|
|
*/
|
|
|
|
|
int DrawString(int left, int right, int top, const std::string &str, TextColour colour, StringAlignment align, bool underline, FontSize fontsize)
|
|
|
|
|
{
|
|
|
|
|
return DrawString(left, right, top, str.c_str(), colour, align, underline, fontsize);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Draw string, possibly truncated to make it fit in its allocated space
|
|
|
|
|
*
|
|
|
|
@ -806,6 +828,28 @@ int DrawStringMultiLine(int left, int right, int top, int bottom, const char *st
|
|
|
|
|
return ((align & SA_VERT_MASK) == SA_BOTTOM) ? first_line : last_line;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Draw string, possibly over multiple lines.
|
|
|
|
|
*
|
|
|
|
|
* @param left The left most position to draw on.
|
|
|
|
|
* @param right The right most position to draw on.
|
|
|
|
|
* @param top The top most position to draw on.
|
|
|
|
|
* @param bottom The bottom most position to draw on.
|
|
|
|
|
* @param str String to draw.
|
|
|
|
|
* @param colour Colour used for drawing the string, for details see _string_colourmap in
|
|
|
|
|
* table/palettes.h or docs/ottd-colourtext-palette.png or the enum TextColour in gfx_type.h
|
|
|
|
|
* @param align The horizontal and vertical alignment of the string.
|
|
|
|
|
* @param underline Whether to underline all strings
|
|
|
|
|
* @param fontsize The size of the initial characters.
|
|
|
|
|
*
|
|
|
|
|
* @return If \a align is #SA_BOTTOM, the top to where we have written, else the bottom to where we have written.
|
|
|
|
|
*/
|
|
|
|
|
int DrawStringMultiLine(int left, int right, int top, int bottom, const std::string &str, TextColour colour, StringAlignment align, bool underline, FontSize fontsize)
|
|
|
|
|
{
|
|
|
|
|
return DrawStringMultiLine(left, right, top, bottom, str.c_str(), colour, align, underline, fontsize);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Draw string, possibly over multiple lines.
|
|
|
|
|
*
|
|
|
|
|