mirror of https://github.com/OpenTTD/OpenTTD
(svn r5048) - NewStations: Set up clipping areas to draw the station preview graphics in. This prevents larger station graphics from overflowing onto the list.
parent
65c163668a
commit
57146a3417
22
rail_gui.c
22
rail_gui.c
|
@ -620,6 +620,7 @@ static void StationBuildWndProc(Window *w, WindowEvent *e)
|
||||||
uint bits;
|
uint bits;
|
||||||
bool newstations = _railstation.newstations;
|
bool newstations = _railstation.newstations;
|
||||||
int y_offset;
|
int y_offset;
|
||||||
|
DrawPixelInfo tmp_dpi, *old_dpi;
|
||||||
|
|
||||||
if (WP(w,def_d).close) return;
|
if (WP(w,def_d).close) return;
|
||||||
|
|
||||||
|
@ -671,11 +672,24 @@ static void StationBuildWndProc(Window *w, WindowEvent *e)
|
||||||
|
|
||||||
y_offset = newstations ? 90 : 0;
|
y_offset = newstations ? 90 : 0;
|
||||||
|
|
||||||
if (!DrawStationTile(39, 42 + y_offset, _cur_railtype, AXIS_X, _railstation.station_class, _railstation.station_type)) {
|
/* Set up a clipping area for the '/' station preview */
|
||||||
StationPickerDrawSprite(39, 42 + y_offset, _cur_railtype, 2);
|
if (FillDrawPixelInfo(&tmp_dpi, NULL, 7, 26 + y_offset, 66, 48)) {
|
||||||
|
old_dpi = _cur_dpi;
|
||||||
|
_cur_dpi = &tmp_dpi;
|
||||||
|
if (!DrawStationTile(32, 16, _cur_railtype, AXIS_X, _railstation.station_class, _railstation.station_type)) {
|
||||||
|
StationPickerDrawSprite(32, 16, _cur_railtype, 2);
|
||||||
|
}
|
||||||
|
_cur_dpi = old_dpi;
|
||||||
}
|
}
|
||||||
if (!DrawStationTile(107, 42 + y_offset, _cur_railtype, AXIS_Y, _railstation.station_class, _railstation.station_type)) {
|
|
||||||
StationPickerDrawSprite(107, 42 + y_offset, _cur_railtype, 3);
|
/* Set up a clipping area for the '\' station preview */
|
||||||
|
if (FillDrawPixelInfo(&tmp_dpi, NULL, 75, 26 + y_offset, 66, 48)) {
|
||||||
|
old_dpi = _cur_dpi;
|
||||||
|
_cur_dpi = &tmp_dpi;
|
||||||
|
if (!DrawStationTile(32, 16, _cur_railtype, AXIS_Y, _railstation.station_class, _railstation.station_type)) {
|
||||||
|
StationPickerDrawSprite(32, 16, _cur_railtype, 3);
|
||||||
|
}
|
||||||
|
_cur_dpi = old_dpi;
|
||||||
}
|
}
|
||||||
|
|
||||||
DrawStringCentered(74, 15 + y_offset, STR_3002_ORIENTATION, 0);
|
DrawStringCentered(74, 15 + y_offset, STR_3002_ORIENTATION, 0);
|
||||||
|
|
Loading…
Reference in New Issue