From 254052b54cebdb957d83e46e377534ef263d6029 Mon Sep 17 00:00:00 2001
From: Sven Gothel <sgothel@jausoft.com>
Date: Mon, 28 Feb 2011 05:22:24 +0100
Subject: JOGL GLDrawableFactory: Expose experimental method
 createProxySurface(..) for new windowing system ad-hoc development. WARNING:
 This method may change ro be removed over time!

---
 src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

(limited to 'src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java')

diff --git a/src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java b/src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java
index 585590170..e04ced6fa 100644
--- a/src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java
+++ b/src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java
@@ -232,6 +232,21 @@ public abstract class GLDrawableFactoryImpl extends GLDrawableFactory {
                                                               GLCapabilitiesChooser chooser,
                                                               int width, int height);
 
+  public ProxySurface createProxySurface(AbstractGraphicsDevice device, long windowHandle, GLCapabilitiesImmutable capsRequested, GLCapabilitiesChooser chooser) {
+    if(null == device) {
+        throw new GLException("No shared device for requested: "+device);
+    }
+
+    device.lock();
+    try {
+        return createProxySurfaceImpl(device, windowHandle, capsRequested, chooser);
+    } finally {
+        device.unlock();
+    }
+  }  
+  
+  protected abstract ProxySurface createProxySurfaceImpl(AbstractGraphicsDevice device, long windowHandle, GLCapabilitiesImmutable capsRequested, GLCapabilitiesChooser chooser);
+
   //---------------------------------------------------------------------------
   //
   // External GLDrawable construction
-- 
cgit v1.2.3