projects
/
freeglut
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
some function renaming, etc (John Fay)
[freeglut]
/
src
/
freeglut_init.c
diff --git
a/src/freeglut_init.c
b/src/freeglut_init.c
index
e25404f
..
0853d35
100644
(file)
--- a/
src/freeglut_init.c
+++ b/
src/freeglut_init.c
@@
-59,18
+59,17
@@
SFG_State fgState = { { -1, -1, GL_FALSE }, /* Position */
{ 300, 300, GL_TRUE }, /* Size */
GLUT_RGBA | GLUT_SINGLE | GLUT_DEPTH, /* DisplayMode */
GL_FALSE, /* Initialised */
{ 300, 300, GL_TRUE }, /* Size */
GLUT_RGBA | GLUT_SINGLE | GLUT_DEPTH, /* DisplayMode */
GL_FALSE, /* Initialised */
- GL_FALSE, /* ForceDirectContext */
- GL_TRUE, /* TryDirectContext */
+ GLUT_TRY_DIRECT_CONTEXT, /* DirectContext */
GL_FALSE, /* ForceIconic */
GL_FALSE, /* UseCurrentContext */
GL_FALSE, /* GLDebugSwitch */
GL_FALSE, /* XSyncSwitch */
GL_FALSE, /* ForceIconic */
GL_FALSE, /* UseCurrentContext */
GL_FALSE, /* GLDebugSwitch */
GL_FALSE, /* XSyncSwitch */
- GL_FALSE, /* IgnoreKeyRepeat */
+ GL_TRUE, /* KeyRepeat */
0xffffffff, /* Modifiers */
0, /* FPSInterval */
0, /* SwapCount */
0, /* SwapTime */
0xffffffff, /* Modifiers */
0, /* FPSInterval */
0, /* SwapCount */
0, /* SwapTime */
-#if TARGET_HOST_WIN32
+#if TARGET_HOST_WIN32 || TARGET_HOST_WINCE
{ 0, GL_FALSE }, /* Time */
#else
{ { 0, 0 }, GL_FALSE },
{ 0, GL_FALSE }, /* Time */
#else
{ { 0, 0 }, GL_FALSE },
@@
-86,7
+85,8
@@
SFG_State fgState = { { -1, -1, GL_FALSE }, /* Position */
72, /* GameModeRefresh */
GLUT_ACTION_EXIT, /* ActionOnWindowClose */
GLUT_EXEC_STATE_INIT, /* ExecState */
72, /* GameModeRefresh */
GLUT_ACTION_EXIT, /* ActionOnWindowClose */
GLUT_EXEC_STATE_INIT, /* ExecState */
- NULL /* ProgramName */
+ NULL, /* ProgramName */
+ GL_FALSE /* JoysticksInitialised */
};
};
@@
-95,7
+95,7
@@
SFG_State fgState = { { -1, -1, GL_FALSE }, /* Position */
/*
* A call to this function should initialize all the display stuff...
*/
/*
* A call to this function should initialize all the display stuff...
*/
-void fgInitialize( const char* displayName )
+static void fghInitialize( const char* displayName )
{
#if TARGET_HOST_UNIX_X11
fgDisplay.Display = XOpenDisplay( displayName );
{
#if TARGET_HOST_UNIX_X11
fgDisplay.Display = XOpenDisplay( displayName );
@@
-133,26
+133,23
@@
void fgInitialize( const char* displayName )
fgDisplay.Connection = ConnectionNumber( fgDisplay.Display );
fgDisplay.Connection = ConnectionNumber( fgDisplay.Display );
- /*
- * Create the window deletion atom
- */
+ /* Create the window deletion atom */
fgDisplay.DeleteWindow = XInternAtom(
fgDisplay.Display,
"WM_DELETE_WINDOW",
FALSE
);
fgDisplay.DeleteWindow = XInternAtom(
fgDisplay.Display,
"WM_DELETE_WINDOW",
FALSE
);
-#elif TARGET_HOST_WIN32
+#elif TARGET_HOST_WIN32 || TARGET_HOST_WINCE
WNDCLASS wc;
ATOM atom;
WNDCLASS wc;
ATOM atom;
- /*
- * What we need to do is to initialize the fgDisplay global structure here.
- */
+ /* What we need to do is to initialize the fgDisplay global structure here. */
fgDisplay.Instance = GetModuleHandle( NULL );
fgDisplay.Instance = GetModuleHandle( NULL );
- atom = GetClassInfo( fgDisplay.Instance, "FREEGLUT", &wc );
+ atom = GetClassInfo( fgDisplay.Instance, _T("FREEGLUT"), &wc );
+
if( atom == 0 )
{
ZeroMemory( &wc, sizeof(WNDCLASS) );
if( atom == 0 )
{
ZeroMemory( &wc, sizeof(WNDCLASS) );
@@
-165,30
+162,31
@@
void fgInitialize( const char* displayName )
* XXX Old code had "| CS_DBCLCKS" commented out. Plans for the
* XXX future? Dead-end idea?
*/
* XXX Old code had "| CS_DBCLCKS" commented out. Plans for the
* XXX future? Dead-end idea?
*/
- wc.style = CS_OWNDC | CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc = fgWindowProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = fgDisplay.Instance;
wc.lpfnWndProc = fgWindowProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = fgDisplay.Instance;
- wc.hIcon = LoadIcon( fgDisplay.Instance, "GLUT_ICON" );
+ wc.hIcon = LoadIcon( fgDisplay.Instance, _T("GLUT_ICON") );
+
+#if TARGET_HOST_WIN32
+ wc.style = CS_OWNDC | CS_HREDRAW | CS_VREDRAW;
if (!wc.hIcon)
wc.hIcon = LoadIcon( NULL, IDI_WINLOGO );
if (!wc.hIcon)
wc.hIcon = LoadIcon( NULL, IDI_WINLOGO );
+#else /* TARGET_HOST_WINCE */
+ wc.style = CS_HREDRAW | CS_VREDRAW;
+#endif
wc.hCursor = LoadCursor( NULL, IDC_ARROW );
wc.hbrBackground = NULL;
wc.lpszMenuName = NULL;
wc.hCursor = LoadCursor( NULL, IDC_ARROW );
wc.hbrBackground = NULL;
wc.lpszMenuName = NULL;
- wc.lpszClassName = "FREEGLUT";
+ wc.lpszClassName = _T("FREEGLUT");
- /*
- * Register the window class
- */
+ /* Register the window class */
atom = RegisterClass( &wc );
assert( atom );
}
atom = RegisterClass( &wc );
assert( atom );
}
- /*
- * The screen dimensions can be obtained via GetSystemMetrics() calls
- */
+ /* The screen dimensions can be obtained via GetSystemMetrics() calls */
fgDisplay.ScreenWidth = GetSystemMetrics( SM_CXSCREEN );
fgDisplay.ScreenHeight = GetSystemMetrics( SM_CYSCREEN );
fgDisplay.ScreenWidth = GetSystemMetrics( SM_CXSCREEN );
fgDisplay.ScreenHeight = GetSystemMetrics( SM_CYSCREEN );
@@
-204,9
+202,6
@@
void fgInitialize( const char* displayName )
#endif
#endif
- fgJoystickInit( 0 );
- fgJoystickInit( 1 );
-
fgState.Initialised = GL_TRUE;
}
fgState.Initialised = GL_TRUE;
}
@@
-226,9
+221,7
@@
void fgDeinitialize( void )
/* fgState.Initialised = GL_FALSE; */
/* fgState.Initialised = GL_FALSE; */
- /*
- * If there was a menu created, destroy the rendering context
- */
+ /* If there was a menu created, destroy the rendering context */
if( fgStructure.MenuContext )
{
free( fgStructure.MenuContext );
if( fgStructure.MenuContext )
{
free( fgStructure.MenuContext );
@@
-249,7
+242,11
@@
void fgDeinitialize( void )
free( timer );
}
free( timer );
}
- fgJoystickClose( );
+#if !TARGET_HOST_WINCE
+ if ( fgState.JoysticksInitialised )
+ fgJoystickClose( );
+#endif /* !TARGET_HOST_WINCE */
+ fgState.JoysticksInitialised = GL_FALSE;
fgState.Initialised = GL_FALSE;
fgState.Initialised = GL_FALSE;
@@
-263,8
+260,7
@@
void fgDeinitialize( void )
fgState.DisplayMode = GLUT_RGBA | GLUT_SINGLE | GLUT_DEPTH;
fgState.DisplayMode = GLUT_RGBA | GLUT_SINGLE | GLUT_DEPTH;
- fgState.ForceDirectContext = GL_FALSE;
- fgState.TryDirectContext = GL_TRUE;
+ fgState.DirectContext = GLUT_TRY_DIRECT_CONTEXT;
fgState.ForceIconic = GL_FALSE;
fgState.UseCurrentContext = GL_FALSE;
fgState.GLDebugSwitch = GL_FALSE;
fgState.ForceIconic = GL_FALSE;
fgState.UseCurrentContext = GL_FALSE;
fgState.GLDebugSwitch = GL_FALSE;
@@
-272,7
+268,7
@@
void fgDeinitialize( void )
fgState.ActionOnWindowClose = GLUT_ACTION_EXIT;
fgState.ExecState = GLUT_EXEC_STATE_INIT;
fgState.ActionOnWindowClose = GLUT_ACTION_EXIT;
fgState.ExecState = GLUT_EXEC_STATE_INIT;
- fgState.IgnoreKeyRepeat = GL_TRUE;
+ fgState.KeyRepeat = GL_FALSE;
fgState.Modifiers = 0xffffffff;
fgState.GameModeSize.X = 640;
fgState.Modifiers = 0xffffffff;
fgState.GameModeSize.X = 640;
@@
-321,7
+317,7
@@
void fgDeinitialize( void )
* Everything inside the following #ifndef is copied from the X sources.
*/
* Everything inside the following #ifndef is copied from the X sources.
*/
-#if TARGET_HOST_WIN32
+#if TARGET_HOST_WIN32 || TARGET_HOST_WINCE
/*
/*
@@
-516,6
+512,7
@@
void FGAPIENTRY glutInit( int* pargc, char** argv )
fgElapsedTime( );
/* check if GLUT_FPS env var is set */
fgElapsedTime( );
/* check if GLUT_FPS env var is set */
+#if !TARGET_HOST_WINCE
{
const char *fps = getenv( "GLUT_FPS" );
if( fps )
{
const char *fps = getenv( "GLUT_FPS" );
if( fps )
@@
-559,21
+556,21
@@
void FGAPIENTRY glutInit( int* pargc, char** argv )
}
else if( strcmp( argv[ i ], "-direct" ) == 0)
{
}
else if( strcmp( argv[ i ], "-direct" ) == 0)
{
- if( ! fgState.TryDirectContext )
+ if( fgState.DirectContext == GLUT_FORCE_INDIRECT_CONTEXT )
fgError( "parameters ambiguity, -direct and -indirect "
"cannot be both specified" );
fgError( "parameters ambiguity, -direct and -indirect "
"cannot be both specified" );
- fgState.ForceDirectContext = GL_TRUE;
+ fgState.DirectContext = GLUT_FORCE_DIRECT_CONTEXT;
argv[ i ] = NULL;
( *pargc )--;
}
else if( strcmp( argv[ i ], "-indirect" ) == 0 )
{
argv[ i ] = NULL;
( *pargc )--;
}
else if( strcmp( argv[ i ], "-indirect" ) == 0 )
{
- if( fgState.ForceDirectContext )
+ if( fgState.DirectContext == GLUT_FORCE_DIRECT_CONTEXT )
fgError( "parameters ambiguity, -direct and -indirect "
"cannot be both specified" );
fgError( "parameters ambiguity, -direct and -indirect "
"cannot be both specified" );
- fgState.TryDirectContext = GL_FALSE;
+ fgState.DirectContext = GLUT_FORCE_INDIRECT_CONTEXT;
argv[ i ] = NULL;
(*pargc)--;
}
argv[ i ] = NULL;
(*pargc)--;
}
@@
-612,12
+609,14
@@
void FGAPIENTRY glutInit( int* pargc, char** argv )
}
}
}
}
+#endif /* TARGET_HOST_WINCE */
+
/*
* Have the display created now. If there wasn't a "-display"
* in the program arguments, we will use the DISPLAY environment
* variable for opening the X display (see code above):
*/
/*
* Have the display created now. If there wasn't a "-display"
* in the program arguments, we will use the DISPLAY environment
* variable for opening the X display (see code above):
*/
- fgInitialize( displayName );
+ fghInitialize( displayName );
/*
* Geometry parsing deffered until here because we may need the screen
/*
* Geometry parsing deffered until here because we may need the screen
@@
-677,9
+676,7
@@
void FGAPIENTRY glutInitWindowSize( int width, int height )
*/
void FGAPIENTRY glutInitDisplayMode( unsigned int displayMode )
{
*/
void FGAPIENTRY glutInitDisplayMode( unsigned int displayMode )
{
- /*
- * We will make use of this value when creating a new OpenGL context...
- */
+ /* We will make use of this value when creating a new OpenGL context... */
fgState.DisplayMode = displayMode;
}
fgState.DisplayMode = displayMode;
}
@@
-721,9
+718,7
@@
void FGAPIENTRY glutInitDisplayString( const char* displayMode )
token = strtok ( buffer, " \t" );
while ( token )
{
token = strtok ( buffer, " \t" );
while ( token )
{
- /*
- * Process this token
- */
+ /* Process this token */
int i ;
for ( i = 0; i < NUM_TOKENS; i++ )
{
int i ;
for ( i = 0; i < NUM_TOKENS; i++ )
{
@@
-879,9
+874,7
@@
void FGAPIENTRY glutInitDisplayString( const char* displayMode )
free ( buffer );
free ( buffer );
- /*
- * We will make use of this value when creating a new OpenGL context...
- */
+ /* We will make use of this value when creating a new OpenGL context... */
fgState.DisplayMode = glut_state_flag;
}
fgState.DisplayMode = glut_state_flag;
}