(svn r3098) static, const, uint -> TileIndex, indentation, bracing, unused return values, ... mostly related to the clone vehicle GUI
This commit is contained in:
58
ship_gui.c
58
ship_gui.c
@@ -138,7 +138,7 @@ static const WindowDesc _ship_refit_desc = {
|
||||
ShipRefitWndProc,
|
||||
};
|
||||
|
||||
static void ShowShipRefitWindow(Vehicle *v)
|
||||
static void ShowShipRefitWindow(const Vehicle* v)
|
||||
{
|
||||
Window *w;
|
||||
|
||||
@@ -287,7 +287,7 @@ static const WindowDesc _ship_details_desc = {
|
||||
ShipDetailsWndProc
|
||||
};
|
||||
|
||||
static void ShowShipDetailsWindow(Vehicle *v)
|
||||
static void ShowShipDetailsWindow(const Vehicle* v)
|
||||
{
|
||||
Window *w;
|
||||
VehicleID veh = v->index;
|
||||
@@ -314,11 +314,11 @@ void CcBuildShip(bool success, TileIndex tile, uint32 p1, uint32 p2)
|
||||
|
||||
void CcCloneShip(bool success, uint tile, uint32 p1, uint32 p2)
|
||||
{
|
||||
Vehicle *v;
|
||||
if (!success) return;
|
||||
if (success) {
|
||||
const Vehicle* v = GetVehicle(_new_aircraft_id);
|
||||
|
||||
v = GetVehicle(_new_ship_id);
|
||||
ShowShipViewWindow(v);
|
||||
ShowShipViewWindow(v);
|
||||
}
|
||||
}
|
||||
|
||||
static void NewShipWndProc(Window *w, WindowEvent *e)
|
||||
@@ -528,9 +528,9 @@ static void ShipViewWndProc(Window *w, WindowEvent *e) {
|
||||
} break;
|
||||
|
||||
case WE_CLICK: {
|
||||
Vehicle *v = GetVehicle(w->window_number);
|
||||
const Vehicle* v = GetVehicle(w->window_number);
|
||||
|
||||
switch(e->click.widget) {
|
||||
switch (e->click.widget) {
|
||||
case 5: /* start stop */
|
||||
DoCommandP(v->tile, v->index, 0, NULL, CMD_START_STOP_SHIP | CMD_MSG(STR_9818_CAN_T_STOP_START_SHIP));
|
||||
break;
|
||||
@@ -551,8 +551,6 @@ static void ShipViewWndProc(Window *w, WindowEvent *e) {
|
||||
break;
|
||||
case 11: {
|
||||
/* clone vehicle */
|
||||
Vehicle *v;
|
||||
v = GetVehicle(w->window_number);
|
||||
DoCommandP(v->tile, v->index, _ctrl_pressed ? 1 : 0, CcCloneShip, CMD_CLONE_VEHICLE | CMD_MSG(STR_980D_CAN_T_BUILD_SHIP));
|
||||
} break;
|
||||
}
|
||||
@@ -611,12 +609,11 @@ static const WindowDesc _ship_view_desc = {
|
||||
ShipViewWndProc
|
||||
};
|
||||
|
||||
void ShowShipViewWindow(Vehicle *v)
|
||||
void ShowShipViewWindow(const Vehicle* v)
|
||||
{
|
||||
Window *w;
|
||||
Window* w = AllocateWindowDescFront(&_ship_view_desc, v->index);
|
||||
|
||||
w = AllocateWindowDescFront(&_ship_view_desc, v->index);
|
||||
if (w) {
|
||||
if (w != NULL) {
|
||||
w->caption_color = v->owner;
|
||||
AssignWindowViewport(w, 3, 17, 0xE2, 0x54, w->window_number | (1 << 31), 0);
|
||||
}
|
||||
@@ -745,34 +742,22 @@ static void ShipDepotClick(Window *w, int x, int y)
|
||||
* @param *v is the original vehicle to clone
|
||||
* @param *w is the window of the depot where the clone is build
|
||||
*/
|
||||
static bool HandleCloneVehClick(Vehicle *v, Window *w)
|
||||
static void HandleCloneVehClick(const Vehicle* v, const Window* w)
|
||||
{
|
||||
if (v == NULL || v->type != VEH_Ship) return;
|
||||
|
||||
if (!v){
|
||||
return false;
|
||||
}
|
||||
|
||||
if (v->type != VEH_Ship) {
|
||||
// it's not a ship, do nothing
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
DoCommandP(w->window_number, v->index, _ctrl_pressed ? 1 : 0,CcCloneShip,CMD_CLONE_VEHICLE | CMD_MSG(STR_980D_CAN_T_BUILD_SHIP));
|
||||
DoCommandP(w->window_number, v->index, _ctrl_pressed ? 1 : 0, CcCloneShip,
|
||||
CMD_CLONE_VEHICLE | CMD_MSG(STR_980D_CAN_T_BUILD_SHIP)
|
||||
);
|
||||
|
||||
ResetObjectToPlace();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
static void ClonePlaceObj(uint tile, Window *w)
|
||||
static void ClonePlaceObj(TileIndex tile, const Window* w)
|
||||
{
|
||||
Vehicle *v;
|
||||
Vehicle* v = CheckMouseOverVehicle();
|
||||
|
||||
|
||||
v = CheckMouseOverVehicle();
|
||||
if (v && HandleCloneVehClick(v, w))
|
||||
return;
|
||||
if (v != NULL) HandleCloneVehClick(v, w);
|
||||
}
|
||||
|
||||
static void ShipDepotWndProc(Window *w, WindowEvent *e) {
|
||||
@@ -812,7 +797,6 @@ static void ShipDepotWndProc(Window *w, WindowEvent *e) {
|
||||
break;
|
||||
|
||||
case WE_PLACE_OBJ: {
|
||||
//ClonePlaceObj(e->place.tile, w);
|
||||
ClonePlaceObj(w->window_number, w);
|
||||
} break;
|
||||
|
||||
@@ -823,9 +807,9 @@ static void ShipDepotWndProc(Window *w, WindowEvent *e) {
|
||||
|
||||
// check if a vehicle in a depot was clicked..
|
||||
case WE_MOUSELOOP: {
|
||||
Vehicle *v = _place_clicked_vehicle;
|
||||
const Vehicle* v = _place_clicked_vehicle;
|
||||
|
||||
// since OTTD checks all open depot windows, we will make sure that it triggers the one with a clicked clone button
|
||||
// since OTTD checks all open depot windows, we will make sure that it triggers the one with a clicked clone button
|
||||
if (v != NULL && HASBIT(w->click_state, 8)) {
|
||||
_place_clicked_vehicle = NULL;
|
||||
HandleCloneVehClick(v, w);
|
||||
|
Reference in New Issue
Block a user