From 581114b1e52ba24df92d5289ff50ac2ad249fc67 Mon Sep 17 00:00:00 2001 From: Duncan Date: Wed, 20 Aug 2014 12:36:29 +0100 Subject: [PATCH] Added window_peep_close Not tested. Cancels any tool that was in use by the window. --- src/window_peep.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/window_peep.c b/src/window_peep.c index 13376b714c..b20acc3f9b 100644 --- a/src/window_peep.c +++ b/src/window_peep.c @@ -77,8 +77,10 @@ rct_widget *window_peep_page_widgets[] = { window_peep_overview_widgets }; +void window_peep_close(); + static void* window_peep_overview_events[] = { - (void*)0x696A75, + window_peep_close, (void*)0x696A06, (void*)0x696FBE, window_peep_emptysub, @@ -174,3 +176,16 @@ void window_peep_open(rct_peep* peep){ window_init_scroll_widgets(window); RCT2_CALLPROC_X(0x0069883C, 0, 0, 0, 0, (int)window, 0, 0); } + +/* rct2: 0x00696A75 */ +void window_peep_close(){ + rct_window* w; + + window_get_register(w); + + if (RCT2_GLOBAL(0x9DE518,uint32) & (1<<3)){ + if (w->classification == RCT2_GLOBAL(RCT2_ADDRESS_TOOL_WINDOWCLASS,rct_windowclass) && + w->number == RCT2_GLOBAL(RCT2_ADDRESS_TOOL_WINDOWNUMBER,rct_windownumber)) + tool_cancel(); + } +}