Alexandre Julliard
101bdf425b
winex11: Use the function table pointer to call dynamically loaded OpenGL functions.
2012-07-18 19:51:09 +02:00
Alexandre Julliard
df91c7bc83
opengl32: Redirect standard OpenGL functions through the TEB function table.
2012-07-18 17:12:29 +02:00
Alexandre Julliard
33ca17e1e9
winex11: Fill a function table with the standard OpenGL functions and store it in the TEB.
2012-07-18 17:11:42 +02:00
Alexandre Julliard
4b0f27f664
winex11: Get rid of the no longer needed drawable rect in the X11 device.
2012-07-12 16:05:37 -05:00
Dmitry Timoshkov
6173e6bfb6
winex11.drv: Avoid conflicting definitions of WINGDIAPI.
2012-07-09 09:59:32 -04:00
Alexandre Julliard
241ab9257c
winex11: Use the correct drawable with the X11DRV_GET_DRAWABLE escape.
2012-07-03 16:56:40 +02:00
Alexandre Julliard
39819d1e8b
winex11: Replace wgl.h by the official wglext.h from the OpenGL registry.
2012-07-02 19:17:41 +02:00
Alexandre Julliard
19fcc230d0
winex11: Move GLX definitions out of wgl.h.
2012-07-02 13:21:54 +02:00
Alexandre Julliard
83be88953b
opengl32: Make the WGL driver context-specific.
2012-06-29 20:41:36 +02:00
Alexandre Julliard
d89f7f2563
opengl32: Move checks of the context thread id to opengl32.
2012-06-29 20:41:35 +02:00
Alexandre Julliard
0045ec9dfb
opengl32: Use proper handles for GL contexts and pass a context pointer to the WGL driver functions.
2012-06-29 20:41:34 +02:00
Alexandre Julliard
e059d565ab
gdi32: Add a null WGL driver.
2012-06-28 18:52:27 +02:00
Alexandre Julliard
6a9dcd51a2
gdi32: Remove the remaining OpenGL entry points from the DC driver.
2012-06-28 18:52:23 +02:00
Alexandre Julliard
855f225498
opengl32: Move wglGetCurrentContext implementation to opengl32.
2012-06-28 18:52:11 +02:00
Alexandre Julliard
edfc7f0de0
opengl32: Move wglGetProcAddress to the WGL driver.
2012-06-28 16:14:55 +02:00
Alexandre Julliard
8a13afedd6
opengl32: Move GetPixelFormat to the WGL driver.
2012-06-28 15:53:14 +02:00
Alexandre Julliard
bbdf77a311
opengl32: Move wglCreateContext to the WGL driver.
2012-06-28 15:47:31 +02:00
Alexandre Julliard
3bcb8057a1
opengl32: Move wglCreateContextAttribsARB to the WGL driver.
2012-06-28 15:07:44 +02:00
Alexandre Julliard
47fe838b15
opengl32: Move wglMakeContextCurrentARB to the WGL driver.
2012-06-28 14:49:49 +02:00
Alexandre Julliard
7a031d9b92
opengl32: Add the concept of a WGL driver.
2012-06-28 14:37:31 +02:00
Alexandre Julliard
db25d4022a
winex11: Simplify wglSetPixelFormatWINE and export it as a standard extension function.
2012-06-28 13:13:01 +02:00
Alexandre Julliard
4a367c5719
winex11: Export wglMakeCurrent and wglMakeContextCurrentARB as standard extension functions.
2012-06-28 01:44:03 +02:00
Alexandre Julliard
bebf84f7a8
winex11: Use the GET_DRAWABLE escape to implement wglMakeContextCurrentARB.
2012-06-28 01:44:03 +02:00
Alexandre Julliard
7f4d3022d0
winex11: Use the GET_DRAWABLE escape to implement wglMakeCurrent.
2012-06-28 01:44:03 +02:00
Alexandre Julliard
3e8b3d0f66
winex11: Add a GET_DRAWABLE escape to mirror the SET_DRAWABLE one.
2012-06-28 01:44:02 +02:00
Alexandre Julliard
81cd178ae1
winex11: Move ChoosePixelFormat implementation to opengl32 and base it on DescribePixelFormat.
2012-06-26 12:24:09 +02:00
Alexandre Julliard
ee21554893
gdi32: Remove OpenGL functions that don't use an HDC from the driver entry points.
2012-06-25 16:25:57 +02:00
Alexandre Julliard
66a5995e11
winex11: Move wglGetCurrentContext and wglGetCurrentDC to the internal OpenGL extension functions.
2012-06-25 16:25:44 +02:00
Alexandre Julliard
08efea0218
winex11: Move wglCopyContext and wglDeleteContext to the internal OpenGL extension functions.
2012-06-25 13:52:10 +02:00
Alexandre Julliard
beeba895d3
winex11: Move wglShareLists to the internal OpenGL extension functions.
2012-06-25 13:52:01 +02:00
Alexandre Julliard
1bca4fb5ae
winex11: Move the wglUseFontBitmaps implementation to opengl32, it's no longer driver-dependent.
2012-06-25 11:58:53 +02:00
Roderick Colenbrander
c754f28f17
winex11.drv: Remove GLX_ATI_render_texture support.
2012-06-25 10:39:02 +02:00
Roderick Colenbrander
9e73f7a6df
winex11.drv: Limit formats to nMaxFormats in wglChoosePixelFormatARB.
2012-06-07 10:36:03 +02:00
Alexandre Julliard
191cd77320
winex11: Remove the support for device-dependent bitmaps.
2012-05-29 21:22:23 +02:00
Alexandre Julliard
93758c43fd
gdi32: Remove the CreateBitmap and DeleteBitmap driver entry points.
2012-05-29 21:06:41 +02:00
Alexandre Julliard
fdc4682e31
gdi32: Remove the CopyBitmap driver entry point.
2012-05-24 22:09:19 +02:00
Alexandre Julliard
f99af0bb8f
winex11: Add a helper to retrieve an image from a pixmap.
2012-05-14 14:17:25 +02:00
Alexandre Julliard
b082b3acba
winex11: Use an intermediate pixmap also for DDBs to handle format mismatches.
2012-05-09 17:37:36 +02:00
Alexandre Julliard
ba7db0998c
winex11: Add support for OpenGL rendering in DIBs using an intermediate pixmap.
2012-05-09 17:37:36 +02:00
Alexandre Julliard
791a46658a
winex11: Store the GL-specific information in the GL driver physdev.
2012-05-08 14:35:44 +02:00
Alexandre Julliard
147174ff1c
winex11: Implement wglGetPbufferDCARB with a DC escape and remove it from the GDI driver interface.
2012-05-08 14:35:44 +02:00
Alexandre Julliard
5f99b59e77
winex11: Add an OpenGL GDI driver.
2012-05-08 14:35:42 +02:00
Alexandre Julliard
00bb726af8
winex11: Use a standard Wine list for the OpenGL context list.
2012-05-07 13:10:22 +02:00
Alexandre Julliard
a708448725
winex11: Define an enum to manage the various types of GL device contexts.
2012-05-07 13:10:18 +02:00
Alexandre Julliard
096757c3dd
winex11: Remove redundant code in ChoosePixelFormat.
2012-05-03 20:44:07 +02:00
Alexandre Julliard
416e79f3e6
winex11: Always store the GL drawable in the device context.
2012-05-03 20:44:07 +02:00
Alexandre Julliard
70f776d3b8
winex11: Update the pixel format through the DCE hook for window DCs to avoid races.
2012-05-03 20:44:01 +02:00
Alexandre Julliard
54170fe867
winex11: Remove support for the no longer used GET_GLX_DRAWABLE escape.
2012-05-03 12:50:27 +02:00
Alexandre Julliard
4a87722144
winex11: Add bounds rectangle tracking to all graphics entry points.
2012-04-18 13:50:56 +02:00
Alexandre Julliard
bb62ddeba7
winex11: Remove support for server-side fonts.
2012-04-18 13:07:17 +02:00
Henri Verbeet
22d3e6dba1
winex11: Use GLX_DONT_CARE instead of ~0 in ConvertAttribWGLtoGLX().
2012-03-28 11:36:26 +02:00
Alexandre Julliard
b88b6b74f0
opengl32: Get rid of the DIB section sync support.
2012-01-10 11:24:12 +01:00
Austin English
abfb9211c8
winex11: Only declare the winediag debug channel if OpenGL is enabled.
2011-10-28 12:44:59 +02:00
Henri Verbeet
dbe058249f
winex11: Print the GL renderer and version when complaining about software / indirect rendering.
2011-10-10 13:40:35 +02:00
Alexandre Julliard
46f1d2a48a
winex11: Remove redundant pixmap prefix in X_PHYSBITMAP field names.
2011-09-26 15:29:28 +02:00
Alexandre Julliard
c7a8ff26d3
gdi32: Graphics driver functions no longer need to be CDECL.
2011-07-13 14:56:12 +02:00
Alexandre Julliard
00647af50b
winex11: Use the HDC from the gdi_physdev structure.
2011-07-08 16:03:59 +02:00
Alexandre Julliard
6c951b7d0d
winex11: Pass a generic PHYSDEV to all graphics entry points.
2011-07-08 15:55:11 +02:00
Matteo Bruni
1e0075cd61
winex11.drv: Take care of the destroyed drawable in wglFlush/wglFinish too.
2011-03-31 12:43:29 +02:00
Matteo Bruni
90608c8ce6
winex11.drv: Don't call glXSwapBuffers if the context or the drawable are invalid.
2011-03-31 12:43:22 +02:00
Matteo Bruni
1902e1cb93
winex11.drv: Fix wglMakeContextCurrent with an invalid drawable.
2011-03-31 12:42:35 +02:00
Matteo Bruni
868974c615
winex11.drv: Don't modify state if glXMakeContextCurrent fails.
2011-03-31 12:42:27 +02:00
Matteo Bruni
716df1c2d2
winex11.drv: Make wglMakeCurrent return the correct error when the drawable is invalid.
2011-03-30 13:28:04 +02:00
Matteo Bruni
77679c4e9c
winex11.drv: Don't modify current state if glXMakeCurrent fails.
2011-03-30 13:28:04 +02:00
Joshua Beck
ddada67538
winex11: Improved error handling in pglXMakeCurrent() call.
2011-03-29 12:23:16 +02:00
Henri Verbeet
727ecc1714
winex11.drv: Allow disabling vertical sync using EXT_swap_control.
...
EXT_swap_control redefines glXSwapIntervalSGI() as glXSwapIntervalEXT() on the
current drawable (if any), and glXSwapIntervalEXT() supports disabling vsync.
2011-03-08 12:28:30 +01:00
Nicholas Niro
7aff865e8e
winex11.drv: Add proper initialization for border_pixel.
2011-02-15 17:01:44 +01:00
Andrew Nguyen
a7346e9fc8
winex11.drv: Enhance the wrapper functions for WGL_EXT_swap_control.
2010-12-27 15:39:41 +01:00
Andrew Nguyen
1579ab0e01
winex11.drv: Set last error to ERROR_BUSY when attempting to delete a cross-thread context in wglDeleteContext.
2010-11-08 18:12:58 +01:00
Andrew Nguyen
c4a8de92c4
winex11.drv: Ensure that the WGL context is removed from the context list in wglDeleteContext.
2010-11-08 18:12:58 +01:00
Gerald Pfeifer
0aa27296d3
winex11.drv: Fix comment for #endif.
2010-09-07 11:23:51 +02:00
Michael Stefaniuc
31e4cf9313
winex11.drv: Remove redundant "not NULL" check of cfgs (coccicheck).
2010-05-18 18:42:08 +02:00
Alexandre Julliard
df6cd82ccf
winex11: Create a window of the appropriate visual to initialize GL info.
2010-05-06 14:57:44 +02:00
Roderick Colenbrander
ab788c7c39
wgl: Make context not current before deleting it.
2010-04-27 12:00:24 -05:00
Roderick Colenbrander
b86787e57c
wgl: Improve wglDeleteContext threading behavior.
2010-04-27 12:00:14 -05:00
Roderick Colenbrander
9eaab2cec1
wgl: Print the fbconfig fmt_id in ConvertPixelFormatWGLtoGLX instead of the meaningless pointer.
2010-04-20 16:24:29 +02:00
Roderick Colenbrander
26862c5ece
wgl: Ignore fbconfigs which are window drawable but which lack a visual.
2010-04-20 16:24:25 +02:00
Alexandre Julliard
3bc0a1099d
winex11: Fix the calling convention of X11DRV_wglCreateContextAttribsARB.
2010-04-07 23:44:14 +02:00
Roderick Colenbrander
22a247047d
wgl: Add more OpenGL diagnosing checks.
2010-03-15 13:28:24 +01:00
Michael Stefaniuc
425cc7e033
winex11.drv: Remove some explicit LPARAM/WPARAM casts.
2009-12-28 12:27:13 +01:00
Alexandre Julliard
10e12c8183
winex11: Only check for fs register corruption on i386.
2009-12-24 12:58:51 +01:00
Alexandre Julliard
e099b80a6f
winex11: Fix a compiler warning.
2009-12-09 13:13:29 +01:00
Roderick Colenbrander
a191184ae9
wgl: Add a direct rendering check to new winediag channel.
2009-12-04 14:34:56 +01:00
Roderick Colenbrander
9a85426389
wgl: Add support for WGL_ARB_create_context_profile which is required for OpenGL 3.2.
2009-11-19 11:04:35 +01:00
Roderick Colenbrander
41f061ea1b
wgl: Add initial WGL_ARB_create_context support.
2009-11-18 11:39:57 +01:00
Roderick Colenbrander
50a8b2a633
wgl: The GLX context creation code isn't needed anymore in wglCopyContext because we always have a GLX context now.
2009-11-17 12:05:40 +01:00
Roderick Colenbrander
f4b88e34ec
wgl: Get rid of delayed GLX context creation. Instead attempt to re-create a context when wglShareLists is called.
2009-11-16 17:42:54 +01:00
Roderick Colenbrander
e7590fcfb5
wgl: Make sure we set a valid value for GLX_DRAWABLE_TYPE. Right now we default to 0 which is illegal.
2009-11-13 13:37:10 +01:00
Roderick Colenbrander
a46bd4bc9f
wgl: None of the WGL_render_texture attribute values makes sense for GLX_X_RENDERABLE, so get rid of it.
2009-11-13 13:36:55 +01:00
Roderick Colenbrander
521598560e
wgl: Fix a violation of the GLX specs in ConvertAttribWGLtoGLX.
...
Nvidia and Mesa ignore GLX_RENDER_TYPE when it is set to an invalid
value like 0 but AMD for instance doesn't, which is legal.
2009-11-12 13:09:11 +01:00
Henri Verbeet
ac14a2eec8
winex11.drv: Properly free "visinfo" in get_formats() (Valgrind).
2009-10-21 16:05:57 +02:00
Roderick Colenbrander
390d3929f2
wgl: Fix usage of non-GLX visual in glXCreateContext.
2009-08-03 15:00:19 +02:00
Detlef Riekenberg
a30624143a
winex11: Get rid of glext.h in remaining locations.
2009-06-22 11:22:02 +02:00
Roderick Colenbrander
28a2646d21
wgl: Get rid of glXQueryDrawable because officially it only works on GLXDrawables.
...
Nvidia allows it to operate on a standard Window too but Mesa and AMD
don't and this isn't needed according to the GLX specs. This prevents
crashes when creating +wgl logs.
2009-06-17 12:04:55 +02:00
Francois Gouget
fa7f46e85a
winex11: Also define X11DRV_OpenGL_Cleanup() when OpenGL is not supported.
2009-05-27 11:10:53 +02:00
Francois Gouget
c642481305
winex11.drv: Replace an strdup() with HeapAlloc() in the OpenGL code.
...
Free the corresponding memory when the library is unloaded.
2009-05-26 14:25:12 +02:00
Roderick Colenbrander
d66ded939c
wgl: Set PFD_GENERIC_FORMAT on bitmap formats instead of PFD_GENERIC_ACCELERATED.
2009-05-20 10:51:20 +02:00
Roderick Colenbrander
f83b299bd2
wgl: Use local pixel format data for WGL_ACCELERATION_ARB.
2009-05-19 11:58:53 +02:00
Roderick Colenbrander
73546edc9f
wgl: Make sure WGL_DRAW_TO_BITMAP_ARB is only seen on our duplicated bitmap-capable formats.
2009-05-18 13:23:34 +02:00
Roderick Colenbrander
2eec8aca02
wgl: Make sure WGL_SUPPORT_GDI_ARB is only seen on formats on which we set it during startup (in get_formats).
2009-05-18 13:22:09 +02:00