From 5b3a2ed2abb6bb6c29ab91c0a733ce9d970b8a3e Mon Sep 17 00:00:00 2001 From: rubidium Date: Fri, 2 Jan 2009 21:01:13 +0000 Subject: (svn r14786) -Fix: road/rail/water/airport toolbar opened over terraform toolbar when toolbar linking is turned on. --- src/terraform_gui.cpp | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/terraform_gui.cpp b/src/terraform_gui.cpp index 3aa8e38d3..74760f791 100644 --- a/src/terraform_gui.cpp +++ b/src/terraform_gui.cpp @@ -10,6 +10,7 @@ #include "company_base.h" #include "gui.h" #include "window_gui.h" +#include "window_func.h" #include "viewport_func.h" #include "gfx_func.h" #include "command_func.h" @@ -328,16 +329,24 @@ static const WindowDesc _terraform_desc = { void ShowTerraformToolbar(Window *link) { if (!IsValidCompanyID(_current_company)) return; + Window *w = AllocateWindowDescFront(&_terraform_desc, 0); - if (w != NULL && link != NULL) { - /* Align the terraform toolbar under the main toolbar and put the linked - * toolbar to left of it - */ + if (link == NULL) return; + + if (w == NULL) { + w = FindWindowById(WC_SCEN_LAND_GEN, 0); + } else { w->top = 22; w->SetDirty(); - link->left = w->left - link->width; - link->SetDirty(); } + if (w == NULL) return; + + /* Align the terraform toolbar under the main toolbar and put the linked + * toolbar to left of it + */ + link->top = w->top; + link->left = w->left - link->width; + link->SetDirty(); } static byte _terraform_size = 1; -- cgit v1.2.3-70-g09d2