/* XXX Update these for each release! */
#define VERSION_MAJOR 2
-#define VERSION_MINOR 4
+#define VERSION_MINOR 6
#define VERSION_PATCH 0
/* Freeglut is intended to function under all Unix/X11 and Win32 platforms. */
*/
#endif
+/* Detect both SunPro and gcc compilers on Sun Solaris */
+#if defined (__SVR4) && defined (__sun)
+# define TARGET_HOST_SOLARIS 1
+#endif
+
#ifndef TARGET_HOST_MS_WINDOWS
# define TARGET_HOST_MS_WINDOWS 0
#endif
# define TARGET_HOST_MAC_OSX 0
#endif
+#ifndef TARGET_HOST_SOLARIS
+# define TARGET_HOST_SOLARIS 0
+#endif
+
/* -- FIXED CONFIGURATION LIMITS ------------------------------------------- */
#define FREEGLUT_MAX_MENUS 3
int MajorVersion; /* Major OpenGL context version */
int MinorVersion; /* Minor OpenGL context version */
int ContextFlags; /* OpenGL context flags */
+ int ContextProfile; /* OpenGL context profile */
};
/* The structure used by display initialization in freeglut_init.c */
/* Presently ignored */
CB_Select,
CB_OverlayDisplay,
- CB_SpaceMotion,
- CB_SpaceRotation,
- CB_SpaceButton,
+ CB_SpaceMotion, /* presently implemented only on UNIX/X11 */
+ CB_SpaceRotation, /* presently implemented only on UNIX/X11 */
+ CB_SpaceButton, /* presently implemented only on UNIX/X11 */
CB_Dials,
CB_ButtonBox,
CB_TabletMotion,
#if TARGET_HOST_MS_WINDOWS
LRESULT CALLBACK fgWindowProc( HWND hWnd, UINT uMsg,
WPARAM wParam, LPARAM lParam );
+void fgNewWGLCreateContext( SFG_Window* window );
GLboolean fgSetupPixelFormat( SFG_Window* window, GLboolean checkOnly,
unsigned char layer_type );
#endif
void fgInitialiseInputDevices( void );
void fgInputDeviceClose( void );
+/* spaceball device functions, defined in freeglut_spaceball.c */
+void fgInitialiseSpaceball( void );
+void fgSpaceballClose( void );
+void fgSpaceballSetWindow( SFG_Window *window );
+
+int fgHasSpaceball( void );
+int fgSpaceballNumButtons( void );
+
+#if TARGET_HOST_POSIX_X11
+int fgIsSpaceballXEvent( const XEvent *ev );
+void fgSpaceballHandleXEvent( const XEvent *ev );
+#endif
+
/* Setting the cursor for a given window */
void fgSetCursor ( SFG_Window *window, int cursorID );
SFG_Proc fghGetProcAddress( const char *procName );
+#if TARGET_HOST_MS_WINDOWS
+extern void (__cdecl *__glutExitFunc)( int return_value );
+#endif
+
#endif /* FREEGLUT_INTERNAL_H */
/*** END OF FILE ***/