|
@@ -172,25 +172,25 @@ struct BuildDocksToolbarWindow : Window
|
|
|
|
|
|
~BuildDocksToolbarWindow()
|
|
|
{
|
|
|
if (_settings_client.gui.link_terraform_toolbar) DeleteWindowById(WC_SCEN_LAND_GEN, 0, false);
|
|
|
}
|
|
|
|
|
|
virtual void OnPaint()
|
|
|
{
|
|
|
this->SetWidgetsDisabledState(!CanBuildVehicleInfrastructure(VEH_SHIP), DTW_DEPOT, DTW_STATION, DTW_BUOY, WIDGET_LIST_END);
|
|
|
this->DrawWidgets();
|
|
|
}
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget)
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
{
|
|
|
if (widget >= DTW_BUTTONS_BEGIN) _build_docks_button_proc[widget - DTW_BUTTONS_BEGIN](this);
|
|
|
}
|
|
|
|
|
|
virtual EventState OnKeyPress(uint16 key, uint16 keycode)
|
|
|
{
|
|
|
switch (keycode) {
|
|
|
case '1': BuildDocksClick_Canal(this); break;
|
|
|
case '2': BuildDocksClick_Lock(this); break;
|
|
|
case '3': BuildDocksClick_Demolish(this); break;
|
|
|
case '4': BuildDocksClick_Depot(this); break;
|
|
|
case '5': BuildDocksClick_Dock(this); break;
|
|
@@ -363,25 +363,25 @@ public:
|
|
|
int top = this->GetWidget<NWidgetBase>(BDSW_LT_OFF)->pos_y + this->GetWidget<NWidgetBase>(BDSW_LT_OFF)->current_y + WD_PAR_VSEP_NORMAL;
|
|
|
NWidgetBase *back_nwi = this->GetWidget<NWidgetBase>(BDSW_BACKGROUND);
|
|
|
int right = back_nwi->pos_x + back_nwi->current_x;
|
|
|
int bottom = back_nwi->pos_y + back_nwi->current_y;
|
|
|
top = DrawStationCoverageAreaText(back_nwi->pos_x + WD_FRAMERECT_LEFT, right - WD_FRAMERECT_RIGHT, top, SCT_ALL, rad, false) + WD_PAR_VSEP_NORMAL;
|
|
|
top = DrawStationCoverageAreaText(back_nwi->pos_x + WD_FRAMERECT_LEFT, right - WD_FRAMERECT_RIGHT, top, SCT_ALL, rad, true) + WD_PAR_VSEP_NORMAL;
|
|
|
/* Resize background if the text is not equally long as the window. */
|
|
|
if (top > bottom || (top < bottom && back_nwi->current_y > back_nwi->smallest_y)) {
|
|
|
ResizeWindow(this, 0, top - bottom);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget)
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
{
|
|
|
switch (widget) {
|
|
|
case BDSW_LT_OFF:
|
|
|
case BDSW_LT_ON:
|
|
|
this->RaiseWidget(_settings_client.gui.station_show_coverage + BDSW_LT_OFF);
|
|
|
_settings_client.gui.station_show_coverage = (widget != BDSW_LT_OFF);
|
|
|
this->LowerWidget(_settings_client.gui.station_show_coverage + BDSW_LT_OFF);
|
|
|
SndPlayFx(SND_15_BEEP);
|
|
|
this->SetDirty();
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
@@ -448,25 +448,25 @@ public:
|
|
|
}
|
|
|
|
|
|
virtual void OnPaint()
|
|
|
{
|
|
|
this->DrawWidgets();
|
|
|
|
|
|
DrawShipDepotSprite(this->GetWidget<NWidgetBase>(BDDW_X)->pos_x + 64, this->GetWidget<NWidgetBase>(BDDW_X)->pos_y + 18, 0);
|
|
|
DrawShipDepotSprite(this->GetWidget<NWidgetBase>(BDDW_X)->pos_x + 32, this->GetWidget<NWidgetBase>(BDDW_X)->pos_y + 34, 1);
|
|
|
DrawShipDepotSprite(this->GetWidget<NWidgetBase>(BDDW_Y)->pos_x + 32, this->GetWidget<NWidgetBase>(BDDW_Y)->pos_y + 18, 2);
|
|
|
DrawShipDepotSprite(this->GetWidget<NWidgetBase>(BDDW_Y)->pos_x + 64, this->GetWidget<NWidgetBase>(BDDW_Y)->pos_y + 34, 3);
|
|
|
}
|
|
|
|
|
|
virtual void OnClick(Point pt, int widget)
|
|
|
virtual void OnClick(Point pt, int widget, int click_count)
|
|
|
{
|
|
|
switch (widget) {
|
|
|
case BDDW_X:
|
|
|
case BDDW_Y:
|
|
|
this->RaiseWidget(_ship_depot_direction + BDDW_X);
|
|
|
_ship_depot_direction = (widget == BDDW_X ? AXIS_X : AXIS_Y);
|
|
|
this->LowerWidget(_ship_depot_direction + BDDW_X);
|
|
|
SndPlayFx(SND_15_BEEP);
|
|
|
UpdateDocksDirection();
|
|
|
this->SetDirty();
|
|
|
break;
|
|
|
}
|