X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Ffreeglut_window.c;h=f6da23ec54662a03ab37304c3f3ade0794011d48;hb=30971e75717f3d7b826714fbbb1171dfaf9164cf;hp=3c7bfb613586027b0ecc196609b31e66e7aa6659;hpb=8c2099b6c2e5c34794d9648a7122dc54a04a1a1a;p=freeglut diff --git a/src/freeglut_window.c b/src/freeglut_window.c index 3c7bfb6..f6da23e 100644 --- a/src/freeglut_window.c +++ b/src/freeglut_window.c @@ -128,19 +128,20 @@ GLXFBConfig* fgChooseFBConfig( void ) ATTRIB_VAL( GLX_ACCUM_ALPHA_SIZE, 1 ); } - if( fgState.DisplayMode & GLUT_AUX1 ) - ATTRIB_VAL( GLX_AUX_BUFFERS, 1 ); - if( fgState.DisplayMode & GLUT_AUX2 ) - ATTRIB_VAL( GLX_AUX_BUFFERS, 2 ); - if( fgState.DisplayMode & GLUT_AUX3 ) - ATTRIB_VAL( GLX_AUX_BUFFERS, 3 ); - if( fgState.DisplayMode & GLUT_AUX4 ) - ATTRIB_VAL( GLX_AUX_BUFFERS, 4 ); - if ( fgState.DisplayMode & GLUT_MULTISAMPLE ) - { - ATTRIB_VAL( GLX_SAMPLE_BUFFERS, 1 ); - } - + if ((fgState.DisplayMode & GLUT_AUX) + || (fgState.DisplayMode & GLUT_AUX1) + || (fgState.DisplayMode & GLUT_AUX2) + || (fgState.DisplayMode & GLUT_AUX3) + || (fgState.DisplayMode & GLUT_AUX4)) + { + ATTRIB_VAL(GLX_AUX_BUFFERS, fgState.AuxiliaryBufferNumber) + } + + if (fgState.DisplayMode & GLUT_MULTISAMPLE) + { + ATTRIB_VAL(GLX_SAMPLE_BUFFERS, 1) + ATTRIB_VAL(GLX_SAMPLES, fgState.SampleNumber) + } /* Push a null at the end of the list */ ATTRIB( None ); @@ -612,15 +613,15 @@ void fgOpenWindow( SFG_Window* window, const char* title, { fgStructure.MenuContext = (SFG_MenuContext *)malloc( sizeof(SFG_MenuContext) ); - fgStructure.MenuContext->Context = glXCreateNewContext( + fgStructure.MenuContext->MContext = glXCreateNewContext( fgDisplay.Display, *(window->Window.FBConfig), renderType, NULL, ( fgState.DirectContext != GLUT_FORCE_INDIRECT_CONTEXT ) ); } /* window->Window.Context = fgStructure.MenuContext->MContext; */ - window->Window.Context = glXCreateContext( - fgDisplay.Display, window->Window.FBConfig, renderType, + window->Window.Context = glXCreateNewContext( + fgDisplay.Display, *(window->Window.FBConfig), renderType, NULL, ( fgState.DirectContext != GLUT_FORCE_INDIRECT_CONTEXT ) ); } @@ -630,13 +631,13 @@ void fgOpenWindow( SFG_Window* window, const char* title, if( ! window->Window.Context ) window->Window.Context = glXCreateNewContext( - fgDisplay.Display, window->Window.FBConfig, renderType, + fgDisplay.Display, *(window->Window.FBConfig), renderType, NULL, ( fgState.DirectContext != GLUT_FORCE_INDIRECT_CONTEXT ) ); } else window->Window.Context = glXCreateNewContext( - fgDisplay.Display, window->Window.FBConfig, renderType, + fgDisplay.Display, *(window->Window.FBConfig), renderType, NULL, ( fgState.DirectContext != GLUT_FORCE_INDIRECT_CONTEXT ) ); @@ -858,8 +859,8 @@ void fgOpenWindow( SFG_Window* window, const char* title, SetWindowLong ( window->Window.Handle, GWL_STYLE, WindowStyle & ~(WS_BORDER | WS_SYSMENU | WS_MINIMIZEBOX | WS_MAXIMIZEBOX)); } -//SetWindowPos(window->Window.Handle, NULL, 0, 0, 0, 0, -// SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED); +/* SetWindowPos(window->Window.Handle, NULL, 0, 0, 0, 0, + SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED); */ #if defined(_WIN32_WCE) @@ -896,7 +897,7 @@ void fgCloseWindow( SFG_Window* window ) glXDestroyContext( fgDisplay.Display, window->Window.Context ); XFree( window->Window.FBConfig ); XDestroyWindow( fgDisplay.Display, window->Window.Handle ); - XFlush( fgDisplay.Display ); /* XXX Shouldn't need this */ + /* XFlush( fgDisplay.Display ); */ /* XXX Shouldn't need this */ #elif TARGET_HOST_MS_WINDOWS