X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Ffreeglut_init.c;h=13656fb9d7b0f13c9947e5d32e171b72e4f9cdc7;hb=7d0fc844c337b9c8901317d6935c3462b59ceda5;hp=c3de4222e57348347d23abec43daf52c15adccae;hpb=38bef7a6c761d0fe47f78efc73b8241e56d83cf7;p=freeglut diff --git a/src/freeglut_init.c b/src/freeglut_init.c index c3de422..13656fb 100644 --- a/src/freeglut_init.c +++ b/src/freeglut_init.c @@ -58,7 +58,7 @@ SFG_Display fgDisplay; SFG_State fgState = { { -1, -1, GL_FALSE }, /* Position */ { 300, 300, GL_TRUE }, /* Size */ GLUT_RGBA | GLUT_SINGLE | GLUT_DEPTH, /* DisplayMode */ - GL_FALSE, /* Initalized */ + GL_FALSE, /* Initialised */ GL_FALSE, /* ForceDirectContext */ GL_TRUE, /* TryDirectContext */ GL_FALSE, /* ForceIconic */ @@ -66,6 +66,7 @@ SFG_State fgState = { { -1, -1, GL_FALSE }, /* Position */ GL_FALSE, /* GLDebugSwitch */ GL_FALSE, /* XSyncSwitch */ GL_TRUE, /* IgnoreKeyRepeat */ + 0xffffffff, /* Modifiers */ 0, /* FPSInterval */ 0, /* SwapCount */ 0, /* SwapTime */ @@ -83,7 +84,8 @@ SFG_State fgState = { { -1, -1, GL_FALSE }, /* Position */ 16, /* GameModeDepth */ 72, /* GameModeRefresh */ GLUT_ACTION_EXIT, /* ActionOnWindowClose */ - GLUT_EXEC_STATE_INIT /* ExecState */ + GLUT_EXEC_STATE_INIT, /* ExecState */ + NULL /* ProgramName */ }; @@ -157,7 +159,7 @@ void fgInitialize( const char* displayName ) /* * Each of the windows should have its own device context... */ - wc.style = CS_OWNDC; + wc.style = CS_OWNDC /* | CS_DBLCLKS */; wc.lpfnWndProc = fgWindowProc; wc.cbClsExtra = 0; wc.cbWndExtra = 0; @@ -198,7 +200,7 @@ void fgInitialize( const char* displayName ) fgJoystickInit( 0 ); - fgState.Initalized = GL_TRUE; + fgState.Initialised = GL_TRUE; } /* @@ -208,14 +210,14 @@ void fgDeinitialize( void ) { SFG_Timer *timer; - if( !fgState.Initalized ) + if( !fgState.Initialised ) { fgWarning( "fgDeinitialize(): " "no valid initialization has been performed" ); return; } - /* fgState.Initalized = GL_FALSE; */ + /* fgState.Initialised = GL_FALSE; */ /* * If there was a menu created, destroy the rendering context @@ -228,7 +230,7 @@ void fgDeinitialize( void ) fgDestroyStructure( ); - while( timer = ( SFG_Timer * )fgState.Timers.First ) + while( (timer = ( SFG_Timer * )fgState.Timers.First) ) { fgListRemove ( &fgState.Timers, &timer->Node ); free( timer ); @@ -236,7 +238,7 @@ void fgDeinitialize( void ) fgJoystickClose( ); - fgState.Initalized = GL_FALSE; + fgState.Initialised = GL_FALSE; fgState.Position.X = -1; fgState.Position.Y = -1; @@ -258,6 +260,7 @@ void fgDeinitialize( void ) fgState.ExecState = GLUT_EXEC_STATE_INIT; fgState.IgnoreKeyRepeat = GL_TRUE; + fgState.Modifiers = 0xffffffff; fgState.GameModeSize.X = 640; fgState.GameModeSize.Y = 480; @@ -303,7 +306,35 @@ void fgDeinitialize( void ) * Everything inside the following #ifndef is copied from the X sources. */ -#ifndef TARGET_HOST_UNIX_X11 +#if TARGET_HOST_WIN32 + +/* + +Copyright 1985, 1986, 1987,1998 The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall +not be used in advertising or otherwise to promote the sale, use or +other dealings in this Software without prior written authorization +from The Open Group. + +*/ #define NoValue 0x0000 #define XValue 0x0001 @@ -351,7 +382,7 @@ ReadInteger(char *string, char **NextString) } static int XParseGeometry ( - _Xconst char *string, + const char *string, int *x, int *y, unsigned int *width, /* RETURN */ @@ -453,15 +484,16 @@ void FGAPIENTRY glutInit( int* pargc, char** argv ) char* geometry = NULL; int i, j, argc = *pargc; + if( fgState.Initialised ) + fgError( "illegal glutInit() reinitialization attempt" ); + if (pargc && *pargc && argv && *argv && **argv) + { fgState.ProgramName = strdup (*argv); - else - fgState.ProgramName = strdup (""); - if( !fgState.ProgramName ) - fgError ("Could not allocate space for the program's name."); - if( fgState.Initalized ) - fgError( "illegal glutInit() reinitialization attemp" ); + if( !fgState.ProgramName ) + fgError ("Could not allocate space for the program's name."); + } fgCreateStructure( );