@@ -1123,27 +1123,29 @@ private:
if (rs_class == _roadstop_gui_settings.roadstop_class) break;
pos++;
}
this->vscrollList->SetCount(this->roadstop_classes.size());
this->vscrollList->ScrollTowards(pos);
void CheckOrientationValid()
{
const RoadStopSpec *spec = RoadStopClass::Get(_roadstop_gui_settings.roadstop_class)->GetSpec(_roadstop_gui_settings.roadstop_type);
/* Raise and lower to ensure the correct widget is lowered after changing displayed orientation plane. */
this->RaiseWidget(WID_BROS_STATION_NE + _roadstop_gui_settings.orientation);
this->GetWidget<NWidgetStacked>(WID_BROS_AVAILABLE_ORIENTATIONS)->SetDisplayedPlane((spec != nullptr && HasBit(spec->flags, RSF_DRIVE_THROUGH_ONLY)) ? 1 : 0);
this->LowerWidget(WID_BROS_STATION_NE + _roadstop_gui_settings.orientation);
if (RoadTypeIsRoad(_cur_roadtype)) {
if (_roadstop_gui_settings.orientation >= DIAGDIR_END) return;
if (spec != nullptr && HasBit(spec->flags, RSF_DRIVE_THROUGH_ONLY)) {
_roadstop_gui_settings.orientation = DIAGDIR_END;
this->SetDirty();
CloseWindowById(WC_SELECT_STATION, 0);
Status change: