diff options
-rw-r--r-- | src/rail_gui.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/rail_gui.cpp b/src/rail_gui.cpp index 1a972b8db..a44eed5a5 100644 --- a/src/rail_gui.cpp +++ b/src/rail_gui.cpp @@ -1689,11 +1689,13 @@ struct BuildRailDepotWindow : public PickerWindowBase { virtual void OnPaint() { this->DrawWidgets(); + } + + virtual void DrawWidget(const Rect &r, int widget) const + { + if (!IsInsideMM(widget, BRDW_DEPOT_NE, BRDW_DEPOT_NW + 1)) return; - DrawTrainDepotSprite(this->nested_array[BRDW_DEPOT_NE]->pos_x - 1, this->nested_array[BRDW_DEPOT_NE]->pos_y, DIAGDIR_NE, _cur_railtype); - DrawTrainDepotSprite(this->nested_array[BRDW_DEPOT_SE]->pos_x - 1, this->nested_array[BRDW_DEPOT_SE]->pos_y, DIAGDIR_SE, _cur_railtype); - DrawTrainDepotSprite(this->nested_array[BRDW_DEPOT_SW]->pos_x - 1, this->nested_array[BRDW_DEPOT_SW]->pos_y, DIAGDIR_SW, _cur_railtype); - DrawTrainDepotSprite(this->nested_array[BRDW_DEPOT_NW]->pos_x - 1, this->nested_array[BRDW_DEPOT_NW]->pos_y, DIAGDIR_NW, _cur_railtype); + DrawTrainDepotSprite(r.left - 1, r.top, widget - BRDW_DEPOT_NE + DIAGDIR_NE, _cur_railtype); } virtual void OnClick(Point pt, int widget) |