Fixing a bug I introduced into the "...ATEXIT" hack
[freeglut] / src / mswin / freeglut_window_mswin.c
index 5a33ec5..d4c5fd7 100644 (file)
@@ -25,6 +25,7 @@
  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
  */\r
 \r
+#define FREEGLUT_BUILDING_LIB\r
 #include <GL/freeglut.h>\r
 #include "../Common/freeglut_internal.h"\r
 \r
@@ -978,10 +979,10 @@ void fgPlatformGlutFullScreen( SFG_Window *win )
 \r
         \r
         /* store current window rect */\r
-        GetWindowRect( win->Window.Handle, &win->State.OldRect );\r
+        GetWindowRect( win->Window.Handle, &win->State.pWState.OldRect );\r
 \r
         /* store current window style */\r
-        win->State.OldStyle = s = GetWindowLong(win->Window.Handle, GWL_STYLE);\r
+        win->State.pWState.OldStyle = s = GetWindowLong(win->Window.Handle, GWL_STYLE);\r
 \r
         /* remove decorations from style and add popup style*/\r
         s &= ~WS_OVERLAPPEDWINDOW;\r
@@ -992,7 +993,7 @@ void fgPlatformGlutFullScreen( SFG_Window *win )
         /* For fullscreen mode, find the monitor that is covered the most\r
          * by the window and get its rect as the resize target.\r
             */\r
-        hMonitor= MonitorFromRect(&win->State.OldRect, MONITOR_DEFAULTTONEAREST);\r
+        hMonitor= MonitorFromRect(&win->State.pWState.OldRect, MONITOR_DEFAULTTONEAREST);\r
         mi.cbSize = sizeof(mi);\r
         GetMonitorInfo(hMonitor, &mi);\r
         rect = mi.rcMonitor;\r
@@ -1048,16 +1049,16 @@ void fgPlatformGlutLeaveFullScreen( SFG_Window *win )
     }\r
 \r
     /* restore style of window before making it fullscreen */\r
-    SetWindowLong(win->Window.Handle, GWL_STYLE, win->State.OldStyle);\r
+    SetWindowLong(win->Window.Handle, GWL_STYLE, win->State.pWState.OldStyle);\r
     SetWindowPos(win->Window.Handle, HWND_TOP, 0,0,0,0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED);\r
 \r
     /* Then resize */\r
     SetWindowPos(win->Window.Handle,\r
         HWND_TOP,\r
-        win->State.OldRect.left,\r
-        win->State.OldRect.top,\r
-        win->State.OldRect.right  - win->State.OldRect.left,\r
-        win->State.OldRect.bottom - win->State.OldRect.top,\r
+        win->State.pWState.OldRect.left,\r
+        win->State.pWState.OldRect.top,\r
+        win->State.pWState.OldRect.right  - win->State.pWState.OldRect.left,\r
+        win->State.pWState.OldRect.bottom - win->State.pWState.OldRect.top,\r
         SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSENDCHANGING |\r
         SWP_NOZORDER\r
         );\r
@@ -1080,7 +1081,6 @@ void fgPlatformGlutFullScreenToggle( SFG_Window *win )
 \r
 /* -- PLATFORM-SPECIFIC INTERFACE FUNCTION -------------------------------------------------- */\r
 \r
-\r
 int FGAPIENTRY __glutCreateWindowWithExit( const char *title, void (__cdecl *exit_function)(int) )\r
 {\r
   __glutExitFunc = exit_function;\r