(svn r5967) -Change: use right alignment for the year in the player's balance window instead of centering (about) 'string width' / 2 from the right edge

This commit is contained in:
rubidium 2006-08-20 10:50:23 +00:00
parent 5890ea5a71
commit 0c3093b25f
3 changed files with 15 additions and 4 deletions

14
gfx.c
View File

@ -352,12 +352,16 @@ int DrawStringTruncated(int x, int y, StringID str, uint16 color, uint maxw)
}
void DrawStringRightAligned(int x, int y, StringID str, uint16 color)
int DrawStringRightAligned(int x, int y, StringID str, uint16 color)
{
char buffer[512];
int w;
GetString(buffer, str);
DoDrawString(buffer, x - GetStringWidth(buffer), y, color);
w = GetStringWidth(buffer);
DoDrawString(buffer, x - w, y, color);
return w;
}
void DrawStringRightAlignedTruncated(int x, int y, StringID str, uint16 color, uint maxw)
@ -368,6 +372,12 @@ void DrawStringRightAlignedTruncated(int x, int y, StringID str, uint16 color, u
DoDrawString(buffer, x - GetStringWidth(buffer), y, color);
}
void DrawStringRightAlignedUnderline(int x, int y, StringID str, uint16 color)
{
int w = DrawStringRightAligned(x, y, str, color);
GfxFillRect(x - w, y + 10, x, y + 10, _string_colorremap[1]);
}
int DrawStringCentered(int x, int y, StringID str, uint16 color)
{

3
gfx.h
View File

@ -67,8 +67,9 @@ int DoDrawStringTruncated(const char *str, int x, int y, uint16 color, uint maxw
void DrawStringCenterUnderline(int x, int y, StringID str, uint16 color);
void DrawStringCenterUnderlineTruncated(int xl, int xr, int y, StringID str, uint16 color);
void DrawStringRightAligned(int x, int y, StringID str, uint16 color);
int DrawStringRightAligned(int x, int y, StringID str, uint16 color);
void DrawStringRightAlignedTruncated(int x, int y, StringID str, uint16 color, uint maxw);
void DrawStringRightAlignedUnderline(int x, int y, StringID str, uint16 color);
void GfxFillRect(int left, int top, int right, int bottom, int color);
void GfxDrawLine(int left, int top, int right, int bottom, int color);

View File

@ -48,7 +48,7 @@ static void DrawPlayerEconomyStats(const Player *p, byte mode)
do {
if (year >= BASE_YEAR + p->inaugurated_year) {
SetDParam(0, year);
DrawStringCenterUnderline(x-17, 15, STR_7010, 0);
DrawStringRightAlignedUnderline(x, 15, STR_7010, 0);
sum = 0;
for (i = 0; i != 13; i++) {
/* draw one row in the price column */