diff --git a/src/order_gui.cpp b/src/order_gui.cpp index 7dd733126c..28334b00ae 100644 --- a/src/order_gui.cpp +++ b/src/order_gui.cpp @@ -1674,10 +1674,9 @@ public: this->CreateNestedTree(); this->vscroll = this->GetScrollbar(WID_O_SCROLLBAR); + this->GetWidget(WID_O_SEL_OCCUPANCY)->SetDisplayedPlane(_settings_client.gui.show_order_occupancy_by_default ? 0 : SZSP_NONE); + this->SetWidgetLoweredState(WID_O_OCCUPANCY_TOGGLE, _settings_client.gui.show_order_occupancy_by_default); if (v->owner == _local_company) { - this->GetWidget(WID_O_SEL_OCCUPANCY)->SetDisplayedPlane(_settings_client.gui.show_order_occupancy_by_default ? 0 : SZSP_NONE); - this->SetWidgetLoweredState(WID_O_OCCUPANCY_TOGGLE, _settings_client.gui.show_order_occupancy_by_default); - this->GetWidget(WID_O_SEL_COND_AUX)->SetDisplayedPlane(SZSP_NONE); this->GetWidget(WID_O_SEL_COND_AUX2)->SetDisplayedPlane(SZSP_NONE); } @@ -1860,7 +1859,10 @@ public: void UpdateButtonState() { - if (this->vehicle->owner != _local_company) return; // No buttons are displayed with competitor order windows. + if (this->vehicle->owner != _local_company) { + this->GetWidget(WID_O_SEL_OCCUPANCY)->SetDisplayedPlane(IsWidgetLowered(WID_O_OCCUPANCY_TOGGLE) ? 0 : SZSP_NONE); + return; // No buttons are displayed with competitor order windows. + } bool shared_orders = this->vehicle->IsOrderListShared(); VehicleOrderID sel = this->OrderGetSel(); @@ -3299,10 +3301,20 @@ static const NWidgetPart _nested_other_orders_widgets[] = { EndContainer(), NWidget(NWID_HORIZONTAL), NWidget(WWT_PANEL, COLOUR_GREY, WID_O_ORDER_LIST), SetMinimalSize(372, 72), SetDataTip(0x0, STR_ORDERS_LIST_TOOLTIP), SetResize(1, 1), SetScrollbar(WID_O_SCROLLBAR), EndContainer(), - NWidget(NWID_VERTICAL), - NWidget(NWID_VSCROLLBAR, COLOUR_GREY, WID_O_SCROLLBAR), - NWidget(WWT_RESIZEBOX, COLOUR_GREY), + NWidget(NWID_SELECTION, INVALID_COLOUR, WID_O_SEL_OCCUPANCY), + NWidget(WWT_PANEL, COLOUR_GREY, WID_O_OCCUPANCY_LIST), SetMinimalSize(50, 0), SetFill(0, 1), SetDataTip(STR_NULL, STR_ORDERS_OCCUPANCY_LIST_TOOLTIP), + SetScrollbar(WID_O_SCROLLBAR), EndContainer(), EndContainer(), + NWidget(NWID_VSCROLLBAR, COLOUR_GREY, WID_O_SCROLLBAR), + EndContainer(), + + /* First button row. */ + NWidget(NWID_HORIZONTAL), + NWidget(WWT_PANEL, COLOUR_GREY), SetFill(1, 0), SetResize(1, 0), + EndContainer(), + NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_O_OCCUPANCY_TOGGLE), SetMinimalSize(36, 12), SetDataTip(STR_ORDERS_OCCUPANCY_BUTTON, STR_ORDERS_OCCUPANCY_BUTTON_TOOLTIP), + NWidget(WWT_PUSHIMGBTN, COLOUR_GREY, WID_O_SHARED_ORDER_LIST), SetMinimalSize(12, 12), SetDataTip(SPR_SHARED_ORDERS_ICON, STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP), + NWidget(WWT_RESIZEBOX, COLOUR_GREY), EndContainer(), };