Data Structures | Functions | Variables

depot_gui.cpp File Reference

The GUI for depots. More...

#include "stdafx.h"
#include "train.h"
#include "roadveh.h"
#include "ship.h"
#include "aircraft.h"
#include "gui.h"
#include "textbuf_gui.h"
#include "viewport_func.h"
#include "command_func.h"
#include "depot_base.h"
#include "spritecache.h"
#include "strings_func.h"
#include "vehicle_func.h"
#include "company_func.h"
#include "tilehighlight_func.h"
#include "window_gui.h"
#include "vehiclelist.h"
#include "order_backup.h"
#include "zoom_func.h"
#include "widgets/depot_widget.h"
#include "table/strings.h"

Go to the source code of this file.

Data Structures

struct  DepotWindow
struct  DepotWindow::GetDepotVehiclePtData

Functions

void DepotSortList (VehicleList *list)
void CcCloneVehicle (const CommandCost &result, TileIndex tile, uint32 p1, uint32 p2)
 This is the Callback method after the cloning attempt of a vehicle.
static void TrainDepotMoveVehicle (const Vehicle *wagon, VehicleID sel, const Vehicle *head)
VehicleCellSize GetVehicleImageCellSize (VehicleType type, EngineImageType image_type)
 Get the GUI cell size for a vehicle image.
static void InitBlocksizeForVehicles (VehicleType type, EngineImageType image_type)
void InitDepotWindowBlockSizes ()
 Set the size of the blocks in the window so we can be sure that they are big enough for the vehicle sprites in the current game.
static void DepotSellAllConfirmationCallback (Window *w, bool confirmed)
const SpriteGetAircraftSprite (EngineID engine)
void ShowDepotWindow (TileIndex tile, VehicleType type)
 Opens a depot window.
void DeleteDepotHighlightOfVehicle (const Vehicle *v)
 Removes the highlight of a vehicle in a depot window.

Variables

static const NWidgetPart _nested_train_depot_widgets []
 Nested widget definition for train depots.
static WindowDesc _train_depot_desc (WDP_AUTO,"depot_train", 362, 123, WC_VEHICLE_DEPOT, WC_NONE, 0, _nested_train_depot_widgets, lengthof(_nested_train_depot_widgets))
static WindowDesc _road_depot_desc (WDP_AUTO,"depot_roadveh", 316, 97, WC_VEHICLE_DEPOT, WC_NONE, 0, _nested_train_depot_widgets, lengthof(_nested_train_depot_widgets))
static WindowDesc _ship_depot_desc (WDP_AUTO,"depot_ship", 306, 99, WC_VEHICLE_DEPOT, WC_NONE, 0, _nested_train_depot_widgets, lengthof(_nested_train_depot_widgets))
static WindowDesc _aircraft_depot_desc (WDP_AUTO,"depot_aircraft", 332, 99, WC_VEHICLE_DEPOT, WC_NONE, 0, _nested_train_depot_widgets, lengthof(_nested_train_depot_widgets))
static VehicleCellSize _base_block_sizes_depot [VEH_COMPANY_END]
 Cell size for vehicle images in the depot view.
static VehicleCellSize _base_block_sizes_purchase [VEH_COMPANY_END]
 Cell size for vehicle images in the purchase list.

Detailed Description

The GUI for depots.

Definition in file depot_gui.cpp.


Function Documentation

void CcCloneVehicle ( const CommandCost result,
TileIndex  tile,
uint32  p1,
uint32  p2 
)

This is the Callback method after the cloning attempt of a vehicle.

Parameters:
result the result of the cloning command
tile unused
p1 unused
p2 unused

Definition at line 119 of file depot_gui.cpp.

References CommandCost::Failed(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_vehicle_pool >::Get(), and ShowVehicleViewWindow().

Referenced by VehicleViewWindow::OnClick(), and DepotWindow::OnVehicleSelect().

void DeleteDepotHighlightOfVehicle ( const Vehicle v  ) 

Removes the highlight of a vehicle in a depot window.

Parameters:
*v Vehicle to remove all highlights from

Definition at line 1027 of file depot_gui.cpp.

References _special_mouse_mode, FindWindowById(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index, Vehicle::tile, WC_VEHICLE_DEPOT, and WSM_DRAGDROP.

Referenced by Vehicle::PreDestructor().

VehicleCellSize GetVehicleImageCellSize ( VehicleType  type,
EngineImageType  image_type 
)

Get the GUI cell size for a vehicle image.

Parameters:
type Vehicle type to get the size for.
image_type Image type to get size for.
Precondition:
image_type == EIT_IN_DEPOT || image_type == EIT_PURCHASE
Returns:
Cell dimensions for the vehicle and image type.

Definition at line 156 of file depot_gui.cpp.

References EIT_IN_DEPOT, and EIT_PURCHASE.

Referenced by DrawEngineList(), GetEngineListHeight(), NewGRFInspectWindow::UpdateWidgetSize(), and DepotWindow::UpdateWidgetSize().

void InitDepotWindowBlockSizes (  ) 

Set the size of the blocks in the window so we can be sure that they are big enough for the vehicle sprites in the current game.

Note:
Calling this function once for each game is enough.

Definition at line 211 of file depot_gui.cpp.

References EIT_IN_DEPOT, and EIT_PURCHASE.

Referenced by AfterLoadGRFs().

void ShowDepotWindow ( TileIndex  tile,
VehicleType  type 
)

Opens a depot window.

Parameters:
tile The tile where the depot/hangar is located
type The type of vehicles in the depot

Definition at line 1007 of file depot_gui.cpp.

References BringWindowToFrontById(), VEH_AIRCRAFT, VEH_ROAD, VEH_SHIP, VEH_TRAIN, and WC_VEHICLE_DEPOT.


Variable Documentation

Nested widget definition for train depots.

Definition at line 43 of file depot_gui.cpp.