1 /*
2  * This file is part of gtkD.
3  *
4  * gtkD is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License
6  * as published by the Free Software Foundation; either version 3
7  * of the License, or (at your option) any later version, with
8  * some exceptions, please read the COPYING file.
9  *
10  * gtkD 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
13  * GNU Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public License
16  * along with gtkD; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
18  */
19  
20 // generated automatically - do not change
21 // find conversion definition on APILookup.txt
22 // implement new conversion functionalities on the wrap.utils pakage
23 
24 module gtkglc.glgdktypes;
25 
26 
27 public import gtkc.glibtypes;
28 public import gtkc.gdktypes;
29 alias uint VisualID;
30 
31 public enum GdkGLConfigMode
32 {
33 	MODE_RGB = 0,
34 	MODE_RGBA = 0, /+* same as RGB +/
35 	MODE_INDEX = 1 << 0,
36 	MODE_SINGLE = 0,
37 	MODE_DOUBLE = 1 << 1,
38 	MODE_STEREO = 1 << 2,
39 	MODE_ALPHA = 1 << 3,
40 	MODE_DEPTH = 1 << 4,
41 	MODE_STENCIL = 1 << 5,
42 	MODE_ACCUM = 1 << 6,
43 	MODE_MULTISAMPLE = 1 << 7 /+* not supported yet +/
44 }
45 alias GdkGLConfigMode GLConfigMode;
46 
47 public enum GdkGLConfigAttrib
48 {
49 	USE_GL = 1, /+* support GLX rendering +/
50 	BUFFER_SIZE = 2, /+* depth of the color buffer +/
51 	LEVEL = 3, /+* level inn plane stacking +/
52 	RGBA = 4, /+* true if RGBA mode +/
53 	DOUBLEBUFFER = 5, /+* double buffering supported +/
54 	STEREO = 6, /+* stereo buffering supported +/
55 	AUX_BUFFERS = 7, /+* number of aux buffers +/
56 	RED_SIZE = 8, /+* number of red component bits +/
57 	GREEN_SIZE = 9, /+* number of green component bits +/
58 	BLUE_SIZE = 10, /+* number of blue component bits +/
59 	ALPHA_SIZE = 11, /+* number of alpha component bits +/
60 	DEPTH_SIZE = 12, /+* number of depth bits +/
61 	STENCIL_SIZE = 13, /+* number of stencil bits +/
62 	ACCUM_RED_SIZE = 14, /+* number of red accum bits +/
63 	ACCUM_GREEN_SIZE = 15, /+* number of green accum bits +/
64 	ACCUM_BLUE_SIZE = 16, /+* number of blue accum bits +/
65 	ACCUM_ALPHA_SIZE = 17, /+* number of alpha accum bits +/
66 	/+*
67 	 * FBConfig-specific attributes.
68 	 * [ GLX 1.3 and later ]
69 	+/
70 	CONFIG_CAVEAT = 0x20,
71 	X_VISUAL_TYPE = 0x22,
72 	TRANSPARENT_TYPE = 0x23,
73 	TRANSPARENT_INDEX_VALUE = 0x24,
74 	TRANSPARENT_RED_VALUE = 0x25,
75 	TRANSPARENT_GREEN_VALUE = 0x26,
76 	TRANSPARENT_BLUE_VALUE = 0x27,
77 	TRANSPARENT_ALPHA_VALUE = 0x28,
78 	DRAWABLE_TYPE = 0x8010,
79 	RENDER_TYPE = 0x8011,
80 	X_RENDERABLE = 0x8012,
81 	FBCONFIG_ID = 0x8013,
82 	MAX_PBUFFER_WIDTH = 0x8016,
83 	MAX_PBUFFER_HEIGHT = 0x8017,
84 	MAX_PBUFFER_PIXELS = 0x8018,
85 	VISUAL_ID = 0x800B,
86 	SCREEN = 0x800C,
87 	/+*
88 	 * Multisampling configuration attributes.
89 	 * [ GLX 1.4 and later ]
90 	+/
91 	SAMPLE_BUFFERS = 100000,
92 	SAMPLES = 100001
93 }
94 alias GdkGLConfigAttrib GLConfigAttrib;
95 
96 public enum GdkGLConfigCaveat
97 {
98 	DONT_CARE = 0xFFFFFFFF, /+* GDK_GL_DONT_CARE +/
99 	NONE = 0x8000, /+* GDK_GL_NONE +/
100 	GDK_GL_SLOW_CONFIG = 0x8001,
101 	GDK_GL_NON_CONFORMANT_CONFIG = 0x800D
102 }
103 alias GdkGLConfigCaveat GLConfigCaveat;
104 
105 public enum GdkGLVisualType
106 {
107 	TYPE_DONT_CARE = 0xFFFFFFFF, /+* GDK_GL_DONT_CARE +/
108 	GDK_GL_TRUE_COLOR = 0x8002,
109 	GDK_GL_DIRECT_COLOR = 0x8003,
110 	GDK_GL_PSEUDO_COLOR = 0x8004,
111 	GDK_GL_STATIC_COLOR = 0x8005,
112 	GDK_GL_GRAY_SCALE = 0x8006,
113 	GDK_GL_STATIC_GRAY = 0x8007
114 }
115 alias GdkGLVisualType GLVisualType;
116 
117 public enum GdkGLTransparentType
118 {
119 	NONE = 0x8000, /+* GDK_GL_NONE +/
120 	RGB = 0x8008,
121 	INDEX = 0x8009
122 }
123 alias GdkGLTransparentType GLTransparentType;
124 
125 public enum GdkGLDrawableTypeMask
126 {
127 	WINDOW_BIT = 1 << 0, /+* 0x00000001 +/
128 	PIXMAP_BIT = 1 << 1, /+* 0x00000002 +/
129 	PBUFFER_BIT = 1 << 2 /+* 0x00000004 +/
130 }
131 alias GdkGLDrawableTypeMask GLDrawableTypeMask;
132 
133 public enum GdkGLRenderTypeMask
134 {
135 	RGBA_BIT = 1 << 0, /+* 0x00000001 +/
136 	COLOR_INDEX_BIT = 1 << 1 /+* 0x00000002 +/
137 }
138 alias GdkGLRenderTypeMask GLRenderTypeMask;
139 
140 public enum GdkGLBufferMask
141 {
142 	FRONT_LEFT_BUFFER_BIT = 1 << 0, /+* 0x00000001 +/
143 	FRONT_RIGHT_BUFFER_BIT = 1 << 1, /+* 0x00000002 +/
144 	BACK_LEFT_BUFFER_BIT = 1 << 2, /+* 0x00000004 +/
145 	BACK_RIGHT_BUFFER_BIT = 1 << 3, /+* 0x00000008 +/
146 	AUX_BUFFERS_BIT = 1 << 4, /+* 0x00000010 +/
147 	DEPTH_BUFFER_BIT = 1 << 5, /+* 0x00000020 +/
148 	STENCIL_BUFFER_BIT = 1 << 6, /+* 0x00000040 +/
149 	ACCUM_BUFFER_BIT = 1 << 7 /+* 0x00000080 +/
150 }
151 alias GdkGLBufferMask GLBufferMask;
152 
153 public enum GdkGLConfigError
154 {
155 	BAD_SCREEN = 1, /+* screen # is bad +/
156 	BAD_ATTRIBUTE = 2, /+* attribute to get is bad +/
157 	NO_EXTENSION = 3, /+* no glx extension on server +/
158 	BAD_VISUAL = 4, /+* visual # not known by GLX +/
159 	BAD_CONTEXT = 5, /+* returned only by importContext EXT? +/
160 	BAD_VALUE = 6, /+* returned only by glXSwapIntervalSGI? +/
161 	BAD_ENUM = 7 /+* unused? +/
162 }
163 alias GdkGLConfigError GLConfigError;
164 
165 public enum GdkGLRenderType
166 {
167 	RGBA_TYPE = 0x8014,
168 	COLOR_INDEX_TYPE = 0x8015
169 }
170 alias GdkGLRenderType GLRenderType;
171 
172 public enum GdkGLDrawableAttrib
173 {
174 	PRESERVED_CONTENTS = 0x801B,
175 	LARGEST_PBUFFER = 0x801C,
176 	WIDTH = 0x801D,
177 	HEIGHT = 0x801E,
178 	EVENT_MASK = 0x801F
179 }
180 alias GdkGLDrawableAttrib GLDrawableAttrib;
181 
182 public enum GdkGLPbufferAttrib
183 {
184 	PRESERVED_CONTENTS = 0x801B, /+* GDK_GL_PRESERVED_CONTENTS +/
185 	LARGEST_PBUFFER = 0x801C, /+* GDK_GL_LARGEST_PBUFFER +/
186 	HEIGHT = 0x8040,
187 	WIDTH = 0x8041
188 }
189 alias GdkGLPbufferAttrib GLPbufferAttrib;
190 
191 public enum GdkGLEventMask
192 {
193 	PBUFFER_CLOBBER_MASK = 1 << 27 /+* 0x08000000 +/
194 }
195 alias GdkGLEventMask GLEventMask;
196 
197 public enum GdkGLEventType
198 {
199 	DAMAGED = 0x8020,
200 	SAVED = 0x8021
201 }
202 alias GdkGLEventType GLEventType;
203 
204 /**
205  * <<Geometric Object Rendering
206  * X Window System Interaction>>
207  */
208 public enum GdkGLDrawableType
209 {
210 	WINDOW = 0x8022,
211 	PBUFFER = 0x8023
212 }
213 alias GdkGLDrawableType GLDrawableType;
214 
215 
216 /**
217  * Main Gtk struct.
218  */
219 public struct GdkGLConfig{}
220 
221 
222 /**
223  * Main Gtk struct.
224  */
225 public struct GdkGLContext{}
226 
227 
228 /**
229  * Main Gtk struct.
230  */
231 public struct GdkGLDrawable{}
232 
233 
234 /**
235  * Main Gtk struct.
236  */
237 public struct GdkGLPixmap{}
238 
239 
240 /**
241  * Main Gtk struct.
242  */
243 public struct GdkGLWindow{}
244 
245 
246 /*
247  * Returns the GdkGLDrawable held by the pixmap. In fact, this is macro
248  * that casts the result of gdk_pixmap_get_gl_pixmap to GdkGLDrawable.
249  * pixmap:
250  * a GdkGLPixmap.
251  * Returns:
252  * the GdkGLDrawable.
253  * <<Rendering Surface
254  * OpenGL Window>>
255  */
256 // TODO
257 // #define gdk_pixmap_get_gl_drawable(pixmap)
258 
259 /*
260  * Returns the GdkGLDrawable held by the window. In fact, this is macro
261  * that casts the result of gdk_window_get_gl_window to GdkGLDrawable.
262  * window:
263  * a GdkGLWindow.
264  * Returns:
265  * the GdkGLDrawable.
266  * <<OpenGL Pixmap
267  * Font Rendering>>
268  */
269 // TODO
270 // #define gdk_window_get_gl_drawable(window)
271 
272 /*
273  * major:
274  * minor:
275  * micro:
276  */
277 // TODO
278 // #define GDKGLEXT_CHECK_VERSION(major, minor, micro)
279 
280 /*
281  */
282 // void (*GdkGLProc) (void);
283 public alias extern(C) void function() GdkGLProc;