glut_fullscrn.c
上传用户:xk288cn
上传日期:2007-05-28
资源大小:4876k
文件大小:2k
源码类别:

GIS编程

开发平台:

Visual C++

  1. /* Copyright (c) Mark J. Kilgard, 1995, 1998. */
  2. /* This program is freely distributable without licensing fees 
  3.    and is provided without guarantee or warrantee expressed or 
  4.    implied. This program is -not- in the public domain. */
  5. #include <stdio.h>  /* SunOS multithreaded assert() needs <stdio.h>.  Lame. */
  6. #include <assert.h>
  7. #if !defined(_WIN32)
  8. #include <X11/Xlib.h>
  9. #include <X11/Xatom.h>
  10. #endif
  11. /* SGI optimization introduced in IRIX 6.3 to avoid X server
  12.    round trips for interning common X atoms. */
  13. #if defined(_SGI_EXTRA_PREDEFINES) && !defined(NO_FAST_ATOMS)
  14. #include <X11/SGIFastAtom.h>
  15. #else
  16. #define XSGIFastInternAtom(dpy,string,fast_name,how) XInternAtom(dpy,string,how)
  17. #endif
  18. #include "glutint.h"
  19. /* CENTRY */
  20. void APIENTRY 
  21. glutFullScreen(void)
  22. {
  23.   assert(!__glutCurrentWindow->parent);
  24.   IGNORE_IN_GAME_MODE();
  25. #if !defined(_WIN32)
  26.   if (__glutMotifHints == None) {
  27.     __glutMotifHints = XSGIFastInternAtom(__glutDisplay, "_MOTIF_WM_HINTS",
  28.       SGI_XA__MOTIF_WM_HINTS, 0);
  29.     if (__glutMotifHints == None) {
  30.       __glutWarning("Could not intern X atom for _MOTIF_WM_HINTS.");
  31.     }
  32.   }
  33. #endif
  34.   __glutCurrentWindow->desiredX = 0;
  35.   __glutCurrentWindow->desiredY = 0;
  36.   __glutCurrentWindow->desiredWidth = __glutScreenWidth;
  37.   __glutCurrentWindow->desiredHeight = __glutScreenHeight;
  38.   __glutCurrentWindow->desiredConfMask |= CWX | CWY | CWWidth | CWHeight;
  39.   __glutPutOnWorkList(__glutCurrentWindow,
  40.     GLUT_CONFIGURE_WORK | GLUT_FULL_SCREEN_WORK);
  41. }
  42. /* ENDCENTRY */