diff --git a/rail_gui.c b/rail_gui.c --- a/rail_gui.c +++ b/rail_gui.c @@ -493,6 +493,8 @@ static void BuildRailToolbWndProc(Window case WE_ABORT_PLACE_OBJ: RaiseWindowButtons(w); + DisableWindowWidget(w, 16); + InvalidateWidget(w, 16); w = FindWindowById(WC_BUILD_STATION, 0); if (w != NULL) WP(w,def_d).close = true; diff --git a/road_gui.c b/road_gui.c --- a/road_gui.c +++ b/road_gui.c @@ -183,12 +183,11 @@ static OnButtonClick* const _build_road_ static void BuildRoadToolbWndProc(Window *w, WindowEvent *e) { switch (e->event) { + case WE_CREATE: DisableWindowWidget(w, 11); break; + case WE_PAINT: if (IsWindowWidgetLowered(w, 3) || IsWindowWidgetLowered(w, 4)) { EnableWindowWidget(w, 11); - } else { - DisableWindowWidget(w, 11); - RaiseWindowWidget(w, 11); } DrawWindowWidgets(w); break; @@ -222,6 +221,8 @@ static void BuildRoadToolbWndProc(Window case WE_ABORT_PLACE_OBJ: RaiseWindowButtons(w); + DisableWindowWidget(w, 11); + InvalidateWidget(w, 11); w = FindWindowById(WC_BUS_STATION, 0); if (w != NULL) WP(w,def_d).close = true;