int g_LeaveGameMode = 0;
int g_InGameMode = 0;
-int g_mainwin, g_sw1, g_sw2, g_gamemodewin;
+int g_mainwin1, g_mainwin2, g_sw1, g_sw2, g_gamemodewin;
/*
* Call this function to have some text drawn at given coordinates
int win = glutGetWindow();
if (g_InGameMode && win!=g_gamemodewin)
- /* Dont draw other windows when in gamemode, those aren't visible
- * anyway. Drawing them continuously anyway can cause flicker trouble
- * on my machine. This only seems to occur when there are child windows
+ /* Don't draw other windows when in gamemode, those aren't visible
+ * anyway. Drawing them continuously nonetheless can cause flicker trouble
+ * on my machine. This only seems to occur only when there are child windows
* among the non-visible windows
*/
return;
*/
glClearColor(0.7f,0.7f,0.7f,1);
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
- glutPostWindowRedisplay(g_mainwin);
+ glutPostWindowRedisplay(g_mainwin2);
}
else if (win==g_sw2)
{
*/
glClearColor(0.3f,0.3f,0.3f,1);
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
- glutPostWindowRedisplay(g_mainwin);
+ glutPostWindowRedisplay(g_mainwin2);
}
else
{
if( g_LeaveGameMode == 1 )
{
/* One could do all this just as well in SampleGameModeKeyboard... */
+ printf("leaving gamemode...\n");
glutLeaveGameMode( );
g_LeaveGameMode = 0;
g_InGameMode = 0;
+ glutPostWindowRedisplay(g_mainwin1);
+ glutPostWindowRedisplay(g_mainwin2);
+ glutPostWindowRedisplay(g_sw1);
+ glutPostWindowRedisplay(g_sw2);
}
}
glutInit( &argc, argv );
glutSetOption(GLUT_ACTION_ON_WINDOW_CLOSE,GLUT_ACTION_GLUTMAINLOOP_RETURNS);
+ glutMenuStatusFunc( SampleMenuStatus );
+ glutIdleFunc( SampleIdle );
subMenuA = glutCreateMenu( SampleMenu );
glutAddMenuEntry( "Sub menu A1 (01)", 1 );
glutAddSubMenu( "Enter sub menu A", subMenuA );
glutAddSubMenu( "Enter sub menu B", subMenuB );
- glutCreateWindow( "Hello world!" );
+ g_mainwin1 = glutCreateWindow( "Hello world!" );
glutDisplayFunc( SampleDisplay );
glutReshapeFunc( SampleReshape );
glutKeyboardFunc( SampleKeyboard );
glutSpecialFunc( SampleSpecial );
- glutIdleFunc( SampleIdle );
glutEntryFunc( SampleEntry );
- glutMenuStatusFunc( SampleMenuStatus );
glutAttachMenu( GLUT_LEFT_BUTTON );
glutInitWindowPosition( 200, 200 );
- g_mainwin = glutCreateWindow( "I am not Jan B." );
+ g_mainwin2 = glutCreateWindow( "I am not Jan B." );
glutDisplayFunc( SampleDisplay );
glutReshapeFunc( SampleReshape );
glutKeyboardFunc( SampleKeyboard );
glutSpecialFunc( SampleSpecial );
- glutIdleFunc( SampleIdle );
glutEntryFunc( SampleEntry );
- glutMenuStatusFunc( SampleMenuStatus );
glutAttachMenu( GLUT_LEFT_BUTTON );
glutSetMenu(subMenuA);
glutAttachMenu( GLUT_RIGHT_BUTTON );
- g_sw1=glutCreateSubWindow(g_mainwin,200,0,100,100);
+ g_sw1=glutCreateSubWindow(g_mainwin2,200,0,100,100);
glutDisplayFunc( SampleDisplay );
glutSetMenu(subMenuB);
glutAttachMenu( GLUT_LEFT_BUTTON );
glutDisplayFunc( SampleDisplay );
glutReshapeFunc( SampleReshape );
glutKeyboardFunc( SampleGameModeKeyboard );
- glutIdleFunc( SampleIdle );
glutEntryFunc( SampleEntry );
- glutMenuStatusFunc( SampleMenuStatus );
glutSetMenu(menuID);
glutAttachMenu( GLUT_LEFT_BUTTON );