/*
- * freeglut_menu.c
+ * fg_menu.c
*
* Pull-down menu creation and handling.
*
* These variables are for rendering the freeglut menu items.
*
* The choices are fore- and background, with and without h for Highlighting.
- * Old GLUT appeared to be system-dependant for its colors (sigh) so we are
+ * Old GLUT appeared to be system-dependent for its colors (sigh) so we are
* too. These variables should be stuffed into global state and initialized
* via the glutInit*() system.
*/
if( menuEntry != menu->ActiveEntry )
{
- menu->Window->State.Redisplay = GL_TRUE;
+ menu->Window->State.WorkMask |= GLUT_DISPLAY_WORK;
if( menu->ActiveEntry )
menu->ActiveEntry->IsActive = GL_FALSE;
}
( !menu->ActiveEntry->SubMenu ||
!menu->ActiveEntry->SubMenu->IsActive ) )
{
- menu->Window->State.Redisplay = GL_TRUE;
+ menu->Window->State.WorkMask |= GLUT_DISPLAY_WORK;
menu->ActiveEntry->IsActive = GL_FALSE;
menu->ActiveEntry = NULL;
}
fgSetWindow( parent_window );
fgStructure.CurrentMenu = active_menu;
- /* Deactivate menu and then call callback (we don't want menu to stay in view while callback is executing) */
+ /* Deactivate menu and then call callback (we don't want menu to stay in view while callback is executing, and user should be able to change menus in callback) */
fgDeactivateMenu( parent_window );
active_menu->Callback( active_entry->ID );
*/
int FGAPIENTRY glutCreateMenu( FGCBMenu callback )
{
- /* The menu object creation code resides in freeglut_structure.c */
+ /* The menu object creation code resides in fg_structure.c */
FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutCreateMenu" );
if (fgState.ActiveMenus)
fgError("Menu manipulation not allowed while menus in use.");
if (fgState.ActiveMenus)
fgError("Menu manipulation not allowed while menus in use.");
- /* The menu object destruction code resides in freeglut_structure.c */
+ /* The menu object destruction code resides in fg_structure.c */
fgDestroyMenu( menu );
}