* Hopefully I did THIS one right (used 'cvs update' to Merge)
[freeglut] / include / GL / freeglut_ext.h
index 2858a36..e5466ed 100644 (file)
 #define GLUT_ACTION_CONTINUE_EXECUTION           2
 
 /*
- * GLUT API macro definitions -- the glutGet parameters
+ * 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
+
 /*
  * Process loop function, see freeglut_main.c
  */
@@ -55,11 +58,18 @@ FGAPI void    FGAPIENTRY glutLeaveMainLoop( void );
  */
 FGAPI void    FGAPIENTRY glutCloseFunc( void (* callback)( void ) );
 FGAPI void    FGAPIENTRY glutWMCloseFunc( void (* callback)( void ) );
+/* A. Donev: Also a destruction callback for menus */
+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 ) ;
+/* A.Donev: User-data manipulation */
+FGAPI void*   FGAPIENTRY glutGetWindowData( void );
+FGAPI void    FGAPIENTRY glutSetWindowData(void* data);
+FGAPI void*   FGAPIENTRY glutGetMenuData( void );
+FGAPI void    FGAPIENTRY glutSetMenuData(void* data);
 
 /*
  * Font stuff, see freeglut_font.c
@@ -77,6 +87,12 @@ 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 ) ;
 
+/*
+ * Extension functions, see freeglut_ext.c
+ */
+FGAPI void * FGAPIENTRY glutGetProcAddress( const char *procName );
+
+
 #ifdef __cplusplus
     }
 #endif