X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Ffreeglut_internal.h;h=96326c715d7c13c2ce41b11a095773ba592e261b;hb=1c741248e3ad67f24a57742cb5cc511f0ee87805;hp=17509adb00a97e658e504db0cfaa5618c0b13cb5;hpb=2c9161e532490d2623896ad4720fb5e7bb6480bb;p=freeglut diff --git a/src/freeglut_internal.h b/src/freeglut_internal.h index 17509ad..96326c7 100644 --- a/src/freeglut_internal.h +++ b/src/freeglut_internal.h @@ -28,7 +28,7 @@ #ifndef FREEGLUT_INTERNAL_H #define FREEGLUT_INTERNAL_H -#ifdef HAVE_CONFIG_H +#if HAVE_CONFIG_H # include "config.h" #endif @@ -73,7 +73,6 @@ #include #include #include -#include #if HAVE_SYS_TYPES_H # include #endif @@ -361,6 +360,14 @@ struct tagSFG_WindowState /* + * A generic function pointer. We should really use the GLUTproc type + * defined in freeglut_ext.h, but if we include that header in this file + * a bunch of other stuff (font-related) blows up! + */ +typedef void (*SFG_Proc)(); + + +/* * SET_WCB() is used as: * * SET_WCB( window, Visibility, func ); @@ -381,8 +388,8 @@ struct tagSFG_WindowState do \ { \ if( FETCH_WCB( window, cbname ) != func ) \ - (((window).CallBacks[CB_ ## cbname]) = (void *) func); \ -} while( 0 ) \ + (((window).CallBacks[CB_ ## cbname]) = (SFG_Proc) func); \ +} while( 0 ) /* * FETCH_WCB() is used as: @@ -533,7 +540,7 @@ struct tagSFG_Window SFG_Context Window; /* Window and OpenGL context */ SFG_WindowState State; /* The window state */ - void *CallBacks[ TOTAL_CALLBACKS ]; /* Array of window callbacks */ + SFG_Proc CallBacks[ TOTAL_CALLBACKS ]; /* Array of window callbacks */ void *UserData ; /* For use by user */ SFG_Menu* Menu[ FREEGLUT_MAX_MENUS ]; /* Menus appended to window */