#if TARGET_HOST_UNIX_X11
-int fgGetCursorError( Cursor cursor )
+static int fghGetCursorError( Cursor cursor )
{
int ret = 0;
char buf[ 256 ];
-
+
switch( cursor )
{
case BadAlloc:
*/
void FGAPIENTRY glutSetCursor( int cursorID )
{
- freeglut_assert_ready; /* XXX WHY do we need the timer active for this? */
- freeglut_assert_window;
+ FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetCursor" );
+ FREEGLUT_EXIT_IF_NO_WINDOW ( "glutSetCursor" );
#if TARGET_HOST_UNIX_X11
/*
* Open issues:
* (a) Partial error checking. Is that a problem?
- * Is fgGetCursorError() correct? Should we abort on errors?
+ * Is fghGetCursorError() correct? Should we abort on errors?
* Should there be a freeglut-wide X error handler? Should
* we use the X error-handler mechanism?
* (b) FULL_CROSSHAIR demotes to plain CROSSHAIR. Old GLUT allows
if( GLUT_CURSOR_FULL_CROSSHAIR == cursorID )
cursorID = GLUT_CURSOR_CROSSHAIR;
-
+
switch( cursorID )
{
MAP_CURSOR( GLUT_CURSOR_RIGHT_ARROW, XC_right_ptr);
* need to pick a color for foreground/background---but what
* one we pick doesn't matter for GLUT_CURSOR_NONE.
*/
- static unsigned char no_cursor_bits[ 32 ];
+ static char no_cursor_bits[ 32 ];
XColor black;
no_cursor = XCreatePixmapFromBitmapData( fgDisplay.Display,
fgDisplay.RootWindow,
0, 0 );
break;
}
-
+
case GLUT_CURSOR_INHERIT:
break;
default:
- fgWarning( "Unknown cursor type: %d\n", cursorID );
+ fgWarning( "Unknown cursor type: %d", cursorID );
return;
}
- error = fgGetCursorError( cursor );
+ error = fghGetCursorError( cursor );
if( GLUT_CURSOR_INHERIT == cursorID )
XUndefineCursor( fgDisplay.Display,
}
}
-#elif TARGET_HOST_WIN32
+#elif TARGET_HOST_WIN32 || TARGET_HOST_WINCE
/*
* This is a temporary solution only...
MAP_CURSOR( GLUT_CURSOR_CROSSHAIR, IDC_CROSS );
/* MAP_CURSOR( GLUT_CURSOR_NONE, IDC_NO ); */
ZAP_CURSOR( GLUT_CURSOR_NONE, NULL );
-
+
default:
MAP_CURSOR( GLUT_CURSOR_UP_DOWN, IDC_ARROW );
}
*/
void FGAPIENTRY glutWarpPointer( int x, int y )
{
- freeglut_assert_ready; /* XXX WHY do we need the timer active for this? */
- freeglut_assert_window;
+ FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutWarpPointer" );
+ FREEGLUT_EXIT_IF_NO_WINDOW ( "glutWarpPointer" );
#if TARGET_HOST_UNIX_X11
);
XFlush( fgDisplay.Display ); /* XXX Is this really necessary? */
-#elif TARGET_HOST_WIN32
+#elif TARGET_HOST_WIN32 || TARGET_HOST_WINCE
{
POINT coords;
coords.x = x;
coords.y = y;
- /*
- * ClientToScreen() translates {coords} for us.
- */
+ /* ClientToScreen() translates {coords} for us. */
ClientToScreen( fgStructure.Window->Window.Handle, &coords );
SetCursorPos( coords.x, coords.y );
}