X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=include%2FGL%2Ffreeglut_ext.h;h=12f08252338a03099b50845d5eaad9d7137e0457;hb=2b1558eefd737cacdacf13a7b9d13a435a41a91a;hp=5e4ad2c1021067be4308d746abc7e6a36e28904e;hpb=e7d7390db69d046aa5e5984f639683e4386ef4c8;p=freeglut diff --git a/include/GL/freeglut_ext.h b/include/GL/freeglut_ext.h index 5e4ad2c..12f0825 100644 --- a/include/GL/freeglut_ext.h +++ b/include/GL/freeglut_ext.h @@ -33,6 +33,19 @@ #endif /* + * Additional GLUT Key definitions for the Special key function + */ +#define GLUT_KEY_NUM_LOCK 0x006D +#define GLUT_KEY_BEGIN 0x006E +#define GLUT_KEY_DELETE 0x006F +#define GLUT_KEY_SHIFT_L 0x0070 +#define GLUT_KEY_SHIFT_R 0x0071 +#define GLUT_KEY_CTRL_L 0x0072 +#define GLUT_KEY_CTRL_R 0x0073 +#define GLUT_KEY_ALT_L 0x0074 +#define GLUT_KEY_ALT_R 0x0075 + +/* * GLUT API Extension macro definitions -- behaviour when the user clicks on an "x" to close a window */ #define GLUT_ACTION_EXIT 0 @@ -68,17 +81,43 @@ #define GLUT_RENDERING_CONTEXT 0x01FD #define GLUT_DIRECT_RENDERING 0x01FE +#define GLUT_FULL_SCREEN 0x01FF + /* * New tokens for glutInitDisplayMode. * Only one GLUT_AUXn bit may be used at a time. * Value 0x0400 is defined in OpenGLUT. */ +#define GLUT_AUX 0x1000 + #define GLUT_AUX1 0x1000 #define GLUT_AUX2 0x2000 #define GLUT_AUX3 0x4000 #define GLUT_AUX4 0x8000 /* + * Context-related flags, see freeglut_state.c + * Set the requested OpenGL version + */ +#define GLUT_INIT_MAJOR_VERSION 0x0200 +#define GLUT_INIT_MINOR_VERSION 0x0201 +#define GLUT_INIT_FLAGS 0x0202 +#define GLUT_INIT_PROFILE 0x0203 + +/* + * Flags for glutInitContextFlags, see freeglut_init.c + */ +#define GLUT_DEBUG 0x0001 +#define GLUT_FORWARD_COMPATIBLE 0x0002 + + +/* + * Flags for glutInitContextProfile, see freeglut_init.c + */ +#define GLUT_CORE_PROFILE 0x0001 +#define GLUT_COMPATIBILITY_PROFILE 0x0002 + +/* * Process loop function, see freeglut_main.c */ FGAPI void FGAPIENTRY glutMainLoopEvent( void ); @@ -86,6 +125,12 @@ FGAPI void FGAPIENTRY glutLeaveMainLoop( void ); FGAPI void FGAPIENTRY glutExit ( void ); /* + * Window management functions, see freeglut_window.c + */ +FGAPI void FGAPIENTRY glutFullScreenToggle( void ); +FGAPI void FGAPIENTRY glutLeaveFullScreen( void ); + +/* * Window-specific callback functions, see freeglut_callbacks.c */ FGAPI void FGAPIENTRY glutMouseWheelFunc( void (* callback)( int, int, int, int ) ); @@ -98,6 +143,7 @@ FGAPI void FGAPIENTRY glutMenuDestroyFunc( void (* callback)( void ) ); * State setting and retrieval functions, see freeglut_state.c */ FGAPI void FGAPIENTRY glutSetOption ( GLenum option_flag, int value ); +FGAPI int * FGAPIENTRY glutGetModeValues(GLenum mode, int * size); /* A.Donev: User-data manipulation */ FGAPI void* FGAPIENTRY glutGetWindowData( void ); FGAPI void FGAPIENTRY glutSetWindowData(void* data); @@ -129,6 +175,17 @@ typedef void (*GLUTproc)(); FGAPI GLUTproc FGAPIENTRY glutGetProcAddress( const char *procName ); /* + * Multi-touch/multi-pointer extensions + */ + +#define GLUT_HAS_MULTI 1 + +FGAPI void FGAPIENTRY glutMultiEntryFunc( void (* callback)( int, int ) ); +FGAPI void FGAPIENTRY glutMultiButtonFunc( void (* callback)( int, int, int, int, int ) ); +FGAPI void FGAPIENTRY glutMultiMotionFunc( void (* callback)( int, int, int ) ); +FGAPI void FGAPIENTRY glutMultiPassiveFunc( void (* callback)( int, int, int ) ); + +/* * Joystick functions, see freeglut_joystick.c */ /* USE OF THESE FUNCTIONS IS DEPRECATED !!!!! */ @@ -151,6 +208,26 @@ void glutJoystickGetMinRange( int ident, float *axes ); void glutJoystickGetMaxRange( int ident, float *axes ); void glutJoystickGetCenter( int ident, float *axes ); +/* + * Initialization functions, see freeglut_init.c + */ +FGAPI void FGAPIENTRY glutInitContextVersion( int majorVersion, int minorVersion ); +FGAPI void FGAPIENTRY glutInitContextFlags( int flags ); +FGAPI void FGAPIENTRY glutInitContextProfile( int profile ); + +/* to get the typedef for va_list */ +#include + +FGAPI void FGAPIENTRY glutInitErrorFunc( void (* vError)( const char *fmt, va_list ap ) ); +FGAPI void FGAPIENTRY glutInitWarningFunc( void (* vWarning)( const char *fmt, va_list ap ) ); + +/* + * GLUT API macro definitions -- the display mode definitions + */ +#define GLUT_CAPTIONLESS 0x0400 +#define GLUT_BORDERLESS 0x0800 +#define GLUT_SRGB 0x1000 + #ifdef __cplusplus } #endif