X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2FCommon%2Ffreeglut_state.c;h=84e2ccdbc24a026c310085d4466c046db5a8d402;hb=e86b0a2f785267775a158a32da02779544960e6e;hp=b134660b3892648469f45cb7803aeef53204d017;hpb=76169d74298feb3c4976af3f0f10376f56aec38d;p=freeglut diff --git a/src/Common/freeglut_state.c b/src/Common/freeglut_state.c index b134660..84e2ccd 100644 --- a/src/Common/freeglut_state.c +++ b/src/Common/freeglut_state.c @@ -43,7 +43,6 @@ extern int fgPlatformGlutGet ( GLenum eWhat ); extern int fgPlatformGlutDeviceGet ( GLenum eWhat ); -extern int fgPlatformGlutLayerGet ( GLenum eWhat ); extern int *fgPlatformGlutGetModeValues(GLenum eWhat, int *size); @@ -291,16 +290,41 @@ int FGAPIENTRY glutLayerGet( GLenum eWhat ) FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutLayerGet" ); /* - * This is easy as layers are not implemented ;-) - * - * XXX Can we merge the UNIX/X11 and WIN32 sections? Or - * XXX is overlay support planned? + * This is easy as layers are not implemented and + * overlay support is not planned. E.g. on Windows, + * overlay requests in PFDs are ignored + * (see iLayerType at http://msdn.microsoft.com/en-us/library/dd368826(v=vs.85).aspx) */ switch( eWhat ) { + case GLUT_OVERLAY_POSSIBLE: + return 0 ; + + case GLUT_LAYER_IN_USE: + return GLUT_NORMAL; + + case GLUT_HAS_OVERLAY: + return 0; + + case GLUT_TRANSPARENT_INDEX: + /* + * Return just anything, which is always defined as zero + * + * XXX HUH? + */ + return 0; + + case GLUT_NORMAL_DAMAGED: + /* XXX Actually I do not know. Maybe. */ + return 0; + + case GLUT_OVERLAY_DAMAGED: + return -1; + default: - return fgPlatformGlutLayerGet( eWhat ); + fgWarning( "glutLayerGet(): missing enum handle %d", eWhat ); + break; } /* And fail. That's good. Programs do love failing. */