projects
/
freeglut
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Window close fix.
[freeglut]
/
src
/
freeglut_init.c
diff --git
a/src/freeglut_init.c
b/src/freeglut_init.c
index
58388f8
..
b23e152
100644
(file)
--- a/
src/freeglut_init.c
+++ b/
src/freeglut_init.c
@@
-84,8
+84,8
@@
SFG_State fgState = { { -1, -1, GL_FALSE }, /* Position */
16, /* GameModeDepth */
72, /* GameModeRefresh */
GLUT_ACTION_EXIT, /* ActionOnWindowClose */
16, /* GameModeDepth */
72, /* GameModeRefresh */
GLUT_ACTION_EXIT, /* ActionOnWindowClose */
- GLUT_EXEC_STATE_INIT /* ExecState */
- NULL, /* ProgramName */
+ GLUT_EXEC_STATE_INIT, /* ExecState */
+ NULL /* ProgramName */
};
};
@@
-147,7
+147,7
@@
void fgInitialize( const char* displayName )
ATOM atom;
/*
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 );
@@
-157,9
+157,14
@@
void fgInitialize( const char* displayName )
ZeroMemory( &wc, sizeof(WNDCLASS) );
/*
ZeroMemory( &wc, sizeof(WNDCLASS) );
/*
- * Each of the windows should have its own device context...
+ * Each of the windows should have its own device context, and we
+ * want redraw events during Vertical and Horizontal Resizes by
+ * the user.
+ *
+ * XXX Old code had "| CS_DBCLCKS" commented out. Plans for the
+ * XXX future? Dead-end idea?
*/
*/
- wc.style = CS_OWNDC /* | CS_DBLCLKS */;
+ wc.style = CS_OWNDC | CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc = fgWindowProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.lpfnWndProc = fgWindowProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
@@
-306,7
+311,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.
*/
-#ifndef TARGET_HOST_UNIX_X11
+#if TARGET_HOST_WIN32
/*
/*
@@
-376,13
+381,13
@@
ReadInteger(char *string, char **NextString)
}
*NextString = string;
if (Sign >= 0)
}
*NextString = string;
if (Sign >= 0)
- return (Result);
+ return Result;
else
else
- return (-Result);
+ return -Result;
}
static int XParseGeometry (
}
static int XParseGeometry (
- _Xconst char *string,
+ const char *string,
int *x,
int *y,
unsigned int *width, /* RETURN */
int *x,
int *y,
unsigned int *width, /* RETURN */
@@
-394,7
+399,8
@@
static int XParseGeometry (
int tempX = 0, tempY = 0;
char *nextCharacter;
int tempX = 0, tempY = 0;
char *nextCharacter;
- if ( (string == NULL) || (*string == '\0')) return(mask);
+ if ( (string == NULL) || (*string == '\0'))
+ return mask;
if (*string == '=')
string++; /* ignore possible '=' at beg of geometry spec */
if (*string == '=')
string++; /* ignore possible '=' at beg of geometry spec */
@@
-402,7
+408,7
@@
static int XParseGeometry (
if (*strind != '+' && *strind != '-' && *strind != 'x') {
tempWidth = ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
if (*strind != '+' && *strind != '-' && *strind != 'x') {
tempWidth = ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
- return (0);
+ return 0;
strind = nextCharacter;
mask |= WidthValue;
}
strind = nextCharacter;
mask |= WidthValue;
}
@@
-411,7
+417,7
@@
static int XParseGeometry (
strind++;
tempHeight = ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
strind++;
tempHeight = ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
- return (0);
+ return 0;
strind = nextCharacter;
mask |= HeightValue;
}
strind = nextCharacter;
mask |= HeightValue;
}
@@
-421,7
+427,7
@@
static int XParseGeometry (
strind++;
tempX = -ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
strind++;
tempX = -ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
- return (0);
+ return 0;
strind = nextCharacter;
mask |= XNegative;
}
strind = nextCharacter;
mask |= XNegative;
}
@@
-430,7
+436,7
@@
static int XParseGeometry (
strind++;
tempX = ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
strind++;
tempX = ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
- return(0);
+ return 0;
strind = nextCharacter;
}
mask |= XValue;
strind = nextCharacter;
}
mask |= XValue;
@@
-439,7
+445,7
@@
static int XParseGeometry (
strind++;
tempY = -ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
strind++;
tempY = -ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
- return(0);
+ return 0;
strind = nextCharacter;
mask |= YNegative;
}
strind = nextCharacter;
mask |= YNegative;
}
@@
-448,7
+454,7
@@
static int XParseGeometry (
strind++;
tempY = ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
strind++;
tempY = ReadInteger(strind, &nextCharacter);
if (strind == nextCharacter)
- return(0);
+ return 0;
strind = nextCharacter;
}
mask |= YValue;
strind = nextCharacter;
}
mask |= YValue;
@@
-458,7
+464,7
@@
static int XParseGeometry (
/* If strind isn't at the end of the string the it's an invalid
geometry specification. */
/* If strind isn't at the end of the string the it's an invalid
geometry specification. */
- if (*strind != '\0') return (0);
+ if (*strind != '\0') return 0;
if (mask & XValue)
*x = tempX;
if (mask & XValue)
*x = tempX;
@@
-468,7
+474,7
@@
static int XParseGeometry (
*width = tempWidth;
if (mask & HeightValue)
*height = tempHeight;
*width = tempWidth;
if (mask & HeightValue)
*height = tempHeight;
- return (mask);
+ return mask;
}
#endif
}
#endif
@@
-485,7
+491,7
@@
void FGAPIENTRY glutInit( int* pargc, char** argv )
int i, j, argc = *pargc;
if( fgState.Initialised )
int i, j, argc = *pargc;
if( fgState.Initialised )
- fgError( "illegal glutInit() reinitialization attemp" );
+ fgError( "illegal glutInit() reinitialization attempt" );
if (pargc && *pargc && argv && *argv && **argv)
{
if (pargc && *pargc && argv && *argv && **argv)
{
@@
-699,12
+705,12
@@
void FGAPIENTRY glutInitDisplayString( const char* displayMode )
* delimited by blanks or tabs.
*/
char *token ;
* delimited by blanks or tabs.
*/
char *token ;
- int len = strlen ( displayMode ) ;
- char *buffer = (char *)malloc ( (len+1) * sizeof(char) ) ;
- memcpy ( buffer, displayMode, len ) ;
- buffer[len] = '\0' ;
+ int len = strlen ( displayMode );
+ char *buffer = (char *)malloc ( (len+1) * sizeof(char) );
+ memcpy ( buffer, displayMode, len );
+ buffer[len] = '\0';
- token = strtok ( buffer, " \t" ) ;
+ token = strtok ( buffer, " \t" );
while ( token )
{
/*
while ( token )
{
/*
@@
-856,14
+862,14
@@
void FGAPIENTRY glutInitDisplayString( const char* displayMode )
case 28 : /* Unrecognized */
printf ( "WARNING - Display string token not recognized: %s\n",
case 28 : /* Unrecognized */
printf ( "WARNING - Display string token not recognized: %s\n",
- token ) ;
+ token );
break ;
}
break ;
}
- token = strtok ( NULL, " \t" ) ;
+ token = strtok ( NULL, " \t" );
}
}
- 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...