Better implementation of GetCalendarInfo{A,W}, not perfect.
[wine] / dlls / opengl32 / wgl.h
1 /* Window-specific OpenGL functions implementation.
2  *
3  * Copyright (c) 2000 Lionel Ulmer
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18  */
19
20 #ifndef __DLLS_OPENGL32_WGL_H
21 #define __DLLS_OPENGL32_WGL_H
22
23 #include "gdi.h"
24
25 typedef void *HGLRC;
26
27 typedef struct {
28   WORD  nSize; 
29   WORD  nVersion; 
30   DWORD dwFlags; 
31   BYTE  iPixelType; 
32   BYTE  cColorBits; 
33   BYTE  cRedBits; 
34   BYTE  cRedShift; 
35   BYTE  cGreenBits; 
36   BYTE  cGreenShift; 
37   BYTE  cBlueBits; 
38   BYTE  cBlueShift; 
39   BYTE  cAlphaBits; 
40   BYTE  cAlphaShift; 
41   BYTE  cAccumBits; 
42   BYTE  cAccumRedBits; 
43   BYTE  cAccumGreenBits; 
44   BYTE  cAccumBlueBits; 
45   BYTE  cAccumAlphaBits; 
46   BYTE  cDepthBits; 
47   BYTE  cStencilBits; 
48   BYTE  cAuxBuffers; 
49   BYTE  iLayerPlane;
50   BYTE  bReserved; 
51   COLORREF crTransparent; 
52 } LAYERPLANEDESCRIPTOR; 
53 typedef LAYERPLANEDESCRIPTOR* LPLAYERPLANEDESCRIPTOR;
54
55 typedef struct {
56   FLOAT      x; 
57   FLOAT      y; 
58 } POINTFLOAT; 
59
60 typedef struct {
61   FLOAT      gmfBlackBoxX; 
62   FLOAT      gmfBlackBoxY; 
63   POINTFLOAT gmfptGlyphOrigin; 
64   FLOAT      gmfCellIncX; 
65   FLOAT      gmfCellIncY; 
66 } GLYPHMETRICSFLOAT; 
67 typedef GLYPHMETRICSFLOAT *LPGLYPHMETRICSFLOAT;
68
69 HGLRC WINAPI wglCreateContext(HDC hdc) ;
70 HGLRC WINAPI wglCreateLayerContext(HDC hdc,
71                                    int iLayerPlane) ;
72 BOOL WINAPI wglCopyContext(HGLRC hglrcSrc,
73                            HGLRC hglrcDst,
74                            UINT mask) ;
75 BOOL WINAPI wglDeleteContext(HGLRC hglrc) ;
76 BOOL WINAPI wglDescribeLayerPlane(HDC hdc,
77                                   int iPixelFormat,
78                                   int iLayerPlane,
79                                   UINT nBytes,
80                                   LPLAYERPLANEDESCRIPTOR plpd) ;
81 HGLRC WINAPI wglGetCurrentContext(void) ;
82 HDC WINAPI wglGetCurrentDC(void) ;
83 int WINAPI wglGetLayerPaletteEntries(HDC hdc,
84                                      int iLayerPlane,
85                                      int iStart,
86                                      int cEntries,
87                                      const COLORREF *pcr) ;
88 void * WINAPI wglGetProcAddress(LPCSTR  lpszProc) ;
89 BOOL WINAPI wglMakeCurrent(HDC hdc,
90                            HGLRC hglrc) ;
91 BOOL WINAPI wglRealizeLayerPalette(HDC hdc,
92                                    int iLayerPlane,
93                                    BOOL bRealize) ;
94 int WINAPI wglSetLayerPaletteEntries(HDC hdc,
95                                      int iLayerPlane,
96                                      int iStart,
97                                      int cEntries,
98                                      const COLORREF *pcr) ;
99 BOOL WINAPI wglShareLists(HGLRC hglrc1,
100                           HGLRC hglrc2) ;
101 BOOL WINAPI wglSwapLayerBuffers(HDC hdc,
102                                 UINT fuPlanes);
103 BOOL WINAPI wglUseFontBitmaps(HDC hdc,
104                               DWORD first,
105                               DWORD count,
106                               DWORD listBase) ;
107 BOOL WINAPI wglUseFontOutlines(HDC hdc,
108                                DWORD first,
109                                DWORD count,
110                                DWORD listBase,
111                                FLOAT deviation,
112                                FLOAT extrusion,
113                                int format,
114                                LPGLYPHMETRICSFLOAT lpgmf) ;
115
116 #endif /* __DLLS_OPENGL32_WGL_H */
117