/*
- * freeglut_window.c
+ * fg_window.c
*
* Window management methods.
*
*/
void fgSetWindow ( SFG_Window *window )
{
- fgPlatformSetWindow ( window );
+ fgPlatformSetWindow ( window );
fgStructure.CurrentWindow = window;
}
GLboolean sizeUse, int w, int h,
GLboolean gameMode, GLboolean isSubWindow )
{
- fgPlatformOpenWindow( window, title,
- positionUse, x, y,
- sizeUse, w, h,
- gameMode, isSubWindow );
+ fgPlatformOpenWindow( window, title,
+ positionUse, x, y,
+ sizeUse, w, h,
+ gameMode, isSubWindow );
fgSetWindow( window );
+#ifndef EGL_VERSION_1_0
window->Window.DoubleBuffered =
( fgState.DisplayMode & GLUT_DOUBLE ) ? 1 : 0;
-#ifndef EGL_VERSION_1_0 /* No glDrawBuffer/glReadBuffer in GLES */
if ( ! window->Window.DoubleBuffered )
{
glDrawBuffer ( GL_FRONT );
glReadBuffer ( GL_FRONT );
}
+#else
+ /* - EGL is always double-buffered */
+ /* - No glDrawBuffer/glReadBuffer in GLES */
+ window->Window.DoubleBuffered = 1;
#endif
window->Window.attribute_v_coord = -1;
window->Window.attribute_v_normal = -1;
if (fgStructure.GameModeWindow != NULL && fgStructure.GameModeWindow->ID==window->ID)
glutLeaveGameMode();
- fgPlatformCloseWindow ( window );
+ fgPlatformCloseWindow ( window );
}
fgStructure.CurrentWindow->State.WorkMask |= GLUT_VISIBILITY_WORK;
fgStructure.CurrentWindow->State.DesiredVisibility = DesireNormalState;
- fgStructure.CurrentWindow->State.Redisplay = GL_TRUE;
+ fgStructure.CurrentWindow->State.WorkMask |= GLUT_DISPLAY_WORK;
}
/*
fgStructure.CurrentWindow->State.WorkMask |= GLUT_VISIBILITY_WORK;
fgStructure.CurrentWindow->State.DesiredVisibility = DesireHiddenState;
- fgStructure.CurrentWindow->State.Redisplay = GL_FALSE;
+ fgStructure.CurrentWindow->State.WorkMask &= ~GLUT_DISPLAY_WORK;
}
/*
fgStructure.CurrentWindow->State.WorkMask |= GLUT_VISIBILITY_WORK;
fgStructure.CurrentWindow->State.DesiredVisibility = DesireIconicState;
- fgStructure.CurrentWindow->State.Redisplay = GL_FALSE;
+ fgStructure.CurrentWindow->State.WorkMask &= ~GLUT_DISPLAY_WORK;
}
/*
FREEGLUT_EXIT_IF_NO_WINDOW ( "glutSetWindowTitle" );
if( ! fgStructure.CurrentWindow->Parent )
{
- fgPlatformGlutSetWindowTitle ( title );
+ fgPlatformGlutSetWindowTitle ( title );
}
}
if( ! fgStructure.CurrentWindow->Parent )
{
- fgPlatformGlutSetIconTitle ( title );
+ fgPlatformGlutSetIconTitle ( title );
}
}
}
if (!win->State.IsFullscreen)
- win->State.WorkMask |= GLUT_FULL_SCREEN_WORK;
+ win->State.WorkMask |= GLUT_FULL_SCREEN_WORK;
}
/*