X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=freeglut-1.3%2Ffreeglut_internal.h;h=5b9df43bd12ef321f644a8d59e245a0c632ce2ca;hb=a351855ee6b2ec6f477635a367c745d733219c3e;hp=bb9308074a24d4469832560820a1a0697856405c;hpb=4c26f132450ad50c9b5ccf43f143ff26d53722fd;p=freeglut diff --git a/freeglut-1.3/freeglut_internal.h b/freeglut-1.3/freeglut_internal.h index bb93080..5b9df43 100644 --- a/freeglut-1.3/freeglut_internal.h +++ b/freeglut-1.3/freeglut_internal.h @@ -28,6 +28,11 @@ #ifndef FREEGLUT_INTERNAL_H #define FREEGLUT_INTERNAL_H +/* XXX Update these for each release! */ +#define VERSION_MAJOR 1 +#define VERSION_MINOR 4 +#define VERSION_PATCH 0 + /* * Freeglut is meant to be available under all Unix/X11 and Win32 platforms. */ @@ -119,8 +124,6 @@ typedef void (* FGCBmotion )( int, int ); typedef void (* FGCBpassive )( int, int ); typedef void (* FGCBentry )( int ); typedef void (* FGCBwindowStatus )( int ); -typedef void (* FGCBmenuState )( int ); -typedef void (* FGCBmenuStatus )( int, int, int ); typedef void (* FGCBselect )( int, int, int ); typedef void (* FGCBjoystick )( unsigned int, int, int, int ); typedef void (* FGCBkeyboardUp )( unsigned char, int, int ); @@ -140,6 +143,8 @@ typedef void (* FGCBdestroy )( void ); */ typedef void (* FGCBidle )( void ); typedef void (* FGCBtimer )( int ); +typedef void (* FGCBmenuState )( int ); +typedef void (* FGCBmenuStatus )( int, int, int ); /* * The callback used when creating/using menus @@ -220,6 +225,10 @@ struct tagSFG_State GLboolean IgnoreKeyRepeat; /* Whether to ignore key repeat... */ + GLuint FPSInterval; /* Interval between FPS printfs */ + GLuint SwapCount; /* Count of glutSwapBuffer calls */ + GLuint SwapTime; /* Time of last SwapBuffers */ + SFG_Time Time; /* The time that glutInit was called */ SFG_List Timers; /* The freeglut timer hooks */ @@ -375,9 +384,11 @@ typedef struct tagSFG_Menu SFG_Menu; struct tagSFG_Menu { SFG_Node Node; + void *UserData ; /* A. Donev: User data passed back at callback */ int ID; /* The global menu ID */ SFG_List Entries; /* The menu entries list */ FGCBmenu Callback; /* The menu callback */ + FGCBdestroy Destroy; /* A. Donev: Destruction callback */ GLboolean IsActive; /* Is the menu selected? */ int Width; /* Menu box width in pixels */ int Height; /* Menu box height in pixels */ @@ -400,7 +411,7 @@ struct tagSFG_MenuEntry }; /* - * A window, making part of FreeGLUT windows hierarchy. Should be kept portable. + * A window, making part of freeglut windows hierarchy. Should be kept portable. */ typedef struct tagSFG_Window SFG_Window; struct tagSFG_Window @@ -411,6 +422,7 @@ struct tagSFG_Window SFG_Context Window; /* Window and OpenGL context */ SFG_WindowState State; /* The window state */ SFG_WindowCallbacks Callbacks; /* The window callbacks */ + void *UserData ; /* A. Donev: A pointer to user data used in rendering */ SFG_Menu* Menu[ FREEGLUT_MAX_MENUS ]; /* Menus appended to window */ SFG_Menu* ActiveMenu; /* The window's active menu */