diff options
author | rubidium <rubidium@openttd.org> | 2008-04-10 22:17:06 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2008-04-10 22:17:06 +0000 |
commit | d781fc7cc9d34fec15106f94b9160900beb27068 (patch) | |
tree | e36366b8a3634f804a548935084a1a0a27049137 | |
parent | 5d6ef7bc6e9006bd1e626c823894724b0bd26060 (diff) | |
download | openttd-d781fc7cc9d34fec15106f94b9160900beb27068.tar.xz |
(svn r12655) -Change: show the current state in the drop down 'buttons'.
-rw-r--r-- | src/order_gui.cpp | 57 |
1 files changed, 31 insertions, 26 deletions
diff --git a/src/order_gui.cpp b/src/order_gui.cpp index 2631978fa..65be76fde 100644 --- a/src/order_gui.cpp +++ b/src/order_gui.cpp @@ -127,6 +127,32 @@ static const StringID _station_load_types[][5] = { } }; +static const StringID _order_non_stop_drowdown[] = { + STR_ORDER_GO_TO, + STR_ORDER_GO_NON_STOP_TO, + STR_ORDER_GO_VIA, + STR_ORDER_GO_NON_STOP_VIA, + INVALID_STRING_ID +}; + +static const StringID _order_full_load_drowdown[] = { + STR_ORDER_DROP_LOAD_IF_POSSIBLE, + STR_EMPTY, + STR_ORDER_DROP_FULL_LOAD_ALL, + STR_ORDER_DROP_FULL_LOAD_ANY, + STR_ORDER_DROP_NO_LOADING, + INVALID_STRING_ID +}; + +static const StringID _order_unload_drowdown[] = { + STR_ORDER_DROP_UNLOAD_IF_ACCEPTED, + STR_ORDER_DROP_UNLOAD, + STR_ORDER_DROP_TRANSFER, + STR_EMPTY, + STR_ORDER_DROP_NO_UNLOADING, + INVALID_STRING_ID +}; + static void DrawOrdersWindow(Window *w) { const Vehicle *v = GetVehicle(w->window_number); @@ -138,6 +164,11 @@ static void DrawOrdersWindow(Window *w) const Order *order = GetVehicleOrder(v, sel); if (v->owner == _local_player) { + /* Set the strings for the dropdown boxes. */ + w->widget[ORDER_WIDGET_NON_STOP].data = _order_non_stop_drowdown[order == NULL ? 0 : order->GetNonStopType()]; + w->widget[ORDER_WIDGET_FULL_LOAD].data = _order_full_load_drowdown[order == NULL ? 0 : order->GetLoadType()]; + w->widget[ORDER_WIDGET_UNLOAD].data = _order_unload_drowdown[order == NULL ? 0 : order->GetUnloadType()]; + /* skip */ w->SetWidgetDisabledState(ORDER_WIDGET_SKIP, v->num_orders <= 1); @@ -581,32 +612,6 @@ static const uint16 _order_keycodes[] = { 'K' //unload }; -static const StringID _order_non_stop_drowdown[] = { - STR_ORDER_GO_TO, - STR_ORDER_GO_NON_STOP_TO, - STR_ORDER_GO_VIA, - STR_ORDER_GO_NON_STOP_VIA, - INVALID_STRING_ID -}; - -static const StringID _order_full_load_drowdown[] = { - STR_ORDER_DROP_LOAD_IF_POSSIBLE, - STR_EMPTY, - STR_ORDER_DROP_FULL_LOAD_ALL, - STR_ORDER_DROP_FULL_LOAD_ANY, - STR_ORDER_DROP_NO_LOADING, - INVALID_STRING_ID -}; - -static const StringID _order_unload_drowdown[] = { - STR_ORDER_DROP_UNLOAD_IF_ACCEPTED, - STR_ORDER_DROP_UNLOAD, - STR_ORDER_DROP_TRANSFER, - STR_EMPTY, - STR_ORDER_DROP_NO_UNLOADING, - INVALID_STRING_ID -}; - static void OrdersWndProc(Window *w, WindowEvent *e) { const Vehicle *v = GetVehicle(w->window_number); |