X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=include%2FGL%2Ffreeglut_ext.h;h=911f224b4405341e2ee3a8e84c9d196a797b794a;hb=39c957d9929f0aba775c4a07a70b6124bc4b50e6;hp=27c6f06b2494272bc9f18cb5aae0644b150c9f0a;hpb=2e8b31927ee505cbfe6bb84c5a64e4fc3c45db8c;p=freeglut diff --git a/include/GL/freeglut_ext.h b/include/GL/freeglut_ext.h index 27c6f06..911f224 100644 --- a/include/GL/freeglut_ext.h +++ b/include/GL/freeglut_ext.h @@ -38,6 +38,12 @@ #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 @@ -77,6 +83,8 @@ #define GLUT_FULL_SCREEN 0x01FF +#define GLUT_SKIP_STALE_MOTION_EVENTS 0x0204 + /* * New tokens for glutInitDisplayMode. * Only one GLUT_AUXn bit may be used at a time. @@ -91,10 +99,12 @@ /* * 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 @@ -102,6 +112,13 @@ #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 */ @@ -113,6 +130,7 @@ 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 @@ -145,12 +163,15 @@ FGAPI void FGAPIENTRY glutStrokeString( void* font, const unsigned char *stri /* * Geometry functions, see freeglut_geometry.c */ +#ifndef GL_ES_VERSION_2_0 FGAPI void FGAPIENTRY glutWireRhombicDodecahedron( void ); FGAPI void FGAPIENTRY glutSolidRhombicDodecahedron( void ); -FGAPI void FGAPIENTRY glutWireSierpinskiSponge ( int num_levels, GLdouble offset[3], GLdouble scale ); -FGAPI void FGAPIENTRY glutSolidSierpinskiSponge ( int num_levels, GLdouble offset[3], GLdouble scale ); -FGAPI void FGAPIENTRY glutWireCylinder( GLdouble radius, GLdouble height, GLint slices, GLint stacks); -FGAPI void FGAPIENTRY glutSolidCylinder( GLdouble radius, GLdouble height, GLint slices, GLint stacks); + +FGAPI void FGAPIENTRY glutWireSierpinskiSponge ( int num_levels, double offset[3], double scale ); +FGAPI void FGAPIENTRY glutSolidSierpinskiSponge ( int num_levels, double offset[3], double scale ); +FGAPI void FGAPIENTRY glutWireCylinder( double radius, double height, GLint slices, GLint stacks); +FGAPI void FGAPIENTRY glutSolidCylinder( double radius, double height, GLint slices, GLint stacks); +#endif /* * Extension functions, see freeglut_ext.c @@ -159,6 +180,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 !!!!! */ @@ -186,6 +218,25 @@ void glutJoystickGetCenter( int ident, float *axes ); */ 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 ) ); + +/* OpenGL >= 2.0 support */ +FGAPI void FGAPIENTRY glutSetVertexAttribCoord3(GLint attrib); +FGAPI void FGAPIENTRY glutSetVertexAttribNormal(GLint attrib); + + +/* + * GLUT API macro definitions -- the display mode definitions + */ +#define GLUT_CAPTIONLESS 0x0400 +#define GLUT_BORDERLESS 0x0800 +#define GLUT_SRGB 0x1000 #ifdef __cplusplus }