From 23ab1cb3d03dc8e74ececae99e1a79eb169d82ee Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Thu, 25 May 2023 20:02:29 +0100 Subject: [PATCH] Show ctrl-click function of shared orders button in tooltip --- src/lang/extra/english.txt | 1 + src/order_gui.cpp | 16 ++++++++++++++++ src/timetable_gui.cpp | 8 ++++++++ 3 files changed, 25 insertions(+) diff --git a/src/lang/extra/english.txt b/src/lang/extra/english.txt index f6a2566f05..6173091659 100644 --- a/src/lang/extra/english.txt +++ b/src/lang/extra/english.txt @@ -1584,6 +1584,7 @@ STR_ORDERS_OCCUPANCY_LIST_TOOLTIP :{BLACK}Order oc STR_ORDERS_OCCUPANCY_PERCENT :{NUM}% STR_ORDERS_NEW_GROUP_TOOLTIP :{BLACK}Create group from single vehicle +STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP_EXTRA :{STRING}{}{BLACK}Ctrl+Click to create group from single vehicle STR_ORDER_GO_TO_WAYPOINT_REVERSE :Go via and reverse at {WAYPOINT} STR_ORDER_GO_NON_STOP_TO_WAYPOINT_REVERSE :Go non-stop via and reverse at {WAYPOINT} diff --git a/src/order_gui.cpp b/src/order_gui.cpp index 915097da6f..67d7035e0b 100644 --- a/src/order_gui.cpp +++ b/src/order_gui.cpp @@ -3517,6 +3517,22 @@ public: } } + bool OnTooltip(Point pt, int widget, TooltipCloseCondition close_cond) override + { + switch (widget) { + case WID_O_SHARED_ORDER_LIST: { + if (this->vehicle->owner == _local_company) { + uint64 args[] = { STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP }; + GuiShowTooltips(this, STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP_EXTRA, lengthof(args), args, close_cond); + return true; + } + return false; + } + default: + return false; + } + } + const Vehicle *GetVehicle() { return this->vehicle; diff --git a/src/timetable_gui.cpp b/src/timetable_gui.cpp index 16f9cc03dd..ff5fd5ed5c 100644 --- a/src/timetable_gui.cpp +++ b/src/timetable_gui.cpp @@ -641,6 +641,14 @@ struct TimetableWindow : GeneralVehicleWindow { GuiShowTooltips(this, STR_TIMETABLE_CLEAR_SPEED_TOOLTIP, 0, nullptr, close_cond); return true; } + case WID_VT_SHARED_ORDER_LIST: { + if (this->vehicle->owner == _local_company) { + uint64 args[] = { STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP }; + GuiShowTooltips(this, STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP_EXTRA, lengthof(args), args, close_cond); + return true; + } + return false; + } default: return false; }