Splitting the X11-specific "freeglut_joystick.c" code into its own file
[freeglut] / src / Common / freeglut_cursor.c
index 1eddf87..140c0ea 100644 (file)
@@ -39,8 +39,8 @@
 \r
 /* -- PRIVATE FUNCTIONS --------------------------------------------------- */\r
 \r
-extern void fghSetCursor ( SFG_Window *window, int cursorID );\r
-extern void fghWarpPointer ( int x, int y );\r
+extern void fgPlatformSetCursor ( SFG_Window *window, int cursorID );\r
+extern void fgPlatformWarpPointer ( int x, int y );\r
 \r
 #if TARGET_HOST_POSIX_X11 || TARGET_HOST_MAC_OSX || TARGET_HOST_SOLARIS\r
   #include <X11/cursorfont.h>\r
@@ -57,14 +57,14 @@ static Cursor getEmptyCursor( void )
         Pixmap cursorNonePixmap;\r
         memset( cursorNoneBits, 0, sizeof( cursorNoneBits ) );\r
         memset( &dontCare, 0, sizeof( dontCare ) );\r
-        cursorNonePixmap = XCreateBitmapFromData ( fgDisplay.Display,\r
-                                                   fgDisplay.RootWindow,\r
+        cursorNonePixmap = XCreateBitmapFromData ( fgDisplay.pDisplay.Display,\r
+                                                   fgDisplay.pDisplay.RootWindow,\r
                                                    cursorNoneBits, 16, 16 );\r
         if( cursorNonePixmap != None ) {\r
-            cursorNone = XCreatePixmapCursor( fgDisplay.Display,\r
+            cursorNone = XCreatePixmapCursor( fgDisplay.pDisplay.Display,\r
                                               cursorNonePixmap, cursorNonePixmap,\r
                                               &dontCare, &dontCare, 0, 0 );\r
-            XFreePixmap( fgDisplay.Display, cursorNonePixmap );\r
+            XFreePixmap( fgDisplay.pDisplay.Display, cursorNonePixmap );\r
         }\r
     }\r
     return cursorNone;\r
@@ -104,7 +104,7 @@ static cursorCacheEntry cursorCache[] = {
     { XC_bottom_left_corner,  None }  /* GLUT_CURSOR_BOTTOM_LEFT_CORNER */\r
 };\r
 \r
-static void fghSetCursor ( SFG_Window *window, int cursorID )\r
+void fgPlatformSetCursor ( SFG_Window *window, int cursorID )\r
 {\r
     Cursor cursor;\r
     /*\r
@@ -120,7 +120,7 @@ static void fghSetCursor ( SFG_Window *window, int cursorID )
         cursorCacheEntry *entry = &cursorCache[ cursorIDToUse ];\r
         if( entry->cachedCursor == None ) {\r
             entry->cachedCursor =\r
-                XCreateFontCursor( fgDisplay.Display, entry->cursorShape );\r
+                XCreateFontCursor( fgDisplay.pDisplay.Display, entry->cursorShape );\r
         }\r
         cursor = entry->cachedCursor;\r
     } else {\r
@@ -141,26 +141,26 @@ static void fghSetCursor ( SFG_Window *window, int cursorID )
     }\r
 \r
     if ( cursorIDToUse == GLUT_CURSOR_INHERIT ) {\r
-        XUndefineCursor( fgDisplay.Display, window->Window.Handle );\r
+        XUndefineCursor( fgDisplay.pDisplay.Display, window->Window.Handle );\r
     } else if ( cursor != None ) {\r
-        XDefineCursor( fgDisplay.Display, window->Window.Handle, cursor );\r
+        XDefineCursor( fgDisplay.pDisplay.Display, window->Window.Handle, cursor );\r
     } else if ( cursorIDToUse != GLUT_CURSOR_NONE ) {\r
         fgError( "Failed to create cursor" );\r
     }\r
 }\r
 \r
 \r
-static void fghWarpPointer ( int x, int y )\r
+void fgPlatformWarpPointer ( int x, int y )\r
 {\r
     XWarpPointer(\r
-        fgDisplay.Display,\r
+        fgDisplay.pDisplay.Display,\r
         None,\r
         fgStructure.CurrentWindow->Window.Handle,\r
         0, 0, 0, 0,\r
         x, y\r
     );\r
     /* Make the warp visible immediately. */\r
-    XFlush( fgDisplay.Display );\r
+    XFlush( fgDisplay.pDisplay.Display );\r
 }\r
 #endif\r
 \r
@@ -168,7 +168,7 @@ static void fghWarpPointer ( int x, int y )
 /* -- INTERNAL FUNCTIONS ---------------------------------------------------- */\r
 void fgSetCursor ( SFG_Window *window, int cursorID )\r
 {\r
-    fghSetCursor ( window, cursorID );\r
+    fgPlatformSetCursor ( window, cursorID );\r
 }\r
 \r
 \r
@@ -182,7 +182,7 @@ void FGAPIENTRY glutSetCursor( int cursorID )
     FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetCursor" );\r
     FREEGLUT_EXIT_IF_NO_WINDOW ( "glutSetCursor" );\r
 \r
-    fghSetCursor ( fgStructure.CurrentWindow, cursorID );\r
+    fgPlatformSetCursor ( fgStructure.CurrentWindow, cursorID );\r
     fgStructure.CurrentWindow->State.Cursor = cursorID;\r
 }\r
 \r
@@ -194,7 +194,7 @@ void FGAPIENTRY glutWarpPointer( int x, int y )
     FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutWarpPointer" );\r
     FREEGLUT_EXIT_IF_NO_WINDOW ( "glutWarpPointer" );\r
 \r
-    fghWarpPointer ( x, y );\r
+    fgPlatformWarpPointer ( x, y );\r
 }\r
 \r
 /*** END OF FILE ***/\r