home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mesa5.zip / mesa5src.zip / MesaDLL / GL / glutwin32.h < prev    next >
C/C++ Source or Header  |  2000-03-20  |  4KB  |  97 lines

  1. #ifndef __glutwin32_h__
  2. #define __glutwin32_h__
  3.  
  4. /* Copyright (c) Nate Robins, 1997. */
  5.  
  6. /* This program is freely distributable without licensing fees 
  7.    and is provided without guarantee or warrantee expressed or 
  8.    implied. This program is -not- in the public domain. */
  9.  
  10. #include "win32_x11.h"
  11. #include "win32_glx.h"
  12.  
  13. /* We have to undef some things because Microsoft likes to pollute the
  14.    global namespace. */
  15. #undef TRANSPARENT
  16.  
  17. /* Win32 "equivalent" cursors - eventually, the X glyphs should be
  18.    converted to Win32 cursors -- then they will look the same */
  19. #define XC_arrow               IDC_ARROW
  20. #define XC_top_left_arrow      IDC_ARROW
  21. #define XC_hand1               IDC_SIZEALL
  22. #define XC_pirate              IDC_NO
  23. #define XC_question_arrow      IDC_HELP
  24. #define XC_exchange            IDC_NO
  25. #define XC_spraycan            IDC_SIZEALL
  26. #define XC_watch               IDC_WAIT
  27. #define XC_xterm               IDC_IBEAM
  28. #define XC_crosshair           IDC_CROSS
  29. #define XC_sb_v_double_arrow   IDC_SIZENS
  30. #define XC_sb_h_double_arrow   IDC_SIZEWE
  31. #define XC_top_side            IDC_UPARROW
  32. #define XC_bottom_side         IDC_SIZENS
  33. #define XC_left_side           IDC_SIZEWE
  34. #define XC_right_side          IDC_SIZEWE
  35. #define XC_top_left_corner     IDC_SIZENWSE
  36. #define XC_top_right_corner    IDC_SIZENESW
  37. #define XC_bottom_right_corner IDC_SIZENWSE
  38. #define XC_bottom_left_corner  IDC_SIZENESW
  39.  
  40. #define XA_STRING 0
  41.  
  42. /* Private routines from win32_util.c */
  43. #ifndef __CYGWIN32__
  44. extern int gettimeofday(struct timeval* tp, void* tzp);
  45. #endif
  46. extern void *__glutFont(void *font);
  47. extern int __glutGetTransparentPixel(Display *dpy, XVisualInfo *vinfo);
  48. extern void __glutAdjustCoords(Window parent, int *x, int *y, int *width, int *height);
  49.  
  50.  
  51. /* Cygwin B20.1 misses the following definitions */
  52. #ifdef __CYGWIN32__
  53.  
  54. /* from winuser.h */
  55. #define CDS_FULLSCREEN 4
  56.  
  57. /* from mmsystem.h */
  58. #define WINMMAPI __declspec(dllimport)
  59. typedef UINT MMRESULT;
  60.  
  61. #define MM_JOY1MOVE 0x3A0
  62. #define MM_JOY1ZMOVE 0x3A2
  63. #define MM_JOY1BUTTONDOWN 0x3B5
  64. #define MM_JOY1BUTTONUP 0x3B7
  65.  
  66. #define JOYERR_NOERROR 0
  67. #define JOYERR_PARMS 165
  68.  
  69. #define JOY_RETURNALL 0x000000ffl
  70.  
  71. #define JOYSTICKID1 0
  72.  
  73. typedef struct joyinfoex_tag {
  74.     DWORD dwSize;                /* size of structure */
  75.     DWORD dwFlags;               /* flags to indicate what to return */
  76.     DWORD dwXpos;                /* x position */
  77.     DWORD dwYpos;                /* y position */
  78.     DWORD dwZpos;                /* z position */
  79.     DWORD dwRpos;                /* rudder/4th axis position */
  80.     DWORD dwUpos;                /* 5th axis position */
  81.     DWORD dwVpos;                /* 6th axis position */
  82.     DWORD dwButtons;             /* button states */
  83.     DWORD dwButtonNumber;        /* current button number pressed */
  84.     DWORD dwPOV;                 /* point of view state */
  85.     DWORD dwReserved1;           /* reserved for communication between winmm & driver */
  86.     DWORD dwReserved2;           /* reserved for future expansion */
  87. } JOYINFOEX, *PJOYINFOEX, /* NEAR */ *NPJOYINFOEX, /* FAR */ *LPJOYINFOEX;
  88.  
  89. WINMMAPI MMRESULT WINAPI joyGetPosEx( UINT uJoyID, LPJOYINFOEX pji);
  90. WINMMAPI MMRESULT WINAPI joyReleaseCapture( UINT uJoyID);
  91. WINMMAPI MMRESULT WINAPI joySetCapture( HWND hwnd, UINT uJoyID, UINT uPeriod, BOOL fChanged);
  92. WINMMAPI MMRESULT WINAPI joySetThreshold( UINT uJoyID, UINT uThreshold);
  93.  
  94. #endif
  95.  
  96. #endif /* __glutwin32_h__ */
  97.