From 8872ed12ff6631a36a306f63227b30b9bb50cac3 Mon Sep 17 00:00:00 2001 From: frosch Date: Sun, 9 Dec 2012 16:54:02 +0000 Subject: (svn r24808) -Feature(ette) [FS#4458]: When share-cloning vehicles don't open the vehicle window of the new vehicle. The only reasonable thing to do with the new vehicle is to start it, which can also be done via the depot GUI. --- src/depot_gui.cpp | 3 ++- src/vehicle_gui.cpp | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/depot_gui.cpp b/src/depot_gui.cpp index 25d36b690..106d9c95f 100644 --- a/src/depot_gui.cpp +++ b/src/depot_gui.cpp @@ -821,7 +821,8 @@ struct DepotWindow : Window { */ virtual bool OnVehicleSelect(const Vehicle *v) { - if (DoCommandP(this->window_number, v->index, _ctrl_pressed ? 1 : 0, CMD_CLONE_VEHICLE | CMD_MSG(STR_ERROR_CAN_T_BUY_TRAIN + v->type), CcCloneVehicle)) { + /* Suppress the vehicle GUI when share-cloning. There is no point to it, starting vehicles can also be done via the depot GUI. */ + if (DoCommandP(this->window_number, v->index, _ctrl_pressed ? 1 : 0, CMD_CLONE_VEHICLE | CMD_MSG(STR_ERROR_CAN_T_BUY_TRAIN + v->type), _ctrl_pressed ? NULL : CcCloneVehicle)) { ResetObjectToPlace(); } return true; diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index f64a3cc47..19cc7d217 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -2525,9 +2525,13 @@ public: ShowVehicleDetailsWindow(v); break; case WID_VV_CLONE: // clone vehicle + /* Suppress the vehicle GUI when share-cloning. + * There is no point to it except for starting the vehicle. + * For starting the vehicle the player has to open the depot GUI, which is + * most likely already open, but is also visible in the vehicle viewport. */ DoCommandP(v->tile, v->index, _ctrl_pressed ? 1 : 0, _vehicle_command_translation_table[VCT_CMD_CLONE_VEH][v->type], - CcCloneVehicle); + _ctrl_pressed ? NULL : CcCloneVehicle); break; case WID_VV_TURN_AROUND: // turn around assert(v->IsGroundVehicle()); -- cgit v1.2.3-70-g09d2