diff options
author | Sven Gothel <[email protected]> | 2011-02-28 05:22:24 +0100 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2011-02-28 05:22:24 +0100 |
commit | 254052b54cebdb957d83e46e377534ef263d6029 (patch) | |
tree | 7ce8240d982303ed078d3fc8c59db5bba5b8ff6b /src/jogl/classes/jogamp/opengl/x11 | |
parent | 3ee26cd01789d0169c5225b3a4e5229e4a1c6676 (diff) |
JOGL GLDrawableFactory: Expose experimental method createProxySurface(..) for new windowing system ad-hoc development.
WARNING: This method may change ro be removed over time!
Diffstat (limited to 'src/jogl/classes/jogamp/opengl/x11')
-rw-r--r-- | src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java b/src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java index 755c078b9..8203a440c 100644 --- a/src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java +++ b/src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java @@ -177,6 +177,7 @@ public class X11GLXDrawableFactory extends GLDrawableFactoryImpl { try { String glXVendorName = GLXUtil.getVendorName(sharedDevice.getHandle()); X11GraphicsScreen sharedScreen = new X11GraphicsScreen(sharedDevice, 0); + if (null == sharedScreen) { throw new GLException("Couldn't create shared screen for device: "+sharedDevice+", idx 0"); } @@ -407,6 +408,15 @@ public class X11GLXDrawableFactory extends GLDrawableFactoryImpl { return ns; } + protected final ProxySurface createProxySurfaceImpl(AbstractGraphicsDevice adevice, long windowHandle, GLCapabilitiesImmutable capsRequested, GLCapabilitiesChooser chooser) { + // FIXME device/windowHandle -> screen ?! + X11GraphicsDevice device = (X11GraphicsDevice) adevice; + X11GraphicsScreen screen = new X11GraphicsScreen(device, 0); + X11GLXGraphicsConfiguration cfg = X11GLXGraphicsConfigurationFactory.chooseGraphicsConfigurationStatic(capsRequested, capsRequested, chooser, screen); + WrappedSurface ns = new WrappedSurface(cfg, windowHandle); + return ns; + } + protected final GLContext createExternalGLContextImpl() { return X11ExternalGLXContext.create(this, null); } |