projects
/
freeglut
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Made all the "glutJoystickXXX" functions part of the freeglut extensions.
[freeglut]
/
src
/
freeglut_state.c
diff --git
a/src/freeglut_state.c
b/src/freeglut_state.c
index
4968b47
..
93a3f1b
100644
(file)
--- a/
src/freeglut_state.c
+++ b/
src/freeglut_state.c
@@
-260,7
+260,15
@@
int FGAPIENTRY glutGet( GLenum eWhat )
/* I do not know yet if there will be a fgChooseVisual() function for Win32 */
case GLUT_DISPLAY_MODE_POSSIBLE:
/* I do not know yet if there will be a fgChooseVisual() function for Win32 */
case GLUT_DISPLAY_MODE_POSSIBLE:
- return( fgChooseVisual() == NULL ? 0 : 1 );
+ {
+ XVisualInfo* visualInfo = fgChooseVisual();
+ if ( visualInfo == NULL ) {
+ return 0;
+ } else {
+ XFree( visualInfo );
+ return 1;
+ }
+ }
/* This is system-dependant */
case GLUT_WINDOW_FORMAT_ID:
/* This is system-dependant */
case GLUT_WINDOW_FORMAT_ID:
@@
-540,14
+548,21
@@
int FGAPIENTRY glutDeviceGet( GLenum eWhat )
case GLUT_JOYSTICK_AXES:
return glutJoystickGetNumAxes ( 0 );
case GLUT_JOYSTICK_AXES:
return glutJoystickGetNumAxes ( 0 );
- case GLUT_HAS_SPACEBALL:
case GLUT_HAS_DIAL_AND_BUTTON_BOX:
case GLUT_HAS_DIAL_AND_BUTTON_BOX:
+ return fgInputDeviceDetect ();
+
+ case GLUT_NUM_DIALS:
+ if ( fgState.InputDevsInitialised ) return 8;
+ return 0;
+
+ case GLUT_NUM_BUTTON_BOX_BUTTONS:
+ return 0;
+
+ case GLUT_HAS_SPACEBALL:
case GLUT_HAS_TABLET:
return FALSE;
case GLUT_NUM_SPACEBALL_BUTTONS:
case GLUT_HAS_TABLET:
return FALSE;
case GLUT_NUM_SPACEBALL_BUTTONS:
- case GLUT_NUM_BUTTON_BOX_BUTTONS:
- case GLUT_NUM_DIALS:
case GLUT_NUM_TABLET_BUTTONS:
return 0;
case GLUT_NUM_TABLET_BUTTONS:
return 0;
@@
-572,7
+587,7
@@
int FGAPIENTRY glutDeviceGet( GLenum eWhat )
int FGAPIENTRY glutGetModifiers( void )
{
FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGetModifiers" );
int FGAPIENTRY glutGetModifiers( void )
{
FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGetModifiers" );
- if( fgState.Modifiers == 0xffffffff )
+ if( fgState.Modifiers == INVALID_MODIFIERS )
{
fgWarning( "glutGetModifiers() called outside an input callback" );
return 0;
{
fgWarning( "glutGetModifiers() called outside an input callback" );
return 0;