From 6a6dbbaad2007f5a3b4b57c6b0ff44a899fb0ff8 Mon Sep 17 00:00:00 2001 From: Bernard Teo Date: Mon, 31 May 2021 15:59:17 +0800 Subject: Feature: Ctrl-Clicking GB_SHARED_ORDERS vehicle list opens order window --- src/group_gui.cpp | 21 ++++++++++++--------- src/vehicle_gui.cpp | 10 +++++++--- 2 files changed, 19 insertions(+), 12 deletions(-) (limited to 'src') diff --git a/src/group_gui.cpp b/src/group_gui.cpp index 89a89983d..bc6a9aaf2 100644 --- a/src/group_gui.cpp +++ b/src/group_gui.cpp @@ -24,6 +24,7 @@ #include "core/geometry_func.hpp" #include "company_base.h" #include "company_gui.h" +#include "gui.h" #include "widgets/group_widget.h" @@ -745,17 +746,19 @@ public: NOT_REACHED(); } if (v) { - this->vehicle_sel = v->index; - if (_ctrl_pressed) { - this->SelectGroup(v->group_id); + if (this->grouping == GB_NONE) { + this->SelectGroup(v->group_id); + } else { + ShowOrdersWindow(v); + } + } else { + this->vehicle_sel = v->index; + SetObjectToPlaceWnd(SPR_CURSOR_MOUSE, PAL_NONE, HT_DRAG, this); + SetMouseCursorVehicle(v, EIT_IN_LIST); + _cursor.vehchain = true; + this->SetDirty(); } - - SetObjectToPlaceWnd(SPR_CURSOR_MOUSE, PAL_NONE, HT_DRAG, this); - SetMouseCursorVehicle(v, EIT_IN_LIST); - _cursor.vehchain = true; - - this->SetDirty(); } break; diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index da6e446bf..c3ae09490 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -1843,10 +1843,14 @@ public: const Vehicle *v = vehgroup.vehicles_begin[0]; /* We do not support VehicleClicked() here since the contextual action may only make sense for individual vehicles */ - if (vehgroup.NumVehicles() == 1) { - ShowVehicleViewWindow(v); + if (_ctrl_pressed) { + ShowOrdersWindow(v); } else { - ShowVehicleListWindow(v); + if (vehgroup.NumVehicles() == 1) { + ShowVehicleViewWindow(v); + } else { + ShowVehicleListWindow(v); + } } break; } -- cgit v1.2.3-54-g00ecf