From: <dc...@us...> - 2012-08-06 03:10:40
|
Revision: 1382 http://freeglut.svn.sourceforge.net/freeglut/?rev=1382&view=rev Author: dcnieho Date: 2012-08-06 03:10:33 +0000 (Mon, 06 Aug 2012) Log Message: ----------- some doc on why not using GetClientRect for getting the position of the client rect on the screen Modified Paths: -------------- trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c Modified: trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c =================================================================== --- trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c 2012-08-05 04:28:57 UTC (rev 1381) +++ trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c 2012-08-06 03:10:33 UTC (rev 1382) @@ -522,6 +522,8 @@ /* * call GetWindowRect() * (this returns the pixel coordinates of the outside of the window) + * cannot use GetClientRect as it seems to return a rect relative to + * the top-left point of the client area (.top and .left are thus always 0) */ GetWindowRect( window->Window.Handle, &windowRect ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dc...@us...> - 2012-11-23 07:51:16
|
Revision: 1478 http://freeglut.svn.sourceforge.net/freeglut/?rev=1478&view=rev Author: dcnieho Date: 2012-11-23 07:51:10 +0000 (Fri, 23 Nov 2012) Log Message: ----------- removed unnecessary calls to SetWindowPos when entering and leaving fullscreen mode. This caused the Position callback to fire more than necessary Modified Paths: -------------- trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c Modified: trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c =================================================================== --- trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c 2012-11-23 07:41:39 UTC (rev 1477) +++ trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c 2012-11-23 07:51:10 UTC (rev 1478) @@ -934,7 +934,6 @@ s &= ~WS_OVERLAPPEDWINDOW; s |= WS_POPUP; SetWindowLong(win->Window.Handle, GWL_STYLE, s); - SetWindowPos(win->Window.Handle, HWND_TOP, 0,0,0,0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED); /* For fullscreen mode, find the monitor that is covered the most * by the window and get its rect as the resize target. @@ -996,7 +995,6 @@ /* restore style of window before making it fullscreen */ SetWindowLong(win->Window.Handle, GWL_STYLE, win->State.pWState.OldStyle); - SetWindowPos(win->Window.Handle, HWND_TOP, 0,0,0,0, SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED); /* Then resize */ SetWindowPos(win->Window.Handle, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dc...@us...> - 2013-03-17 09:09:49
|
Revision: 1561 http://freeglut.svn.sourceforge.net/freeglut/?rev=1561&view=rev Author: dcnieho Date: 2013-03-17 09:09:41 +0000 (Sun, 17 Mar 2013) Log Message: ----------- strdup instead of malloc/strcpy Modified Paths: -------------- trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c Modified: trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c =================================================================== --- trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c 2013-03-16 15:46:39 UTC (rev 1560) +++ trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c 2013-03-17 09:09:41 UTC (rev 1561) @@ -923,8 +923,7 @@ /* Make copy of string to refer to later */ if (fgStructure.CurrentWindow->State.pWState.WindowTitle) free(fgStructure.CurrentWindow->State.pWState.WindowTitle); - fgStructure.CurrentWindow->State.pWState.WindowTitle = malloc (strlen(title) + 1); - strcpy(fgStructure.CurrentWindow->State.pWState.WindowTitle, title); + fgStructure.CurrentWindow->State.pWState.WindowTitle = strdup(title); } /* @@ -935,8 +934,7 @@ /* Make copy of string to refer to later */ if (fgStructure.CurrentWindow->State.pWState.IconTitle) free(fgStructure.CurrentWindow->State.pWState.IconTitle); - fgStructure.CurrentWindow->State.pWState.IconTitle = malloc (strlen(title) + 1); - strcpy(fgStructure.CurrentWindow->State.pWState.IconTitle, title); + fgStructure.CurrentWindow->State.pWState.IconTitle = strdup(title); } /* This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <dc...@us...> - 2013-03-17 14:01:53
|
Revision: 1562 http://freeglut.svn.sourceforge.net/freeglut/?rev=1562&view=rev Author: dcnieho Date: 2013-03-17 14:01:46 +0000 (Sun, 17 Mar 2013) Log Message: ----------- - another strdup - windows only opened in iconic state if its a non-gamemode, non-menu toplevel window - depending on whether window is iconic or not glutSetWindowTitle or glutSetIconTitle call should have immediate effect on windows Modified Paths: -------------- trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c Modified: trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c =================================================================== --- trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c 2013-03-17 09:09:41 UTC (rev 1561) +++ trunk/freeglut/freeglut/src/mswin/fg_window_mswin.c 2013-03-17 14:01:46 UTC (rev 1562) @@ -701,10 +701,7 @@ fgError( "Failed to create a window (%s)!", title ); /* Store title */ - { - window->State.pWState.WindowTitle = malloc (strlen(title) + 1); - strcpy(window->State.pWState.WindowTitle, title); - } + window->State.pWState.WindowTitle = strdup(title); #if !defined(_WIN32_WCE) /* Need to set requested style again, apparently Windows doesn't listen when requesting windows without title bar or borders */ @@ -732,8 +729,11 @@ #if defined(_WIN32_WCE) ShowWindow( window->Window.Handle, SW_SHOW ); #else - ShowWindow( window->Window.Handle, - fgState.ForceIconic ? SW_SHOWMINIMIZED : SW_SHOWNORMAL ); + { + BOOL iconic = fgState.ForceIconic && !window->IsMenu && !gameMode && !isSubWindow; + ShowWindow( window->Window.Handle, + iconic ? SW_SHOWMINIMIZED : SW_SHOWNORMAL ); + } #endif /* defined(_WIN32_WCE) */ ShowCursor( TRUE ); @@ -917,7 +917,8 @@ free(wstr); } #else - SetWindowText( fgStructure.CurrentWindow->Window.Handle, title ); + if (!IsIconic(fgStructure.CurrentWindow->Window.Handle)) + SetWindowText( fgStructure.CurrentWindow->Window.Handle, title ); #endif /* Make copy of string to refer to later */ @@ -931,6 +932,11 @@ */ void fgPlatformGlutSetIconTitle( const char* title ) { +#ifndef _WIN32_WCE + if (IsIconic(fgStructure.CurrentWindow->Window.Handle)) + SetWindowText( fgStructure.CurrentWindow->Window.Handle, title ); +#endif + /* Make copy of string to refer to later */ if (fgStructure.CurrentWindow->State.pWState.IconTitle) free(fgStructure.CurrentWindow->State.pWState.IconTitle); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |