#include "config.h"
#endif
-#include "../include/GL/freeglut.h"
+#include <GL/freeglut.h>
#include "freeglut_internal.h"
/*
GL_FALSE, /* UseCurrentContext */
GL_FALSE, /* GLDebugSwitch */
GL_FALSE, /* XSyncSwitch */
- GL_TRUE, /* IgnoreKeyRepeat */
+ GL_TRUE, /* KeyRepeat */
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 },
FALSE
);
-#elif TARGET_HOST_WIN32
+#elif TARGET_HOST_WIN32 || TARGET_HOST_WINCE
WNDCLASS wc;
ATOM atom;
*/
fgDisplay.Instance = GetModuleHandle( NULL );
- atom = GetClassInfo( fgDisplay.Instance, "FREEGLUT", &wc );
+ atom = GetClassInfo( fgDisplay.Instance, _T("FREEGLUT"), &wc );
+
if( atom == 0 )
{
ZeroMemory( &wc, sizeof(WNDCLASS) );
* 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.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 );
+#else //TARGET_HOST_WINCE
+ wc.style = CS_HREDRAW | CS_VREDRAW;
+#endif
wc.hCursor = LoadCursor( NULL, IDC_ARROW );
wc.hbrBackground = NULL;
wc.lpszMenuName = NULL;
- wc.lpszClassName = "FREEGLUT";
+ wc.lpszClassName = _T("FREEGLUT");
/*
* Register the window class
#endif
+#if !TARGET_HOST_WINCE
fgJoystickInit( 0 );
+ fgJoystickInit( 1 );
+#endif //!TARGET_HOST_WINCE
fgState.Initialised = GL_TRUE;
}
free( timer );
}
+#if !TARGET_HOST_WINCE
fgJoystickClose( );
+#endif //!TARGET_HOST_WINCE
fgState.Initialised = GL_FALSE;
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;
free( fgState.ProgramName );
fgState.ProgramName = NULL;
}
-
+
#if TARGET_HOST_UNIX_X11
* Everything inside the following #ifndef is copied from the X sources.
*/
-#if TARGET_HOST_WIN32
+#if TARGET_HOST_WIN32 || TARGET_HOST_WINCE
/*
* It returns a bitmask that indicates which of the four values
* were actually found in the string. For each value found,
* the corresponding argument is updated; for each value
- * not found, the corresponding argument is left unchanged.
+ * not found, the corresponding argument is left unchanged.
*/
static int
{
register int Result = 0;
int Sign = 1;
-
+
if (*string == '+')
string++;
else if (*string == '-')
strind = (char *)string;
if (*strind != '+' && *strind != '-' && *strind != 'x') {
tempWidth = ReadInteger(strind, &nextCharacter);
- if (strind == nextCharacter)
+ if (strind == nextCharacter)
return 0;
strind = nextCharacter;
mask |= WidthValue;
fgElapsedTime( );
/* check if GLUT_FPS env var is set */
+#if !TARGET_HOST_WINCE
{
const char *fps = getenv( "GLUT_FPS" );
if( fps )
{
int interval;
sscanf( fps, "%d", &interval );
-
+
if( interval <= 0 )
fgState.FPSInterval = 5000; /* 5000 millisecond default */
else
}
}
+#endif //TARGET_HOST_WINCE
+
/*
- * Have the display created now. As I am too lazy to implement
- * the program arguments parsing, we will have the DISPLAY
- * environment variable used for opening the X display:
- *
- * XXX The above comment is rather unclear. We have just
- * XXX completed parsing of the program arguments for GLUT
- * XXX parameters. We obviously canNOT parse the application-
- * XXX specific parameters. Can someone re-write the above
- * XXX more clearly?
+ * 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 );