X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Ffreeglut_internal.h;h=a3804bafa073e8c531316319f90505a77ff9aafd;hb=4634982c39857ee13ad0c5fa67b3ad197a37daf1;hp=40045906e097303d54bbc0f1a865cffa2b04aacd;hpb=c969a6321bc21d80fd9b993a6355e84f1bc880b8;p=freeglut diff --git a/src/freeglut_internal.h b/src/freeglut_internal.h index 4004590..a3804ba 100644 --- a/src/freeglut_internal.h +++ b/src/freeglut_internal.h @@ -360,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 ); @@ -380,7 +388,7 @@ struct tagSFG_WindowState do \ { \ if( FETCH_WCB( window, cbname ) != func ) \ - (((window).CallBacks[CB_ ## cbname]) = (void *) func); \ + (((window).CallBacks[CB_ ## cbname]) = (SFG_Proc) func); \ } while( 0 ) /* @@ -506,7 +514,7 @@ struct tagSFG_Menu SFG_MenuEntry *ActiveEntry; /* Currently active entry in the menu */ SFG_Window *Window; /* Window for menu */ - SFG_Window *ParentWindow; /* Window in which the menu is defined */ + SFG_Window *ParentWindow; /* Window in which the menu is invoked */ }; /* This is a menu entry */ @@ -532,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 */ @@ -751,6 +759,9 @@ int glutJoystickGetNumAxes( int ident ); int glutJoystickGetNumButtons( int ident ); int glutJoystickNotWorking( int ident ); +/* Setting the cursor for a given window */ +void fgSetCursor ( SFG_Window *window, int cursorID ); + /* * Helper function to enumerate through all registered windows * and one to enumerate all of a window's subwindows... @@ -791,11 +802,9 @@ SFG_Menu* fgMenuByID( int menuID ); * The menu activation and deactivation the code. This is the meat * of the menu user interface handling code... */ -void fgActivateMenu( SFG_Window* window, int button ); GLboolean fgCheckActiveMenu ( SFG_Window *window, int button, GLboolean pressed, int mouse_x, int mouse_y ); void fgDeactivateMenu( SFG_Window *window ); -void fgDeactivateSubMenu( SFG_MenuEntry *menuEntry ); /* * This function gets called just before the buffers swap, so that @@ -804,12 +813,6 @@ void fgDeactivateSubMenu( SFG_MenuEntry *menuEntry ); */ void fgDisplayMenu( void ); -/* - * Display the mouse cursor using OpenGL calls. The function - * is defined in freeglut_cursor.c file. - */ -void fgDisplayCursor( void ); - /* Elapsed time as per glutGet(GLUT_ELAPSED_TIME). */ long fgElapsedTime( void );