# HG changeset patch # User rubidium # Date 1207821735 0 # Node ID 1e7420035d217750e69ad463a36c968c0daed062 # Parent 4fd35184e35ff90d9c05254edca2e3c90d449f4d (svn r12649) -Fix: refit orders not being shown. -Fix: unusable non-stop orders shown for waypoints and depots. diff --git a/src/lang/english.txt b/src/lang/english.txt --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -2652,8 +2652,8 @@ STR_8801_CITIZENS_CELEBRATE_FIRST :{BLACK}{BIGFONT}Citizens celebrate . . .{}First train arrives at {STATION}! STR_8802_DETAILS :{WHITE}{VEHICLE} (Details) STR_8803_TRAIN_IN_THE_WAY :{WHITE}Train in the way -STR_8804 :{SETX 10}{COMMA}: {STRING3} -STR_8805 :{RIGHTARROW}{SETX 10}{COMMA}: {STRING3} +STR_8804 :{SETX 10}{COMMA}: {STRING3} {STRING2} +STR_8805 :{RIGHTARROW}{SETX 10}{COMMA}: {STRING3} {STRING2} STR_ORDER_GO_TO :Go to STR_ORDER_GO_NON_STOP_TO :Go non-stop to STR_ORDER_GO_VIA :Go via diff --git a/src/order_gui.cpp b/src/order_gui.cpp --- a/src/order_gui.cpp +++ b/src/order_gui.cpp @@ -186,7 +186,7 @@ StringID str; while (order != NULL) { str = (v->cur_order_index == i) ? STR_8805 : STR_8804; - SetDParam(3, STR_EMPTY); + SetDParam(5, STR_EMPTY); if (i - w->vscroll.pos < w->vscroll.cap) { SetDParam(1, 6); @@ -228,10 +228,8 @@ SetDParam(1, s); if (order->IsRefit()) { - SetDParam(3, STR_REFIT_ORDER); - SetDParam(4, GetCargo(order->GetRefitCargo())->name); - } else { - SetDParam(3, STR_EMPTY); + SetDParam(5, STR_REFIT_ORDER); + SetDParam(6, GetCargo(order->GetRefitCargo())->name); } break; } @@ -656,9 +654,10 @@ OrderClick_Delete(w, v, 0); break; - case ORDER_WIDGET_NON_STOP: - ShowDropDownMenu(w, _order_non_stop_drowdown, GetVehicleOrder(v, OrderGetSel(w))->GetNonStopType(), ORDER_WIDGET_NON_STOP, 0, 0, 124); - break; + case ORDER_WIDGET_NON_STOP: { + const Order *o = GetVehicleOrder(v, OrderGetSel(w)); + ShowDropDownMenu(w, _order_non_stop_drowdown, o->GetNonStopType(), ORDER_WIDGET_NON_STOP, 0, o->IsType(OT_GOTO_STATION) ? 0 : (o->IsType(OT_GOTO_WAYPOINT) ? 3 : 12), 124); + } break; case ORDER_WIDGET_GOTO: OrderClick_Goto(w, v, 0);