Make "gcc -Wall -pedantic -Werror" happy.
[freeglut] / src / freeglut_state.c
index f8b70e9..68b7eb5 100644 (file)
@@ -528,13 +528,21 @@ int FGAPIENTRY glutDeviceGet( GLenum eWhat )
 
 #endif
 
-    case GLUT_JOYSTICK_POLL_RATE:
     case GLUT_HAS_JOYSTICK:
+        return fgJoystickDetect ();
+
     case GLUT_OWNS_JOYSTICK:
+        return fgState.JoysticksInitialised;
+
+    case GLUT_JOYSTICK_POLL_RATE:
+        return fgStructure.Window ? fgStructure.Window->State.JoystickPollRate : 0;
+
+    /* The following two are only for Joystick 0 but this is an improvement */
     case GLUT_JOYSTICK_BUTTONS:
+        return glutJoystickGetNumButtons ( 0 );
+
     case GLUT_JOYSTICK_AXES:
-        /* XXX WARNING: THIS IS A BIG LIE! */
-        return 0;
+        return glutJoystickGetNumAxes ( 0 );
 
     case GLUT_HAS_SPACEBALL:
     case GLUT_HAS_DIAL_AND_BUTTON_BOX:
@@ -551,8 +559,7 @@ int FGAPIENTRY glutDeviceGet( GLenum eWhat )
         return fgStructure.Window ? fgStructure.Window->State.IgnoreKeyRepeat : 0;
 
     case GLUT_DEVICE_KEY_REPEAT:
-        /* XXX WARNING: THIS IS A BIG LIE! */
-        return GLUT_KEY_REPEAT_DEFAULT;
+        return fgState.KeyRepeat;
 
     default:
         fgWarning( "glutDeviceGet(): missing enum handle %d", eWhat );