From f616cfc78632fde437cfe15c7066bc8f31370d87 Mon Sep 17 00:00:00 2001 From: Aki Date: Thu, 29 Feb 2024 00:43:41 +0100 Subject: Extracted window states out of GameWinDX9 --- StarsEx/WndProc.cpp | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) (limited to 'StarsEx/WndProc.cpp') diff --git a/StarsEx/WndProc.cpp b/StarsEx/WndProc.cpp index ae91a9a..0c48236 100644 --- a/StarsEx/WndProc.cpp +++ b/StarsEx/WndProc.cpp @@ -17,6 +17,12 @@ #endif +static struct { + bool maximized = false; + bool minimized = false; +} window_state; + + LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM uParam, LPARAM lParam) { @@ -54,31 +60,27 @@ WndProc(HWND hwnd, UINT message, WPARAM uParam, LPARAM lParam) // Pick up possible changes to window style due to maximize, etc. if (game && game->hwnd != NULL ) { game->window_style = GetWindowLong(game->hwnd, GWL_STYLE ); - if (uParam == SIZE_MINIMIZED) { - game->Pause(true); // Pause while we're minimized - game->is_minimized = true; - game->is_maximized = false; + game->Pause(true); + window_state.minimized = true; + window_state.maximized = false; } - else if (uParam == SIZE_MAXIMIZED) { - if (game->is_minimized) - game->Pause(false); // Unpause since we're no longer minimized - - game->is_minimized = false; - game->is_maximized = true; + if (window_state.minimized) + game->Pause(false); + window_state.minimized = false; + window_state.maximized = true; game->ResizeVideo(); } else if (uParam == SIZE_RESTORED) { - if (game->is_maximized) { - game->is_maximized = false; + if (window_state.maximized) { + window_state.maximized = false; game->ResizeVideo(); } - - else if (game->is_minimized) { - game->Pause(false); // Unpause since we're no longer minimized - game->is_minimized = false; + else if (window_state.minimized) { + game->Pause(false); + window_state.minimized = false; game->ResizeVideo(); } else { -- cgit v1.1