vehicle_gui.h File Reference

Functions related to the vehicle's GUIs. More...

#include "window_type.h"
#include "vehicle_type.h"
#include "order_type.h"
#include "station_type.h"
#include "engine_type.h"
#include "company_type.h"

Go to the source code of this file.

Enumerations

enum  VehicleViewWindowWidgets {
  VVW_WIDGET_CAPTION, VVW_WIDGET_VIEWPORT, VVW_WIDGET_START_STOP_VEH, VVW_WIDGET_CENTER_MAIN_VIEH,
  VVW_WIDGET_GOTO_DEPOT, VVW_WIDGET_REFIT_VEH, VVW_WIDGET_SHOW_ORDERS, VVW_WIDGET_SHOW_DETAILS,
  VVW_WIDGET_CLONE_VEH, VVW_WIDGET_SELECT_DEPOT_CLONE, VVW_WIDGET_SELECT_REFIT_TURN, VVW_WIDGET_TURN_AROUND,
  VVW_WIDGET_FORCE_PROCEED
}
 

Constants of vehicle view widget indices.

More...
enum  TrainDetailsWindowTabs { TDW_TAB_CARGO = 0, TDW_TAB_INFO, TDW_TAB_CAPACITY, TDW_TAB_TOTALS }
 

The tabs in the train details window.

More...

Functions

void ShowVehicleRefitWindow (const Vehicle *v, VehicleOrderID order, Window *parent)
 Show the refit window for a vehicle.
int DrawVehiclePurchaseInfo (int left, int right, int y, EngineID engine_number)
 Draw the purchase info details of a vehicle at a given location.
void DrawTrainImage (const Train *v, int left, int right, int y, VehicleID selection, int skip, VehicleID drag_dest=INVALID_VEHICLE)
 Draws an image of a whole train.
void DrawRoadVehImage (const Vehicle *v, int left, int right, int y, VehicleID selection, int skip=0)
 Draws an image of a road vehicle chain.
void DrawShipImage (const Vehicle *v, int left, int right, int y, VehicleID selection)
 Draws an image of a ship.
void DrawAircraftImage (const Vehicle *v, int left, int right, int y, VehicleID selection)
 Draws an image of an aircraft.
void ShowBuildVehicleWindow (TileIndex tile, VehicleType type)
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.
void ShowVehicleListWindow (const Vehicle *v)
void ShowVehicleListWindow (CompanyID company, VehicleType vehicle_type)
void ShowVehicleListWindow (CompanyID company, VehicleType vehicle_type, StationID station)
void ShowVehicleListWindow (CompanyID company, VehicleType vehicle_type, TileIndex depot_tile)
static uint GetVehicleHeight (VehicleType type)
 Get the height of a single vehicle in the GUIs.
int GetVehicleWidth (Vehicle *v)
 Get the width of a vehicle (including all parts of the consist) in pixels.
static WindowClass GetWindowClassForVehicleType (VehicleType vt)
 Get WindowClass for vehicle list of given vehicle type.
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.
void StartStopVehicle (const Vehicle *v, bool texteffect)
 Executes CMD_START_STOP_VEHICLE for given vehicle.
VehicleCheckClickOnVehicle (const struct ViewPort *vp, int x, int y)
void DrawVehicleImage (const Vehicle *v, int left, int right, int y, VehicleID selection, int skip)
 Draws an image of a vehicle chain.

Detailed Description

Functions related to the vehicle's GUIs.

Definition in file vehicle_gui.h.


Enumeration Type Documentation

The tabs in the train details window.

Enumerator:
TDW_TAB_CARGO 

Tab with cargo carried by the vehicles.

TDW_TAB_INFO 

Tab with name and value of the vehicles.

TDW_TAB_CAPACITY 

Tab with cargo capacity of the vehicles.

TDW_TAB_TOTALS 

Tab with sum of total cargo transported.

Definition at line 42 of file vehicle_gui.h.

Constants of vehicle view widget indices.

Enumerator:
VVW_WIDGET_VIEWPORT 

Viewport widget.

VVW_WIDGET_SELECT_DEPOT_CLONE 

Selection widget between 'goto depot', and 'clone vehicle' buttons.

VVW_WIDGET_SELECT_REFIT_TURN 

Selection widget between 'refit' and 'turn around' buttons.

Definition at line 25 of file vehicle_gui.h.


Function Documentation

void DrawAircraftImage ( const Vehicle v,
int  left,
int  right,
int  y,
VehicleID  selection 
)

Draws an image of an aircraft.

Parameters:
v Front vehicle
left The minimum horizontal position
right The maximum horizontal position
y Vertical position to draw at
selection Selected vehicle to draw a frame around

Definition at line 79 of file aircraft_gui.cpp.

References _current_text_dir, AIR_HELICOPTER, DIR_E, DIR_W, DrawFrameRect(), DrawSprite(), FR_BORDERONLY, SpecializedVehicle< Aircraft, VEH_AIRCRAFT >::From(), Vehicle::GetImage(), GetVehiclePalette(), Sprite::height, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem< Tpool >::index, ST_NORMAL, Vehicle::subtype, TD_RTL, Vehicle::vehstatus, VS_CRASHED, Sprite::width, Sprite::x_offs, and Sprite::y_offs.

Referenced by DrawVehicleImage(), and DepotWindow::DrawVehicleInDepot().

void DrawRoadVehImage ( const Vehicle v,
int  left,
int  right,
int  y,
VehicleID  selection,
int  skip 
)

Draws an image of a road vehicle chain.

Parameters:
v Front vehicle
left The minimum horizontal position
right The maximum horizontal position
y Vertical position 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 133 of file roadveh_gui.cpp.

References _current_text_dir, DIR_E, DIR_W, DrawFrameRect(), DrawSprite(), FillDrawPixelInfo(), FR_BORDERONLY, SpecializedVehicle< RoadVehicle, Type >::From(), GetVehiclePalette(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem< Tpool >::index, SpecializedVehicle< T, Type >::Next(), TD_RTL, and VS_CRASHED.

Referenced by DrawVehicleImage(), and DepotWindow::DrawVehicleInDepot().

void DrawShipImage ( const Vehicle v,
int  left,
int  right,
int  y,
VehicleID  selection 
)

Draws an image of a ship.

Parameters:
v Front vehicle
left The minimum horizontal position
right The maximum horizontal position
y Vertical position to draw at
selection Selected vehicle to draw a frame around

Definition at line 31 of file ship_gui.cpp.

References _current_text_dir, DIR_E, DIR_W, DrawFrameRect(), DrawSprite(), FR_BORDERONLY, Vehicle::GetImage(), GetVehiclePalette(), Sprite::height, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem< Tpool >::index, ST_NORMAL, TD_RTL, Sprite::width, Sprite::x_offs, and Sprite::y_offs.

Referenced by DrawVehicleImage(), and DepotWindow::DrawVehicleInDepot().

void DrawTrainImage ( const Train v,
int  left,
int  right,
int  y,
VehicleID  selection,
int  skip,
VehicleID  drag_dest 
)

Draws an image of a whole train.

Parameters:
v Front vehicle
left The minimum horizontal position
right The maximum horizontal position
y Vertical position to draw at
selection Selected vehicle to draw a frame around
skip Number of pixels to skip at the front (for scrolling)
drag_dest The vehicle another one is dragged over, INVALID_VEHICLE if none.

Definition at line 86 of file train_gui.cpp.

References _current_text_dir, DIR_E, DIR_W, DrawFrameRect(), DrawSprite(), FillDrawPixelInfo(), FR_BORDERONLY, SpecializedVehicle< Train, Type >::From(), Train::GetDisplayImageWidth(), GetVehiclePalette(), HighlightDragPosition(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem< Tpool >::index, INVALID_VEHICLE, SpecializedVehicle< T, Type >::Next(), TD_RTL, CursorVars::vehchain, and VS_CRASHED.

Referenced by DrawVehicleImage(), and DepotWindow::DrawVehicleInDepot().

void DrawVehicleImage ( const Vehicle v,
int  left,
int  right,
int  y,
VehicleID  selection,
int  skip 
)

Draws an image of a vehicle chain.

Parameters:
v Front vehicle
left The minimum horizontal position
right The maximum horizontal position
y Vertical position 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 1213 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.

Referenced by BaseVehicleListWindow::DrawVehicleListItems(), VehicleDetailsWindow::DrawWidget(), and RefitWindow::DrawWidget().

int DrawVehiclePurchaseInfo ( int  left,
int  right,
int  y,
EngineID  engine_number 
)

Draw the purchase info details of a vehicle at a given location.

Parameters:
left,right,y location where to draw the info
engine_number the engine of which to draw the info of
Returns:
y after drawing all the text

Definition at line 754 of file build_vehicle_gui.cpp.

References ConvertDateToYMD(), CT_INVALID, DAYS_IN_LEAP_YEAR, DrawString(), FONT_HEIGHT_NORMAL, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem<&_engine_pool >::Get(), Engine::GetLifeLengthInDays(), IsArticulatedVehicleRefittable(), RAILVEH_WAGON, SetDParam(), ShowAdditionalText(), ShowRefitOptionsList(), ToPercent16(), Engine::type, VEH_AIRCRAFT, VEH_ROAD, VEH_SHIP, VEH_TRAIN, and YearMonthDay::year.

Referenced by BuildVehicleWindow::OnPaint(), and ReplaceVehicleWindow::OnPaint().

StringID GetCargoSubtypeText ( const Vehicle v  ) 
static uint GetVehicleHeight ( VehicleType  type  )  [inline, static]

Get the height of a single vehicle in the GUIs.

Parameters:
type the vehicle type to look at
Returns:
the height

Definition at line 71 of file vehicle_gui.h.

References VEH_ROAD, and VEH_TRAIN.

Referenced by DepotWindow::DrawVehicleInDepot(), GetEngineListHeight(), GetVehicleListHeight(), InitDepotWindowBlockSizes(), and RefitWindow::UpdateWidgetSize().

int GetVehicleWidth ( Vehicle v  ) 

Get the width of a vehicle (including all parts of the consist) in pixels.

Parameters:
v Vehicle to get the width for.
Returns:
Width of the vehicle.

Definition at line 2622 of file vehicle_gui.cpp.

References _current_text_dir, DIR_E, DIR_W, SpecializedVehicle< RoadVehicle, Type >::From(), SpecializedVehicle< Train, Type >::From(), Train::GetDisplayImageWidth(), Vehicle::GetImage(), SpecializedVehicle< T, Type >::Next(), ST_NORMAL, TD_RTL, BaseVehicle::type, VEH_ROAD, VEH_TRAIN, and Sprite::width.

Referenced by RefitWindow::OnInvalidateData(), and RefitWindow::OnResize().

static WindowClass GetWindowClassForVehicleType ( VehicleType  vt  )  [inline, static]
void ShowVehicleRefitWindow ( const Vehicle v,
VehicleOrderID  order,
Window parent 
)

Show the refit window for a vehicle.

Parameters:
*v The vehicle to show the refit window for
order of the vehicle ( ? )
parent the parent window of the refit window

Definition at line 895 of file vehicle_gui.cpp.

References DeleteWindowById(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem< Tpool >::index, and Window::parent.

Referenced by VehicleViewWindow::OnClick(), and OrdersWindow::OrderClick_Refit().

void ShowVehicleViewWindow ( const Vehicle v  ) 
void StartStopVehicle ( const Vehicle v,
bool  texteffect 
)

Executes CMD_START_STOP_VEHICLE for given vehicle.

Parameters:
v Vehicle to start/stop
texteffect Should a texteffect be shown?

Definition at line 2222 of file vehicle_gui.cpp.

References CcStartStopVehicle(), DoCommandP(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem< Tpool >::index, Vehicle::IsPrimaryVehicle(), Vehicle::tile, and BaseVehicle::type.

bool VehicleClicked ( const Vehicle v  ) 

Dispatch a "vehicle selected" event if any window waits for it.

Parameters:
v selected vehicle;
Returns:
did any window accept vehicle selection?

Definition at line 2580 of file vehicle_gui.cpp.

References Vehicle::First(), TileHighlightData::GetCallbackWnd(), HT_VEHICLE, Vehicle::IsPrimaryVehicle(), Window::OnVehicleSelect(), and TileHighlightData::place_mode.

Referenced by DepotWindow::DepotClick(), VehicleListWindow::OnClick(), VehicleGroupWindow::OnClick(), and VehicleGroupWindow::OnDragDrop().


Generated on Sun Jan 9 16:02:30 2011 for OpenTTD by  doxygen 1.6.1