|
OpenTTD Source
14.0-beta3
|
#include "stdafx.h"#include "debug.h"#include "company_func.h"#include "gui.h"#include "textbuf_gui.h"#include "command_func.h"#include "vehicle_gui_base.h"#include "viewport_func.h"#include "newgrf_text.h"#include "newgrf_debug.h"#include "roadveh.h"#include "train.h"#include "aircraft.h"#include "depot_map.h"#include "group_gui.h"#include "strings_func.h"#include "vehicle_func.h"#include "autoreplace_gui.h"#include "string_func.h"#include "widgets/dropdown_func.h"#include "timetable.h"#include "articulated_vehicles.h"#include "spritecache.h"#include "core/geometry_func.hpp"#include "core/container_func.hpp"#include "company_base.h"#include "engine_func.h"#include "station_base.h"#include "tilehighlight_func.h"#include "zoom_func.h"#include "depot_cmd.h"#include "vehicle_cmd.h"#include "order_cmd.h"#include "roadveh_cmd.h"#include "train_cmd.h"#include "hotkeys.h"#include "group_cmd.h"#include "safeguards.h"Go to the source code of this file.
Data Structures | |
| struct | RefitOption |
| Option to refit a vehicle chain. More... | |
| struct | RefitWindow |
| Refit cargo window. More... | |
| struct | VehicleListWindow |
| Window for the (old) vehicle listing. More... | |
| struct | VehicleDetailsWindow |
| Class for managing the vehicle details window. More... | |
| struct | VehicleViewWindow |
| Window manager class for viewing a vehicle. More... | |
Typedefs | |
| using | RefitOptions = std::map< CargoID, std::vector< RefitOption >, CargoIDComparator > |
| Available refit options (subtype and string) associated with each cargo type. | |
Enumerations | |
| enum | VehicleCommandTranslation { VCT_CMD_START_STOP = 0, VCT_CMD_CLONE_VEH, VCT_CMD_TURN_AROUND } |
| Command indices for the _vehicle_command_translation_table. | |
Functions | |
| template<BaseVehicleListWindow::VehicleIndividualSortFunction func> | |
| static bool | VehicleIndividualToGroupSorterWrapper (GUIVehicleGroup const &a, GUIVehicleGroup const &b) |
| Wrapper to convert a VehicleIndividualSortFunction to a VehicleGroupSortFunction. | |
| uint | CountDigitsForAllocatingSpace (uint number) |
| Get the number of digits of space required for the given number. More... | |
| uint | GetUnitNumberDigits (VehicleList &vehicles) |
| Get the number of digits the biggest unit number of a set of vehicles has. More... | |
| static bool | CargoFilterSingle (const Vehicle *v, const CargoID cid) |
| Check whether a single vehicle should pass the filter. More... | |
| static bool | CargoFilter (const GUIVehicleGroup *vehgroup, const CargoID cid) |
| Check whether a vehicle can carry a specific cargo. More... | |
| void | DepotSortList (VehicleList *list) |
| static void | DrawVehicleProfitButton (TimerGameCalendar::Date age, Money display_profit_last_year, uint num_vehicles, int x, int y) |
| draw the vehicle profit button in the vehicle list window. | |
| byte | GetBestFittingSubType (Vehicle *v_from, Vehicle *v_for, CargoID dest_cargo_type) |
| Get the best fitting subtype when 'cloning'/'replacing' v_from with v_for. More... | |
| static void | DrawVehicleRefitWindow (const RefitOptions &refits, const RefitOption *sel, uint pos, uint rows, uint delta, const Rect &r) |
| Draw the list of available refit options for a consist and highlight the selected refit option (if any). More... | |
| void | ShowVehicleRefitWindow (const Vehicle *v, VehicleOrderID order, Window *parent, bool auto_refit) |
| Show the refit window for a vehicle. More... | |
| uint | ShowRefitOptionsList (int left, int right, int y, EngineID engine) |
| Display list of cargo types of the engine, for the purchase information window. | |
| StringID | GetCargoSubtypeText (const Vehicle *v) |
| Get the cargo subtype text from NewGRF for the vehicle details window. | |
| static bool | VehicleGroupLengthSorter (const GUIVehicleGroup &a, const GUIVehicleGroup &b) |
| Sort vehicle groups by the number of vehicles in the group. | |
| static bool | VehicleGroupTotalProfitThisYearSorter (const GUIVehicleGroup &a, const GUIVehicleGroup &b) |
| Sort vehicle groups by the total profit this year. | |
| static bool | VehicleGroupTotalProfitLastYearSorter (const GUIVehicleGroup &a, const GUIVehicleGroup &b) |
| Sort vehicle groups by the total profit last year. | |
| static bool | VehicleGroupAverageProfitThisYearSorter (const GUIVehicleGroup &a, const GUIVehicleGroup &b) |
| Sort vehicle groups by the average profit this year. | |
| static bool | VehicleGroupAverageProfitLastYearSorter (const GUIVehicleGroup &a, const GUIVehicleGroup &b) |
| Sort vehicle groups by the average profit last year. | |
| static bool | VehicleNumberSorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by their number. | |
| static bool | VehicleNameSorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by their name. | |
| static bool | VehicleAgeSorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by their age. | |
| static bool | VehicleProfitThisYearSorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by this year profit. | |
| static bool | VehicleProfitLastYearSorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by last year profit. | |
| static bool | VehicleCargoSorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by their cargo. | |
| static bool | VehicleReliabilitySorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by their reliability. | |
| static bool | VehicleMaxSpeedSorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by their max speed. | |
| static bool | VehicleModelSorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by model. | |
| static bool | VehicleValueSorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by their value. | |
| static bool | VehicleLengthSorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by their length. | |
| static bool | VehicleTimeToLiveSorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by the time they can still live. | |
| static bool | VehicleTimetableDelaySorter (const Vehicle *const &a, const Vehicle *const &b) |
| Sort vehicles by the timetable delay. | |
| void | InitializeGUI () |
| static void | ChangeVehicleWindow (WindowClass window_class, VehicleID from_index, VehicleID to_index) |
| Assign a vehicle window a new vehicle. More... | |
| void | ChangeVehicleViewWindow (VehicleID from_index, VehicleID to_index) |
| Report a change in vehicle IDs (due to autoreplace) to affected vehicle windows. More... | |
| static void | DrawSmallOrderList (const Vehicle *v, int left, int right, int y, uint order_arrow_width, VehicleOrderID start) |
| static void | DrawSmallOrderList (const Order *order, int left, int right, int y, uint order_arrow_width) |
| Draw small order list in the vehicle GUI, but without the little black arrow. More... | |
| void | DrawVehicleImage (const Vehicle *v, const Rect &r, VehicleID selection, EngineImageType image_type, int skip) |
| Draws an image of a vehicle chain. More... | |
| uint | GetVehicleListHeight (VehicleType type, uint divisor) |
| Get the height of a vehicle in the vehicle list GUIs. More... | |
| static void | ShowVehicleListWindowLocal (CompanyID company, VehicleListType vlt, VehicleType vehicle_type, uint32_t unique_number) |
| void | ShowVehicleListWindow (CompanyID company, VehicleType vehicle_type) |
| void | ShowVehicleListWindow (const Vehicle *v) |
| void | ShowVehicleListWindow (CompanyID company, VehicleType vehicle_type, StationID station) |
| void | ShowVehicleListWindow (CompanyID company, VehicleType vehicle_type, TileIndex depot_tile) |
| int | GetTrainDetailsWndVScroll (VehicleID veh_id, TrainDetailsWindowTabs det_tab) |
| Determines the number of lines in the train details window. More... | |
| void | DrawTrainDetails (const Train *v, const Rect &r, int vscroll_pos, uint16_t vscroll_cap, TrainDetailsWindowTabs det_tab) |
| Draw the details for the given vehicle at the given position. More... | |
| void | DrawRoadVehDetails (const Vehicle *v, const Rect &r) |
| Draw the details for the given vehicle at the given position. More... | |
| void | DrawShipDetails (const Vehicle *v, const Rect &r) |
| Draw the details for the given vehicle at the given position. More... | |
| void | DrawAircraftDetails (const Aircraft *v, const Rect &r) |
| Draw the details for the given vehicle at the given position. More... | |
| static void | ShowVehicleDetailsWindow (const Vehicle *v) |
| Shows the vehicle details window of the given vehicle. | |
| void | CcStartStopVehicle (Commands, const CommandCost &result, VehicleID veh_id, bool) |
| This is the Callback method after attempting to start/stop a vehicle. More... | |
| void | StartStopVehicle (const Vehicle *v, bool texteffect) |
| Executes CMD_START_STOP_VEHICLE for given vehicle. More... | |
| static bool | IsVehicleRefitable (const Vehicle *v) |
| Checks whether the vehicle may be refitted at the moment. | |
| void | ShowVehicleViewWindow (const Vehicle *v) |
| Shows the vehicle view window of the given vehicle. | |
| bool | VehicleClicked (const Vehicle *v) |
| Dispatch a "vehicle selected" event if any window waits for it. More... | |
| bool | VehicleClicked (VehicleList::const_iterator begin, VehicleList::const_iterator end) |
| Dispatch a "vehicle group selected" event if any window waits for it. More... | |
| bool | VehicleClicked (const GUIVehicleGroup &vehgroup) |
| Dispatch a "vehicle group selected" event if any window waits for it. More... | |
| void | StopGlobalFollowVehicle (const Vehicle *v) |
| void | CcBuildPrimaryVehicle (Commands, const CommandCost &result, VehicleID new_veh_id, uint, uint16_t, CargoArray) |
| This is the Callback method after the construction attempt of a primary vehicle. More... | |
| int | GetSingleVehicleWidth (const Vehicle *v, EngineImageType image_type) |
| Get the width of a vehicle (part) in pixels. More... | |
| int | GetVehicleWidth (const Vehicle *v, EngineImageType image_type) |
| Get the width of a vehicle (including all parts of the consist) in pixels. More... | |
| void | SetMouseCursorVehicle (const Vehicle *v, EngineImageType image_type) |
| Set the mouse cursor to look like a vehicle. More... | |
Variables | |
| BaseVehicleListWindow::GroupBy | _grouping [VLT_END][VEH_COMPANY_END] |
| Sorting | _sorting [BaseVehicleListWindow::GB_END] |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleNumberSorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleNameSorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleAgeSorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleProfitThisYearSorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleProfitLastYearSorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleCargoSorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleReliabilitySorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleMaxSpeedSorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleModelSorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleValueSorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleLengthSorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleTimeToLiveSorter |
| static BaseVehicleListWindow::VehicleIndividualSortFunction | VehicleTimetableDelaySorter |
| static BaseVehicleListWindow::VehicleGroupSortFunction | VehicleGroupLengthSorter |
| static BaseVehicleListWindow::VehicleGroupSortFunction | VehicleGroupTotalProfitThisYearSorter |
| static BaseVehicleListWindow::VehicleGroupSortFunction | VehicleGroupTotalProfitLastYearSorter |
| static BaseVehicleListWindow::VehicleGroupSortFunction | VehicleGroupAverageProfitThisYearSorter |
| static BaseVehicleListWindow::VehicleGroupSortFunction | VehicleGroupAverageProfitLastYearSorter |
| static GUIVehicleGroupList::FilterFunction *const | _filter_funcs [] |
| static const Vehicle * | _last_vehicle [2] = { nullptr, nullptr } |
| static const uint | MAX_REFIT_CYCLE = 256 |
| Maximum number of refit cycles we try, to prevent infinite loops. More... | |
| static constexpr NWidgetPart | _nested_vehicle_refit_widgets [] |
| static WindowDesc | _vehicle_refit_desc (__FILE__, __LINE__, WDP_AUTO, "view_vehicle_refit", 240, 174, WC_VEHICLE_REFIT, WC_VEHICLE_VIEW, WDF_CONSTRUCTION, std::begin(_nested_vehicle_refit_widgets), std::end(_nested_vehicle_refit_widgets)) |
| static constexpr NWidgetPart | _nested_vehicle_list [] |
| static WindowDesc | _vehicle_list_other_desc (__FILE__, __LINE__, WDP_AUTO, "list_vehicles", 260, 246, WC_INVALID, WC_NONE, 0, std::begin(_nested_vehicle_list), std::end(_nested_vehicle_list)) |
| static WindowDesc | _vehicle_list_train_desc (__FILE__, __LINE__, WDP_AUTO, "list_vehicles_train", 325, 246, WC_TRAINS_LIST, WC_NONE, 0, std::begin(_nested_vehicle_list), std::end(_nested_vehicle_list)) |
| static constexpr NWidgetPart | _nested_nontrain_vehicle_details_widgets [] |
| Vehicle details widgets (other than train). More... | |
| static constexpr NWidgetPart | _nested_train_vehicle_details_widgets [] |
| Train details widgets. | |
| static StringID | _service_interval_dropdown_calendar [] |
| static StringID | _service_interval_dropdown_wallclock [] |
| static WindowDesc | _train_vehicle_details_desc (__FILE__, __LINE__, WDP_AUTO, "view_vehicle_details_train", 405, 178, WC_VEHICLE_DETAILS, WC_VEHICLE_VIEW, 0, std::begin(_nested_train_vehicle_details_widgets), std::end(_nested_train_vehicle_details_widgets)) |
| Vehicle details window descriptor. | |
| static WindowDesc | _nontrain_vehicle_details_desc (__FILE__, __LINE__, WDP_AUTO, "view_vehicle_details", 405, 113, WC_VEHICLE_DETAILS, WC_VEHICLE_VIEW, 0, std::begin(_nested_nontrain_vehicle_details_widgets), std::end(_nested_nontrain_vehicle_details_widgets)) |
| Vehicle details window descriptor for other vehicles than a train. | |
| static constexpr NWidgetPart | _nested_vehicle_view_widgets [] |
| Vehicle view widgets. | |
| static const ZoomLevel | _vehicle_view_zoom_levels [] |
| Zoom levels for vehicle views indexed by vehicle type. More... | |
| static const int | VV_INITIAL_VIEWPORT_WIDTH = 226 |
| static const int | VV_INITIAL_VIEWPORT_HEIGHT = 84 |
| static const int | VV_INITIAL_VIEWPORT_HEIGHT_TRAIN = 102 |
| static const StringID | _vehicle_msg_translation_table [][4] |
| Command codes for the shared buttons indexed by VehicleCommandTranslation and vehicle type. More... | |
| static WindowDesc | _vehicle_view_desc (__FILE__, __LINE__, WDP_AUTO, "view_vehicle", 250, 116, WC_VEHICLE_VIEW, WC_NONE, 0, std::begin(_nested_vehicle_view_widgets), std::end(_nested_vehicle_view_widgets), &VehicleViewWindow::hotkeys) |
| Vehicle view window descriptor for all vehicles but trains. | |
| static WindowDesc | _train_view_desc (__FILE__, __LINE__, WDP_AUTO, "view_vehicle_train", 250, 134, WC_VEHICLE_VIEW, WC_NONE, 0, std::begin(_nested_vehicle_view_widgets), std::end(_nested_vehicle_view_widgets), &VehicleViewWindow::hotkeys) |
| Vehicle view window descriptor for trains. More... | |
The base GUI for all vehicles.
Definition in file vehicle_gui.cpp.
|
static |
Check whether a vehicle can carry a specific cargo.
| vehgroup | The vehicle group which contains the vehicle to be checked |
| cid | The cargo what we are looking for |
Definition at line 324 of file vehicle_gui.cpp.
References CargoFilterSingle(), GUIVehicleGroup::vehicles_begin, and GUIVehicleGroup::vehicles_end.
Check whether a single vehicle should pass the filter.
| v | The vehicle to check. |
| cid | The cargo to filter for. |
Definition at line 284 of file vehicle_gui.cpp.
References CC_PASSENGERS, CargoFilterCriteria::CF_ANY, CargoFilterCriteria::CF_FREIGHT, CargoFilterCriteria::CF_NONE, IsCargoInClass(), and Vehicle::Next().
Referenced by CargoFilter().
| void CcBuildPrimaryVehicle | ( | Commands | , |
| const CommandCost & | result, | ||
| VehicleID | new_veh_id, | ||
| uint | , | ||
| uint16_t | , | ||
| CargoArray | |||
| ) |
This is the Callback method after the construction attempt of a primary vehicle.
| result | indicates completion (or not) of the operation |
| new_veh_id | ID of the new vehicle. |
Definition at line 3461 of file vehicle_gui.cpp.
| void CcStartStopVehicle | ( | Commands | , |
| const CommandCost & | result, | ||
| VehicleID | veh_id, | ||
| bool | |||
| ) |
This is the Callback method after attempting to start/stop a vehicle.
| result | the result of the start/stop command |
| veh_id | Vehicle ID. |
Definition at line 2893 of file vehicle_gui.cpp.
Report a change in vehicle IDs (due to autoreplace) to affected vehicle windows.
| from_index | the old vehicle ID |
| to_index | the new vehicle ID |
Definition at line 1527 of file vehicle_gui.cpp.
References ChangeVehicleWindow(), WC_VEHICLE_DETAILS, WC_VEHICLE_ORDERS, WC_VEHICLE_REFIT, WC_VEHICLE_TIMETABLE, and WC_VEHICLE_VIEW.
|
inlinestatic |
Assign a vehicle window a new vehicle.
| window_class | WindowClass to search for |
| from_index | the old vehicle ID |
| to_index | the new vehicle ID |
Definition at line 1504 of file vehicle_gui.cpp.
References FindWindowById(), ViewportData::follow_vehicle, Window::viewport, and Window::window_number.
Referenced by ChangeVehicleViewWindow().
| uint CountDigitsForAllocatingSpace | ( | uint | number | ) |
Get the number of digits of space required for the given number.
| number | The number. |
Definition at line 193 of file vehicle_gui.cpp.
Referenced by GetUnitNumberDigits().
Draw the details for the given vehicle at the given position.
| v | current vehicle |
| r | the Rect to draw within |
Definition at line 30 of file aircraft_gui.cpp.
Referenced by VehicleDetailsWindow::DrawVehicleDetails().
Draw the details for the given vehicle at the given position.
| v | current vehicle |
| r | the Rect to draw within |
Definition at line 29 of file roadveh_gui.cpp.
Referenced by VehicleDetailsWindow::DrawVehicleDetails().
Draw the details for the given vehicle at the given position.
| v | current vehicle |
| r | the Rect to draw within |
Definition at line 62 of file ship_gui.cpp.
Referenced by VehicleDetailsWindow::DrawVehicleDetails().
|
static |
Draw small order list in the vehicle GUI, but without the little black arrow.
This is used for shared order groups.
Definition at line 1628 of file vehicle_gui.cpp.
| void DrawTrainDetails | ( | const Train * | v, |
| const Rect & | r, | ||
| int | vscroll_pos, | ||
| uint16_t | vscroll_cap, | ||
| TrainDetailsWindowTabs | det_tab | ||
| ) |
Draw the details for the given vehicle at the given position.
| v | current vehicle |
| r | the Rect to draw within |
| vscroll_pos | Position of scrollbar |
| vscroll_cap | Number of lines currently displayed |
| det_tab | Selected details tab |
Definition at line 352 of file train_gui.cpp.
Referenced by VehicleDetailsWindow::DrawVehicleDetails().
| void DrawVehicleImage | ( | const Vehicle * | v, |
| const Rect & | r, | ||
| VehicleID | selection, | ||
| EngineImageType | image_type, | ||
| int | skip | ||
| ) |
Draws an image of a vehicle chain.
| v | Front vehicle |
| r | Rect to draw at |
| selection | Selected vehicle to draw a frame around |
| skip | Number of pixels to skip at the front (for scrolling) |
Definition at line 1653 of file vehicle_gui.cpp.
References DrawAircraftImage(), DrawRoadVehImage(), DrawShipImage(), DrawTrainImage(), SpecializedVehicle< Train, Type >::From(), BaseVehicle::type, VEH_AIRCRAFT, VEH_ROAD, VEH_SHIP, and VEH_TRAIN.
|
static |
Draw the list of available refit options for a consist and highlight the selected refit option (if any).
| refits | Available refit options for each (sorted) cargo. |
| sel | Selected refit option in the window |
| pos | Position of the selected item in caller widow |
| rows | Number of rows(capacity) in caller window |
| delta | Step height in caller window |
| r | Rectangle of the matrix widget. |
Definition at line 619 of file vehicle_gui.cpp.
References _current_text_dir, GetSpriteSize(), WidgetDimensions::scaled, Rect::Shrink(), and TD_RTL.
Get the best fitting subtype when 'cloning'/'replacing' v_from with v_for.
All articulated parts of both vehicles are tested to find a possibly shared subtype. For v_for only vehicle refittable to dest_cargo_type are considered.
| v_from | the vehicle to match the subtype from |
| v_for | the vehicle to get the subtype for |
| dest_cargo_type | Destination cargo type. |
Definition at line 518 of file vehicle_gui.cpp.
References EngineInfo::callback_mask, Engine::CanCarryCargo(), CBM_VEHICLE_CARGO_SUFFIX, GetCargoSubtypeText(), Vehicle::GetEngine(), Vehicle::GetFirstEnginePart(), Vehicle::GetNextArticulatedPart(), Vehicle::HasArticulatedPart(), HasBit(), include(), and MAX_REFIT_CYCLE.
Referenced by LinkRefresher::HandleRefit(), and RefitVehicle().
| int GetSingleVehicleWidth | ( | const Vehicle * | v, |
| EngineImageType | image_type | ||
| ) |
Get the width of a vehicle (part) in pixels.
| v | Vehicle to get the width for. |
Definition at line 3474 of file vehicle_gui.cpp.
References _current_text_dir, DIR_E, DIR_W, SpecializedVehicle< Train, Type >::From(), SpecializedVehicle< RoadVehicle, Type >::From(), VehicleSpriteSeq::GetBounds(), Train::GetDisplayImageWidth(), RoadVehicle::GetDisplayImageWidth(), Vehicle::GetImage(), TD_RTL, BaseVehicle::type, UnScaleGUI(), VEH_ROAD, VEH_TRAIN, and Rect::Width().
Referenced by GetVehicleWidth().
| int GetTrainDetailsWndVScroll | ( | VehicleID | veh_id, |
| TrainDetailsWindowTabs | det_tab | ||
| ) |
Determines the number of lines in the train details window.
| veh_id | Train |
| det_tab | Selected details tab |
Definition at line 318 of file train_gui.cpp.
References _cargo_summary, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_vehicle_pool >::Get(), SpecializedVehicle< Train, Type >::Get(), GetCargoSummaryOfArticulatedVehicle(), CargoArray::GetCount(), GetLengthOfArticulatedVehicle(), SpecializedVehicle< T, Type >::GetNextVehicle(), ScaleSpriteTrad(), TDW_TAB_TOTALS, and TRAIN_DETAILS_MAX_INDENT.
Referenced by VehicleDetailsWindow::OnPaint().
| uint GetUnitNumberDigits | ( | VehicleList & | vehicles | ) |
Get the number of digits the biggest unit number of a set of vehicles has.
| vehicles | The list of vehicles. |
Definition at line 212 of file vehicle_gui.cpp.
References CountDigitsForAllocatingSpace().
| uint GetVehicleListHeight | ( | VehicleType | type, |
| uint | divisor | ||
| ) |
Get the height of a vehicle in the vehicle list GUIs.
| type | the vehicle type to look at |
| divisor | the resulting height must be dividable by this |
Definition at line 1670 of file vehicle_gui.cpp.
References FS_SMALL, GetCharacterHeight(), GetVehicleHeight(), WidgetDimensions::matrix, WidgetDimensions::scaled, ScaleGUITrad(), VEH_SHIP, and RectPadding::Vertical().
| int GetVehicleWidth | ( | const Vehicle * | v, |
| EngineImageType | image_type | ||
| ) |
Get the width of a vehicle (including all parts of the consist) in pixels.
| v | Vehicle to get the width for. |
Definition at line 3498 of file vehicle_gui.cpp.
References GetSingleVehicleWidth(), SpecializedVehicle< T, Type >::Next(), BaseVehicle::type, VEH_ROAD, and VEH_TRAIN.
Referenced by RefitWindow::OnInvalidateData(), and RefitWindow::OnResize().
| void SetMouseCursorVehicle | ( | const Vehicle * | v, |
| EngineImageType | image_type | ||
| ) |
Set the mouse cursor to look like a vehicle.
| v | Vehicle |
| image_type | Type of vehicle image to use. |
Definition at line 3516 of file vehicle_gui.cpp.
References _current_text_dir, and TD_RTL.
| void ShowVehicleRefitWindow | ( | const Vehicle * | v, |
| VehicleOrderID | order, | ||
| Window * | parent, | ||
| bool | auto_refit | ||
| ) |
Show the refit window for a vehicle.
| *v | The vehicle to show the refit window for |
| order | of the vehicle to assign refit to, or INVALID_VEH_ORDER_ID to refit the vehicle now |
| parent | the parent window of the refit window |
| auto_refit | Choose cargo for auto-refitting |
Definition at line 1288 of file vehicle_gui.cpp.
References CloseWindowById(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index, and WC_VEHICLE_REFIT.
Referenced by OrdersWindow::OrderClick_Refit().
| void StartStopVehicle | ( | const Vehicle * | v, |
| bool | texteffect | ||
| ) |
Executes CMD_START_STOP_VEHICLE for given vehicle.
| v | Vehicle to start/stop |
| texteffect | Should a texteffect be shown? |
Definition at line 2910 of file vehicle_gui.cpp.
References _vehicle_msg_translation_table, and Vehicle::IsPrimaryVehicle().
| bool VehicleClicked | ( | const GUIVehicleGroup & | vehgroup | ) |
Dispatch a "vehicle group selected" event if any window waits for it.
| vehgroup | the GUIVehicleGroup representing the vehicle group |
Definition at line 3441 of file vehicle_gui.cpp.
References VehicleClicked(), GUIVehicleGroup::vehicles_begin, and GUIVehicleGroup::vehicles_end.
| bool VehicleClicked | ( | const Vehicle * | v | ) |
Dispatch a "vehicle selected" event if any window waits for it.
| v | selected vehicle; |
Definition at line 3408 of file vehicle_gui.cpp.
Referenced by VehicleClicked().
| bool VehicleClicked | ( | VehicleList::const_iterator | begin, |
| VehicleList::const_iterator | end | ||
| ) |
Dispatch a "vehicle group selected" event if any window waits for it.
| begin | iterator to the start of the range of vehicles |
| end | iterator to the end of the range of vehicles |
Definition at line 3425 of file vehicle_gui.cpp.
|
static |
Definition at line 336 of file vehicle_gui.cpp.
|
staticconstexpr |
Vehicle details widgets (other than train).
Definition at line 2276 of file vehicle_gui.cpp.
|
staticconstexpr |
Definition at line 1248 of file vehicle_gui.cpp.
|
static |
Definition at line 2341 of file vehicle_gui.cpp.
|
static |
Definition at line 2348 of file vehicle_gui.cpp.
|
static |
Vehicle view window descriptor for trains.
Only minimum_height and default_height are different for train view.
Referenced by ShowVehicleViewWindow().
|
static |
Command codes for the shared buttons indexed by VehicleCommandTranslation and vehicle type.
Definition at line 2867 of file vehicle_gui.cpp.
Referenced by StartStopVehicle().
|
static |
Zoom levels for vehicle views indexed by vehicle type.
Definition at line 2847 of file vehicle_gui.cpp.
|
static |
Maximum number of refit cycles we try, to prevent infinite loops.
And we store only a byte anyway
Definition at line 507 of file vehicle_gui.cpp.
Referenced by RefitWindow::BuildRefitList(), and GetBestFittingSubType().