From: John F. F. <joh...@cy...> - 2011-09-04 04:39:45
|
I tried putting your patch in and the build broke. I've forwarded the offending file to you separately. I also had to add the definition of the new "glutLeave..." to the external header file. Please advise. - John On 6/9/2011 9:47 PM, Diederick C. Niehorster wrote: > Dear All, > > It appears my patch was too big and thus got stuck in the list's > filters which allow only messages of 40KB or less. So its up on > pastebin now: http://pastebin.com/rQK0yarG. See below for the original > email. > > On Wed, Jun 8, 2011 at 19:19, Diederick C. Niehorster<dc...@gm...> wrote: > On Wed, Jun 1, 2011 at 14:02, Diederick C. Niehorster<dc...@gm...> wrote: > >> Dear All, >> >> I'm debugging some problems I'm having with glutFullScreen >> >> > >> I'll submit patches in due time. >> > > The patch is now ready. But first let me thank Eero for his great help > in testing and pointing out problems (and solutions!) to a bunch of > issues. The patch is rather large as it affects quite a bunch of > functions. Splitting it up is not possible however as all the code is > interlinked. > > The attached patch does the following: > > - I've had some trouble in the past with fullscreen windows not > > covering the taskbar, fixed by setting window style to WS_POPUP when > going into fullscreen > - Fullscreen windows now have no decorations and thus do not "leak" > into other displays > - when going into fullscreen, the decorations and position/size of the > window is saved in the window's state field first, so it can be > restored later. > - glutFullScreenToggle now works and a new function > glutLeaveFullScreen now exists, it restores the window back to its > position/size and decorations before it went fullscreen > - this glutLeaveFullScreen function is added to the freeGLUT extentions > > - glutGet(GLUT_FULL_SCREEN) now works (always returned 0 on windows > > before, or FreeGLUT would get stuck in infinite loops) > - when entering fullscreen, the window will no be resized and > repositioned to fully cover the monitor which it covers the most, per > patch of Jason Wilkins sent to the list earlier. > > also: > - I have added a few functions that return the window rect or the > > client area rect based on the actual window style of the current > > window. The window is queried for the presence of caption and borders > so we no longer operate on assumptions and ifs > - child windows are now positioned correctly (as requested) regardless > of the parent's decorations > - cleaned up window creation and window reshaping using the new functions > - restructured the window creation code so it is easier to follow. > > - windows can now be resized and repositioned exactly as you > > requested, regardless of the window decorations > > - the glutGet's (glutGet(GLUT_WINDOW_X), glutGet(GLUT_WINDOW_Y), > glutGet(GLUT_WINDOW_WIDTH), glutGet(GLUT_WINDOW_HEIGHT), > glutGet(GLUT_WINDOW_BORDER_WIDTH), glutGet(GLUT_WINDOW_HEADER_HEIGHT)) > should now return correct values based on the style of the current > > window. > > Lastly, Eero and I have decided to revert some of the recent changes > regarding the processing of the -display command line parameter that > he sent to the list earlier. It now solely sets on which display the > screen will open when using glutEnterGameMode and is otherwise > ignored. For any other kind of window creation, we think it is best if > we do not make all coordinates relative to the origin of the screen > specified with the -display parameter to avoid unexpected behavior. > Programmers working with multiple screens can easily query Windows > directly outside of freeglut for the number of screens present and > their origins and use that information to set window positions as > wanted using the various functions FreeGLUT has for it. But before we > remove this information, please do let us know if you were using it > and this would affect you. Note that this does not affect Linux > handling of the -display parameter. > > All changes have been tested on Windows XP and Windows 7 (and on > windows XP with binaries compiled on Windows 7). > > The changes do not affect the Linux code except for the addition of > glutLeaveFullScreen. I have not been able to test whether it works > correctly on Linux, but as it builds on the already working > glutFullScreenToggle, I expect no problems. But would be great if > someone could test it! > > Best, > Dee > > ------------------------------------------------------------------------------ > EditLive Enterprise is the world's most technically advanced content > authoring tool. Experience the power of Track Changes, Inline Image > Editing and ensure content is compliant with Accessibility Checking. > http://p.sf.net/sfu/ephox-dev2dev > _______________________________________________ > Freeglut-developer mailing list > Fre...@li... > https://lists.sourceforge.net/lists/listinfo/freeglut-developer > > > |