#define G_LOG_DOMAIN "freeglut-callbacks"
#include "../include/GL/freeglut.h"
-#include "../include/GL/freeglut_internal.h"
+#include "freeglut_internal.h"
/* -- INTERFACE FUNCTIONS -------------------------------------------------- */
fgStructure.Window->State.JoystickLastPoll =
fgElapsedTime() - fgStructure.Window->State.JoystickPollRate;
- if( fgStructure.Window->State.JoystickLastPoll < 0.0 )
- fgStructure.Window->State.JoystickLastPoll = 0.0;
+ if( fgStructure.Window->State.JoystickLastPoll < 0 )
+ fgStructure.Window->State.JoystickLastPoll = 0;
}
/*
}
/*
+ * Window destruction callbacks
+ */
+void FGAPIENTRY glutCloseFunc( void (* callback)( void ) )
+{
+ SET_CALLBACK( Destroy );
+}
+
+void FGAPIENTRY glutWMCloseFunc( void (* callback)( void ) )
+{
+ glutCloseFunc( callback );
+}
+
+/* A. Donev: Destruction callback for menus */
+void FGAPIENTRY glutMenuDestroyFunc( void (* callback)( void ) )
+{
+ if( fgStructure.Menu == NULL ) return;
+ fgStructure.Menu->Destroy = callback;
+}
+
+/*
* Deprecated version of glutMenuStatusFunc callback setting method
*/
void FGAPIENTRY glutMenuStateFunc( void (* callback)( int ) )
{
- SET_CALLBACK( MenuState );
+ freeglut_assert_ready;
+
+ fgState.MenuStateCallback = callback;
}
/*
*/
void FGAPIENTRY glutMenuStatusFunc( void (* callback)( int, int, int ) )
{
- SET_CALLBACK( MenuStatus );
+ freeglut_assert_ready;
+
+ fgState.MenuStatusCallback = callback;
}
/*