diff options
-rw-r--r-- | src/train_gui.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/train_gui.cpp b/src/train_gui.cpp index 5d5fe3ab7..7888b0d65 100644 --- a/src/train_gui.cpp +++ b/src/train_gui.cpp @@ -61,8 +61,10 @@ static int HighlightDragPosition(int px, int max_width, VehicleID selection) bool rtl = _current_text_dir == TD_RTL; assert(selection != INVALID_VEHICLE); - Point offset; - int dragged_width = Train::Get(selection)->GetDisplayImageWidth(&offset) + WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT; + int dragged_width = WD_FRAMERECT_LEFT + WD_FRAMERECT_RIGHT; + for (Train *t = Train::Get(selection); t != NULL; t = t->HasArticulatedPart() ? t->GetNextArticulatedPart() : NULL) { + dragged_width += t->GetDisplayImageWidth(NULL); + } int drag_hlight_left = rtl ? max(px -dragged_width, 0) : px; int drag_hlight_right = rtl ? px : min(px + dragged_width, max_width); |