John Fay: Direct/indirect rendering context change, fix a bug that somebody reported...
[freeglut] / include / GL / freeglut_ext.h
index e5466ed..6a6f1f7 100644 (file)
@@ -1,5 +1,5 @@
-#ifndef  FREEGLUT_EXT_H
-#define  FREEGLUT_EXT_H
+#ifndef  __FREEGLUT_EXT_H__
+#define  __FREEGLUT_EXT_H__
 
 /*
  * freeglut_ext.h
 #define GLUT_ACTION_CONTINUE_EXECUTION           2
 
 /*
+ * Create a new rendering context when the user opens a new window?
+ */
+#define GLUT_CREATE_NEW_CONTEXT                  0
+#define GLUT_USE_CURRENT_CONTEXT                 1
+
+/*
+ * Direct/Indirect rendering context options (has meaning only in Unix/X11)
+ */
+#define GLUT_FORCE_INDIRECT_CONTEXT              0
+#define GLUT_ALLOW_DIRECT_CONTEXT                1
+#define GLUT_TRY_DIRECT_CONTEXT                  2
+#define GLUT_FORCE_DIRECT_CONTEXT                3
+
+/*
  * GLUT API Extension macro definitions -- the glutGet parameters
  */
 #define  GLUT_ACTION_ON_WINDOW_CLOSE        0x01F9
 #define  GLUT_WINDOW_BORDER_WIDTH           0x01FA
 #define  GLUT_WINDOW_HEADER_HEIGHT          0x01FB
 
+#define  GLUT_VERSION                       0x01FC
+
+#define  GLUT_RENDERING_CONTEXT             0x01FD
+#define  GLUT_DIRECT_RENDERING              0x01FE
+
 /*
  * Process loop function, see freeglut_main.c
  */
@@ -56,6 +75,7 @@ FGAPI void    FGAPIENTRY glutLeaveMainLoop( void );
 /*
  * Window-specific callback functions, see freeglut_callbacks.c
  */
+FGAPI void    FGAPIENTRY glutMouseWheelFunc( void (* callback)( int, int, int, int ) );
 FGAPI void    FGAPIENTRY glutCloseFunc( void (* callback)( void ) );
 FGAPI void    FGAPIENTRY glutWMCloseFunc( void (* callback)( void ) );
 /* A. Donev: Also a destruction callback for menus */
@@ -76,16 +96,18 @@ FGAPI void    FGAPIENTRY glutSetMenuData(void* data);
  */
 FGAPI int     FGAPIENTRY glutBitmapHeight( void* font );
 FGAPI GLfloat FGAPIENTRY glutStrokeHeight( void* font );
-FGAPI void    FGAPIENTRY glutBitmapString( void* font, const char *string );
-FGAPI void    FGAPIENTRY glutStrokeString( void* font, const char *string );
+FGAPI void    FGAPIENTRY glutBitmapString( void* font, const unsigned char *string );
+FGAPI void    FGAPIENTRY glutStrokeString( void* font, const unsigned char *string );
 
 /*
  * Geometry functions, see freeglut_geometry.c
  */
 FGAPI void    FGAPIENTRY glutWireRhombicDodecahedron( void );
 FGAPI void    FGAPIENTRY glutSolidRhombicDodecahedron( void );
-FGAPI void    FGAPIENTRY glutWireSierpinskiSponge ( int num_levels, GLfloat offset[3], GLfloat scale ) ;
-FGAPI void    FGAPIENTRY glutSolidSierpinskiSponge ( int num_levels, GLfloat offset[3], GLfloat scale ) ;
+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);
 
 /*
  * Extension functions, see freeglut_ext.c
@@ -99,5 +121,4 @@ FGAPI void * FGAPIENTRY glutGetProcAddress( const char *procName );
 
 /*** END OF FILE ***/
 
-#endif /* FREEGLUT_EXT_H */
-
+#endif /* __FREEGLUT_EXT_H__ */