aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes
diff options
context:
space:
mode:
Diffstat (limited to 'src/jogl/classes')
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/audio/windows/waveout/Audio.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/audio/windows/waveout/Mixer.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/audio/windows/waveout/SoundBuffer.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/audio/windows/waveout/TestSpatialization.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/audio/windows/waveout/Track.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/audio/windows/waveout/Vec3f.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/DesktopGLDynamicLibraryBundleInfo.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/DesktopGLDynamicLookupHelper.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/GLBufferSizeTracker.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/GLBufferStateTracker.java0
-rw-r--r--src/jogl/classes/com/jogamp/opengl/impl/GLContextImpl.java2
-rw-r--r--src/jogl/classes/com/jogamp/opengl/impl/GLDrawableHelper.java141
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/GLDynamicLibraryBundleInfo.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/GLDynamicLookupHelper.java0
-rw-r--r--src/jogl/classes/com/jogamp/opengl/impl/GLPbufferImpl.java10
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/GLStateTracker.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/GLWorkerThread.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/ProjectFloat.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/awt/AWTThreadingPlugin.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/awt/Java2D.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/egl/EGLContext.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDrawable.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDrawableFactory.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDynamicLibraryBundleInfo.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/egl/EGLES1DynamicLibraryBundleInfo.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/egl/EGLES2DynamicLibraryBundleInfo.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/egl/EGLExternalContext.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/egl/EGLOnscreenContext.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/egl/EGLPbufferContext.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/gl2/ProjectDouble.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/gl2/fixme/GLObjectTracker.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/Glue.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2Backend.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2CurveEvaluator.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2SurfaceEvaluator.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GLUgl2nurbsImpl.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Arc.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcSdirSorter.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcTdirSorter.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcTesselator.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Backend.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/BezierArc.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Bin.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Breakpt.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfArcs.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfBreakpts.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfFloats.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfQuiltspecs.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Curve.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CurveEvaluator.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Curvelist.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/DisplayList.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Flist.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Knotspec.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Knotvector.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Mapdesc.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Maplist.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/NurbsConsts.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_curve.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_nurbscurve.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_nurbssurface.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_pwlcurve.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_surface.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_trim.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Patch.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Patchlist.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Property.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Pspec.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/PwlArc.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Quilt.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Quiltspec.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/README.txt0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Renderhints.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Splinespec.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Subdivider.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/SurfaceEvaluator.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/TrimVertex.java0
-rw-r--r--src/jogl/classes/com/jogamp/opengl/impl/macosx/cgl/MacOSXCGLDrawableFactory.java4
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsExternalWGLContext.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsExternalWGLDrawable.java0
-rw-r--r--src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsWGLDrawableFactory.java4
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11ExternalGLXContext.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11ExternalGLXDrawable.java0
-rw-r--r--src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11GLXDrawableFactory.java4
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/Animator.java20
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/FBObject.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/FPSAnimator.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/FileUtil.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/GLBuffers.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/Gamma.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/StreamUtil.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/TGAWriter.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/awt/ImageUtil.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/awt/Overlay.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/awt/Screenshot.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/awt/TextRenderer.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/awt/TextureRenderer.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/gl2/TileRenderer.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/FixedFuncHook.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColor.bfpbin1108 -> 1108 bytes
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColor.bvpbin2344 -> 2344 bytes
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColorLight.bvpbin8787 -> 8787 bytes
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColorTexture.bfpbin2392 -> 2392 bytes
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShader.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShaderNVidia.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/packrect/BackingStoreManager.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/packrect/Level.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/packrect/LevelSet.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/packrect/Rect.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/packrect/RectVisitor.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/packrect/RectanglePacker.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/packrect/package.html0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/Texture.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/TextureCoords.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/TextureData.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java.javame_cdc_fp0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java.javase0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/awt/AWTTextureData.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/spi/DDSImage.java.javame_cdc_fp0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/spi/DDSImage.java.javase0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/spi/LEDataInputStream.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/spi/LEDataOutputStream.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/spi/SGIImage.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/spi/TGAImage.java.javame_cdc_fp0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/spi/TGAImage.java.javase0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/spi/TextureProvider.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/com/jogamp/opengl/util/texture/spi/TextureWriter.java0
-rw-r--r--src/jogl/classes/javax/media/opengl/GLAutoDrawable.java100
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/javax/media/opengl/Threading.java0
-rw-r--r--src/jogl/classes/javax/media/opengl/awt/GLCanvas.java19
-rw-r--r--src/jogl/classes/javax/media/opengl/awt/GLJPanel.java13
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/javax/media/opengl/glu/GLUnurbs.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/javax/media/opengl/glu/GLUquadric.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/javax/media/opengl/glu/GLUtessellator.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/javax/media/opengl/glu/GLUtessellatorCallback.java0
-rw-r--r--[-rwxr-xr-x]src/jogl/classes/javax/media/opengl/glu/GLUtessellatorCallbackAdapter.java0
137 files changed, 225 insertions, 92 deletions
diff --git a/src/jogl/classes/com/jogamp/audio/windows/waveout/Audio.java b/src/jogl/classes/com/jogamp/audio/windows/waveout/Audio.java
index 2b51be164..2b51be164 100755..100644
--- a/src/jogl/classes/com/jogamp/audio/windows/waveout/Audio.java
+++ b/src/jogl/classes/com/jogamp/audio/windows/waveout/Audio.java
diff --git a/src/jogl/classes/com/jogamp/audio/windows/waveout/Mixer.java b/src/jogl/classes/com/jogamp/audio/windows/waveout/Mixer.java
index 60972873e..60972873e 100755..100644
--- a/src/jogl/classes/com/jogamp/audio/windows/waveout/Mixer.java
+++ b/src/jogl/classes/com/jogamp/audio/windows/waveout/Mixer.java
diff --git a/src/jogl/classes/com/jogamp/audio/windows/waveout/SoundBuffer.java b/src/jogl/classes/com/jogamp/audio/windows/waveout/SoundBuffer.java
index c45430d23..c45430d23 100755..100644
--- a/src/jogl/classes/com/jogamp/audio/windows/waveout/SoundBuffer.java
+++ b/src/jogl/classes/com/jogamp/audio/windows/waveout/SoundBuffer.java
diff --git a/src/jogl/classes/com/jogamp/audio/windows/waveout/TestSpatialization.java b/src/jogl/classes/com/jogamp/audio/windows/waveout/TestSpatialization.java
index 78fb3493f..78fb3493f 100755..100644
--- a/src/jogl/classes/com/jogamp/audio/windows/waveout/TestSpatialization.java
+++ b/src/jogl/classes/com/jogamp/audio/windows/waveout/TestSpatialization.java
diff --git a/src/jogl/classes/com/jogamp/audio/windows/waveout/Track.java b/src/jogl/classes/com/jogamp/audio/windows/waveout/Track.java
index b57bf1dc6..b57bf1dc6 100755..100644
--- a/src/jogl/classes/com/jogamp/audio/windows/waveout/Track.java
+++ b/src/jogl/classes/com/jogamp/audio/windows/waveout/Track.java
diff --git a/src/jogl/classes/com/jogamp/audio/windows/waveout/Vec3f.java b/src/jogl/classes/com/jogamp/audio/windows/waveout/Vec3f.java
index 1afdaf081..1afdaf081 100755..100644
--- a/src/jogl/classes/com/jogamp/audio/windows/waveout/Vec3f.java
+++ b/src/jogl/classes/com/jogamp/audio/windows/waveout/Vec3f.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/DesktopGLDynamicLibraryBundleInfo.java b/src/jogl/classes/com/jogamp/opengl/impl/DesktopGLDynamicLibraryBundleInfo.java
index 57a69af4c..57a69af4c 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/DesktopGLDynamicLibraryBundleInfo.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/DesktopGLDynamicLibraryBundleInfo.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/DesktopGLDynamicLookupHelper.java b/src/jogl/classes/com/jogamp/opengl/impl/DesktopGLDynamicLookupHelper.java
index 4aeea9d42..4aeea9d42 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/DesktopGLDynamicLookupHelper.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/DesktopGLDynamicLookupHelper.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/GLBufferSizeTracker.java b/src/jogl/classes/com/jogamp/opengl/impl/GLBufferSizeTracker.java
index b4237501e..b4237501e 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/GLBufferSizeTracker.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/GLBufferSizeTracker.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/GLBufferStateTracker.java b/src/jogl/classes/com/jogamp/opengl/impl/GLBufferStateTracker.java
index 05b2a2fa9..05b2a2fa9 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/GLBufferStateTracker.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/GLBufferStateTracker.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/GLContextImpl.java b/src/jogl/classes/com/jogamp/opengl/impl/GLContextImpl.java
index 54d9b4e80..9fcddbbfa 100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/GLContextImpl.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/GLContextImpl.java
@@ -641,7 +641,7 @@ public abstract class GLContextImpl extends GLContext {
//
private Object createInstance(GLProfile glp, String suffix, Class[] cstrArgTypes, Object[] cstrArgs) {
- return ReflectionUtil.createInstance(glp.getGLImplBaseClassName()+suffix, getClass().getClassLoader(), cstrArgTypes, cstrArgs);
+ return ReflectionUtil.createInstance(glp.getGLImplBaseClassName()+suffix, cstrArgTypes, cstrArgs, getClass().getClassLoader());
}
/** Create the GL for this context. */
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/GLDrawableHelper.java b/src/jogl/classes/com/jogamp/opengl/impl/GLDrawableHelper.java
index 8fefe149e..1e954af1d 100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/GLDrawableHelper.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/GLDrawableHelper.java
@@ -46,75 +46,123 @@ import javax.media.opengl.*;
methods to be able to share it between GLCanvas and GLJPanel. */
public class GLDrawableHelper {
- private volatile List listeners = new ArrayList();
private static final boolean DEBUG = Debug.debug("GLDrawableHelper");
private static final boolean VERBOSE = Debug.verbose();
- private static final boolean NVIDIA_CRASH_WORKAROUND = Debug.isPropertyDefined("jogl.nvidia.crash.workaround", true);
+ private Object listenersLock = new Object();
+ private List listeners = new ArrayList();
+ private Set listenersToBeInit = new HashSet();
private boolean autoSwapBufferMode = true;
+ private Object glRunnablesLock = new Object();
private ArrayList glRunnables = new ArrayList(); // one shot GL tasks
+ private Thread animatorThread = null; // default
public GLDrawableHelper() {
}
- public synchronized String toString() {
+ public String toString() {
StringBuffer sb = new StringBuffer();
- sb.append("GLEventListeners num "+listeners.size()+" [");
- for (Iterator iter = listeners.iterator(); iter.hasNext(); ) {
- sb.append(iter.next()+", ");
+ synchronized(listenersLock) {
+ sb.append("GLEventListeners num "+listeners.size()+" [");
+ for (Iterator iter = listeners.iterator(); iter.hasNext(); ) {
+ Object l = iter.next();
+ sb.append(l);
+ sb.append("[init ");
+ sb.append( !listenersToBeInit.contains(l) );
+ sb.append("], ");
+ }
}
sb.append("]");
return sb.toString();
}
- public synchronized void addGLEventListener(GLEventListener listener) {
+ public void addGLEventListener(GLEventListener listener) {
addGLEventListener(-1, listener);
}
- public synchronized void addGLEventListener(int index, GLEventListener listener) {
- if(0>index) {
- index = listeners.size();
+ public void addGLEventListener(int index, GLEventListener listener) {
+ synchronized(listenersLock) {
+ if(0>index) {
+ index = listeners.size();
+ }
+ listenersToBeInit.add(listener);
+ listeners.add(index, listener);
}
- List newListeners = (List) ((ArrayList) listeners).clone();
- newListeners.add(index, listener);
- listeners = newListeners;
}
- public synchronized void removeGLEventListener(GLEventListener listener) {
- List newListeners = (List) ((ArrayList) listeners).clone();
- newListeners.remove(listener);
- listeners = newListeners;
+ public void removeGLEventListener(GLEventListener listener) {
+ synchronized(listenersLock) {
+ listeners.remove(listener);
+ listenersToBeInit.remove(listener);
+ }
}
- public synchronized void dispose(GLAutoDrawable drawable) {
- for (Iterator iter = listeners.iterator(); iter.hasNext(); ) {
- ((GLEventListener) iter.next()).dispose(drawable);
+ public void dispose(GLAutoDrawable drawable) {
+ synchronized(listenersLock) {
+ for (Iterator iter = listeners.iterator(); iter.hasNext(); ) {
+ GLEventListener listener = (GLEventListener) iter.next() ;
+ listener.dispose(drawable);
+ listenersToBeInit.add(listener);
+ }
}
}
+ private final boolean init(GLEventListener l, GLAutoDrawable drawable, boolean sendReshape) {
+ if(listenersToBeInit.remove(l)) {
+ l.init(drawable);
+ if(sendReshape) {
+ reshape(l, drawable, 0, 0, drawable.getWidth(), drawable.getHeight(), true /* setViewport */);
+ }
+ return true;
+ }
+ return false;
+ }
+
public void init(GLAutoDrawable drawable) {
- for (Iterator iter = listeners.iterator(); iter.hasNext(); ) {
- ((GLEventListener) iter.next()).init(drawable);
+ synchronized(listenersLock) {
+ for (Iterator iter = listeners.iterator(); iter.hasNext(); ) {
+ GLEventListener listener = (GLEventListener) iter.next() ;
+ if ( ! init( listener, drawable, false ) ) {
+ throw new GLException("GLEventListener "+listener+" already initialized: "+drawable);
+ }
+ }
}
}
public void display(GLAutoDrawable drawable) {
- for (Iterator iter = listeners.iterator(); iter.hasNext(); ) {
- ((GLEventListener) iter.next()).display(drawable);
+ synchronized(listenersLock) {
+ for (Iterator iter = listeners.iterator(); iter.hasNext(); ) {
+ GLEventListener listener = (GLEventListener) iter.next() ;
+ // GLEventListener may need to be init,
+ // in case this one is added after the realization of the GLAutoDrawable
+ init( listener, drawable, true ) ;
+ listener.display(drawable);
+ }
}
execGLRunnables(drawable);
}
- public void reshape(GLAutoDrawable drawable,
- int x, int y, int width, int height) {
- for (Iterator iter = listeners.iterator(); iter.hasNext(); ) {
- ((GLEventListener) iter.next()).reshape(drawable, x, y, width, height);
+ private final void reshape(GLEventListener listener, GLAutoDrawable drawable,
+ int x, int y, int width, int height, boolean setViewport) {
+ if(setViewport) {
+ drawable.getGL().glViewport(x, y, width, height);
+ }
+ listener.reshape(drawable, x, y, width, height);
+ }
+
+ public void reshape(GLAutoDrawable drawable, int x, int y, int width, int height) {
+ synchronized(listenersLock) {
+ int i=0;
+ for (Iterator iter = listeners.iterator(); iter.hasNext(); i++) {
+ reshape((GLEventListener) iter.next(), drawable, x, y, width, height, 0==i);
+ }
}
}
private void execGLRunnables(GLAutoDrawable drawable) {
if(glRunnables.size()>0) {
+ // swap one-shot list asap
ArrayList _glRunnables = null;
- synchronized(glRunnables) {
+ synchronized(glRunnablesLock) {
if(glRunnables.size()>0) {
_glRunnables = glRunnables;
glRunnables = new ArrayList();
@@ -128,23 +176,38 @@ public class GLDrawableHelper {
}
}
- private void invokeLater(GLRunnable glRunnable) {
- synchronized(glRunnables) {
- glRunnables.add(glRunnable);
- glRunnables.notifyAll();
+ public void setAnimator(Thread animator) throws GLException {
+ synchronized(glRunnablesLock) {
+ if(animator!=animatorThread && null!=animator && null!=animatorThread) {
+ throw new GLException("Trying to register animator thread "+animator+", where "+animatorThread+" is already registered. Unregister first.");
+ }
+ animatorThread = animator;
+ }
+ }
+
+ public Thread getAnimator() {
+ synchronized(glRunnablesLock) {
+ return animatorThread;
}
}
- public void invoke(boolean wait, GLRunnable glRunnable) {
- if(glRunnable == null) {
+ public void invoke(GLAutoDrawable drawable, boolean wait, GLRunnable glRunnable) {
+ if( null == drawable || null == glRunnable ) {
return;
}
- Object lock = new Object();
- GLRunnableTask rTask = new GLRunnableTask(glRunnable, wait?lock:null/*, true*/);
Throwable throwable = null;
+ Object lock = new Object();
+ GLRunnableTask rTask = null;
synchronized(lock) {
- invokeLater(rTask);
- if( wait ) {
+ boolean callDisplay;
+ synchronized(glRunnablesLock) {
+ callDisplay = null == animatorThread || animatorThread == Thread.currentThread() ;
+ rTask = new GLRunnableTask(glRunnable, ( !callDisplay && wait ) ? lock : null);
+ glRunnables.add(rTask);
+ }
+ if( callDisplay ) {
+ drawable.display();
+ } else if( wait ) {
try {
lock.wait();
} catch (InterruptedException ie) {
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/GLDynamicLibraryBundleInfo.java b/src/jogl/classes/com/jogamp/opengl/impl/GLDynamicLibraryBundleInfo.java
index dd196c4a1..dd196c4a1 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/GLDynamicLibraryBundleInfo.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/GLDynamicLibraryBundleInfo.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/GLDynamicLookupHelper.java b/src/jogl/classes/com/jogamp/opengl/impl/GLDynamicLookupHelper.java
index 89dbb4a78..89dbb4a78 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/GLDynamicLookupHelper.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/GLDynamicLookupHelper.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/GLPbufferImpl.java b/src/jogl/classes/com/jogamp/opengl/impl/GLPbufferImpl.java
index 071ac1378..c2efb3f4e 100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/GLPbufferImpl.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/GLPbufferImpl.java
@@ -138,8 +138,16 @@ public class GLPbufferImpl implements GLPbuffer {
drawableHelper.removeGLEventListener(listener);
}
+ public void setAnimator(Thread animator) {
+ drawableHelper.setAnimator(animator);
+ }
+
+ public Thread getAnimator() {
+ return drawableHelper.getAnimator();
+ }
+
public void invoke(boolean wait, GLRunnable glRunnable) {
- drawableHelper.invoke(wait, glRunnable);
+ drawableHelper.invoke(this, wait, glRunnable);
}
public void setContext(GLContext ctx) {
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/GLStateTracker.java b/src/jogl/classes/com/jogamp/opengl/impl/GLStateTracker.java
index 9d896b7f8..9d896b7f8 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/GLStateTracker.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/GLStateTracker.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/GLWorkerThread.java b/src/jogl/classes/com/jogamp/opengl/impl/GLWorkerThread.java
index 768eea3f7..768eea3f7 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/GLWorkerThread.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/GLWorkerThread.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/ProjectFloat.java b/src/jogl/classes/com/jogamp/opengl/impl/ProjectFloat.java
index ab277e704..ab277e704 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/ProjectFloat.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/ProjectFloat.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/awt/AWTThreadingPlugin.java b/src/jogl/classes/com/jogamp/opengl/impl/awt/AWTThreadingPlugin.java
index 07bf2f2db..07bf2f2db 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/awt/AWTThreadingPlugin.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/awt/AWTThreadingPlugin.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/awt/Java2D.java b/src/jogl/classes/com/jogamp/opengl/impl/awt/Java2D.java
index b871c66a7..b871c66a7 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/awt/Java2D.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/awt/Java2D.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLContext.java b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLContext.java
index 5671b033d..5671b033d 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLContext.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLContext.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDrawable.java b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDrawable.java
index 7eeb19141..7eeb19141 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDrawable.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDrawable.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDrawableFactory.java b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDrawableFactory.java
index 72498a7af..72498a7af 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDrawableFactory.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDrawableFactory.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDynamicLibraryBundleInfo.java b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDynamicLibraryBundleInfo.java
index 675be64b5..675be64b5 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDynamicLibraryBundleInfo.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLDynamicLibraryBundleInfo.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLES1DynamicLibraryBundleInfo.java b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLES1DynamicLibraryBundleInfo.java
index aad25edc4..aad25edc4 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLES1DynamicLibraryBundleInfo.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLES1DynamicLibraryBundleInfo.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLES2DynamicLibraryBundleInfo.java b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLES2DynamicLibraryBundleInfo.java
index 9691b2bd0..9691b2bd0 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLES2DynamicLibraryBundleInfo.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLES2DynamicLibraryBundleInfo.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLExternalContext.java b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLExternalContext.java
index ae8b5bf70..ae8b5bf70 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLExternalContext.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLExternalContext.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLOnscreenContext.java b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLOnscreenContext.java
index cb8b01d8d..cb8b01d8d 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLOnscreenContext.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLOnscreenContext.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLPbufferContext.java b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLPbufferContext.java
index 5c634b9bd..5c634b9bd 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLPbufferContext.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/egl/EGLPbufferContext.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/gl2/ProjectDouble.java b/src/jogl/classes/com/jogamp/opengl/impl/gl2/ProjectDouble.java
index 98cc3f323..98cc3f323 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/gl2/ProjectDouble.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/gl2/ProjectDouble.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/gl2/fixme/GLObjectTracker.java b/src/jogl/classes/com/jogamp/opengl/impl/gl2/fixme/GLObjectTracker.java
index 3e3b6ae87..3e3b6ae87 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/gl2/fixme/GLObjectTracker.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/gl2/fixme/GLObjectTracker.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/Glue.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/Glue.java
index 7c360c574..7c360c574 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/Glue.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/Glue.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2Backend.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2Backend.java
index 42ddeea50..42ddeea50 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2Backend.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2Backend.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2CurveEvaluator.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2CurveEvaluator.java
index adb8c51d8..adb8c51d8 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2CurveEvaluator.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2CurveEvaluator.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2SurfaceEvaluator.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2SurfaceEvaluator.java
index 393601ff7..393601ff7 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2SurfaceEvaluator.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GL2SurfaceEvaluator.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GLUgl2nurbsImpl.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GLUgl2nurbsImpl.java
index 13b68138c..13b68138c 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GLUgl2nurbsImpl.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/gl2/nurbs/GLUgl2nurbsImpl.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Arc.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Arc.java
index 9ee2494a1..9ee2494a1 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Arc.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Arc.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcSdirSorter.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcSdirSorter.java
index 3955e3176..3955e3176 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcSdirSorter.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcSdirSorter.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcTdirSorter.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcTdirSorter.java
index 098ba97b7..098ba97b7 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcTdirSorter.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcTdirSorter.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcTesselator.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcTesselator.java
index edfb8905f..edfb8905f 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcTesselator.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/ArcTesselator.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Backend.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Backend.java
index 39097720c..39097720c 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Backend.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Backend.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/BezierArc.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/BezierArc.java
index d9b390b67..d9b390b67 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/BezierArc.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/BezierArc.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Bin.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Bin.java
index 61316f348..61316f348 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Bin.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Bin.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Breakpt.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Breakpt.java
index b5b88ad96..b5b88ad96 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Breakpt.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Breakpt.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfArcs.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfArcs.java
index 0646e1d9f..0646e1d9f 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfArcs.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfArcs.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfBreakpts.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfBreakpts.java
index e47fdf966..e47fdf966 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfBreakpts.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfBreakpts.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfFloats.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfFloats.java
index 60cef9919..60cef9919 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfFloats.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfFloats.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfQuiltspecs.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfQuiltspecs.java
index ef16a8204..ef16a8204 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfQuiltspecs.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CArrayOfQuiltspecs.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Curve.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Curve.java
index fb1a5acea..fb1a5acea 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Curve.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Curve.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CurveEvaluator.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CurveEvaluator.java
index c27ffd4c4..c27ffd4c4 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CurveEvaluator.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/CurveEvaluator.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Curvelist.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Curvelist.java
index fc3018833..fc3018833 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Curvelist.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Curvelist.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/DisplayList.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/DisplayList.java
index 39a3a28f4..39a3a28f4 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/DisplayList.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/DisplayList.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Flist.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Flist.java
index 00757ed7e..00757ed7e 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Flist.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Flist.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Knotspec.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Knotspec.java
index 9251aa231..9251aa231 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Knotspec.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Knotspec.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Knotvector.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Knotvector.java
index 658a1cbda..658a1cbda 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Knotvector.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Knotvector.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Mapdesc.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Mapdesc.java
index 568eddc51..568eddc51 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Mapdesc.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Mapdesc.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Maplist.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Maplist.java
index b23a1f665..b23a1f665 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Maplist.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Maplist.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/NurbsConsts.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/NurbsConsts.java
index ee7f3b31b..ee7f3b31b 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/NurbsConsts.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/NurbsConsts.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_curve.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_curve.java
index 900f8e56f..900f8e56f 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_curve.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_curve.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_nurbscurve.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_nurbscurve.java
index 81110813f..81110813f 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_nurbscurve.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_nurbscurve.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_nurbssurface.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_nurbssurface.java
index b598f525d..b598f525d 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_nurbssurface.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_nurbssurface.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_pwlcurve.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_pwlcurve.java
index e50f41d81..e50f41d81 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_pwlcurve.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_pwlcurve.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_surface.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_surface.java
index 76ac79f0a..76ac79f0a 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_surface.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_surface.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_trim.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_trim.java
index 17e5002df..17e5002df 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_trim.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/O_trim.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Patch.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Patch.java
index d3066cc84..d3066cc84 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Patch.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Patch.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Patchlist.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Patchlist.java
index 8b439a02f..8b439a02f 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Patchlist.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Patchlist.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Property.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Property.java
index b486a0ead..b486a0ead 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Property.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Property.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Pspec.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Pspec.java
index 1e60ed335..1e60ed335 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Pspec.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Pspec.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/PwlArc.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/PwlArc.java
index 0c9eca91e..0c9eca91e 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/PwlArc.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/PwlArc.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Quilt.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Quilt.java
index 03e809d23..03e809d23 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Quilt.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Quilt.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Quiltspec.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Quiltspec.java
index 6c8e55e06..6c8e55e06 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Quiltspec.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Quiltspec.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/README.txt b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/README.txt
index 89630c71e..89630c71e 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/README.txt
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/README.txt
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Renderhints.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Renderhints.java
index d1a23fbab..d1a23fbab 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Renderhints.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Renderhints.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Splinespec.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Splinespec.java
index 487b47f2d..487b47f2d 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Splinespec.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Splinespec.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Subdivider.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Subdivider.java
index 99c1b740b..99c1b740b 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Subdivider.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/Subdivider.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/SurfaceEvaluator.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/SurfaceEvaluator.java
index fe23f9c08..fe23f9c08 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/SurfaceEvaluator.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/SurfaceEvaluator.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/TrimVertex.java b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/TrimVertex.java
index 6608f8f40..6608f8f40 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/TrimVertex.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/glu/nurbs/TrimVertex.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/macosx/cgl/MacOSXCGLDrawableFactory.java b/src/jogl/classes/com/jogamp/opengl/impl/macosx/cgl/MacOSXCGLDrawableFactory.java
index e71a78ffb..9694e5607 100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/macosx/cgl/MacOSXCGLDrawableFactory.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/macosx/cgl/MacOSXCGLDrawableFactory.java
@@ -78,8 +78,8 @@ public class MacOSXCGLDrawableFactory extends GLDrawableFactoryImpl {
new MacOSXCGLGraphicsConfigurationFactory();
try {
- ReflectionUtil.createInstance("com.jogamp.opengl.impl.macosx.cgl.awt.MacOSXAWTCGLGraphicsConfigurationFactory", getClass().getClassLoader(),
- new Object[] {});
+ ReflectionUtil.createInstance("com.jogamp.opengl.impl.macosx.cgl.awt.MacOSXAWTCGLGraphicsConfigurationFactory",
+ new Object[] {}, getClass().getClassLoader());
} catch (JogampRuntimeException jre) { /* n/a .. */ }
}
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsExternalWGLContext.java b/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsExternalWGLContext.java
index 1f1fb0d40..1f1fb0d40 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsExternalWGLContext.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsExternalWGLContext.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsExternalWGLDrawable.java b/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsExternalWGLDrawable.java
index 41e469224..41e469224 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsExternalWGLDrawable.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsExternalWGLDrawable.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsWGLDrawableFactory.java b/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsWGLDrawableFactory.java
index 353ed8ac3..85444b61c 100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsWGLDrawableFactory.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/windows/wgl/WindowsWGLDrawableFactory.java
@@ -80,8 +80,8 @@ public class WindowsWGLDrawableFactory extends GLDrawableFactoryImpl {
// The act of constructing them causes them to be registered
new WindowsWGLGraphicsConfigurationFactory();
try {
- ReflectionUtil.createInstance("com.jogamp.opengl.impl.windows.wgl.awt.WindowsAWTWGLGraphicsConfigurationFactory", getClass().getClassLoader(),
- new Object[] {});
+ ReflectionUtil.createInstance("com.jogamp.opengl.impl.windows.wgl.awt.WindowsAWTWGLGraphicsConfigurationFactory",
+ new Object[] {}, getClass().getClassLoader());
} catch (JogampRuntimeException jre) { /* n/a .. */ }
try {
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11ExternalGLXContext.java b/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11ExternalGLXContext.java
index a1e4585f7..a1e4585f7 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11ExternalGLXContext.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11ExternalGLXContext.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11ExternalGLXDrawable.java b/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11ExternalGLXDrawable.java
index 8a8702a3e..8a8702a3e 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11ExternalGLXDrawable.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11ExternalGLXDrawable.java
diff --git a/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11GLXDrawableFactory.java b/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11GLXDrawableFactory.java
index c08c7c73f..98be19263 100644
--- a/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11GLXDrawableFactory.java
+++ b/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/X11GLXDrawableFactory.java
@@ -78,8 +78,8 @@ public class X11GLXDrawableFactory extends GLDrawableFactoryImpl {
// The act of constructing them causes them to be registered
new X11GLXGraphicsConfigurationFactory();
try {
- ReflectionUtil.createInstance("com.jogamp.opengl.impl.x11.glx.awt.X11AWTGLXGraphicsConfigurationFactory", getClass().getClassLoader(),
- new Object[] {});
+ ReflectionUtil.createInstance("com.jogamp.opengl.impl.x11.glx.awt.X11AWTGLXGraphicsConfigurationFactory",
+ new Object[] {}, getClass().getClassLoader());
} catch (JogampRuntimeException jre) { /* n/a .. */ }
// init shared resources ..
diff --git a/src/jogl/classes/com/jogamp/opengl/util/Animator.java b/src/jogl/classes/com/jogamp/opengl/util/Animator.java
index 15b9d5eb9..66d3d5b88 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/Animator.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/Animator.java
@@ -218,6 +218,9 @@ public class Animator {
} else {
thread = new Thread(threadGroup, runnable);
}
+ for(Iterator iter = drawables.iterator(); iter.hasNext(); ) {
+ ((GLAutoDrawable) iter.next()).setAnimator(thread);
+ }
thread.start();
}
@@ -241,15 +244,16 @@ public class Animator {
// dependencies on the Animator's internal thread. Currently we
// use a couple of heuristics to determine whether we should do
// the blocking wait().
- if (impl.skipWaitForStop(thread)) {
- return;
- }
-
- while (shouldStop && thread != null) {
- try {
- wait();
- } catch (InterruptedException ie) {
+ if (!impl.skipWaitForStop(thread)) {
+ while (shouldStop && thread != null) {
+ try {
+ wait();
+ } catch (InterruptedException ie) {
+ }
}
}
+ for(Iterator iter = drawables.iterator(); iter.hasNext(); ) {
+ ((GLAutoDrawable) iter.next()).setAnimator(null);
+ }
}
}
diff --git a/src/jogl/classes/com/jogamp/opengl/util/FBObject.java b/src/jogl/classes/com/jogamp/opengl/util/FBObject.java
index 4920ed5f5..4920ed5f5 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/FBObject.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/FBObject.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/FPSAnimator.java b/src/jogl/classes/com/jogamp/opengl/util/FPSAnimator.java
index 75c4cdff7..75c4cdff7 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/FPSAnimator.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/FPSAnimator.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/FileUtil.java b/src/jogl/classes/com/jogamp/opengl/util/FileUtil.java
index 6ad0da825..6ad0da825 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/FileUtil.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/FileUtil.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/GLBuffers.java b/src/jogl/classes/com/jogamp/opengl/util/GLBuffers.java
index efe3a7675..efe3a7675 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/GLBuffers.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/GLBuffers.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/Gamma.java b/src/jogl/classes/com/jogamp/opengl/util/Gamma.java
index 672325cf3..672325cf3 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/Gamma.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/Gamma.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java b/src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java
index 47de8ce0a..47de8ce0a 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/StreamUtil.java b/src/jogl/classes/com/jogamp/opengl/util/StreamUtil.java
index 4cf8cb1f0..4cf8cb1f0 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/StreamUtil.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/StreamUtil.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/TGAWriter.java b/src/jogl/classes/com/jogamp/opengl/util/TGAWriter.java
index b949f0e39..b949f0e39 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/TGAWriter.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/TGAWriter.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/awt/ImageUtil.java b/src/jogl/classes/com/jogamp/opengl/util/awt/ImageUtil.java
index a3139b16a..a3139b16a 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/awt/ImageUtil.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/awt/ImageUtil.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/awt/Overlay.java b/src/jogl/classes/com/jogamp/opengl/util/awt/Overlay.java
index 1275c9391..1275c9391 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/awt/Overlay.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/awt/Overlay.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/awt/Screenshot.java b/src/jogl/classes/com/jogamp/opengl/util/awt/Screenshot.java
index 7019d720f..7019d720f 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/awt/Screenshot.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/awt/Screenshot.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/awt/TextRenderer.java b/src/jogl/classes/com/jogamp/opengl/util/awt/TextRenderer.java
index bac9f88ea..bac9f88ea 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/awt/TextRenderer.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/awt/TextRenderer.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/awt/TextureRenderer.java b/src/jogl/classes/com/jogamp/opengl/util/awt/TextureRenderer.java
index bc5aa517e..bc5aa517e 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/awt/TextureRenderer.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/awt/TextureRenderer.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/gl2/TileRenderer.java b/src/jogl/classes/com/jogamp/opengl/util/gl2/TileRenderer.java
index 714c134d4..714c134d4 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/gl2/TileRenderer.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/gl2/TileRenderer.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/FixedFuncHook.java b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/FixedFuncHook.java
index b8e3922a4..b8e3922a4 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/FixedFuncHook.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/FixedFuncHook.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColor.bfp b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColor.bfp
index 3ebaaee1d..3ebaaee1d 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColor.bfp
+++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColor.bfp
Binary files differ
diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColor.bvp b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColor.bvp
index 279ef72c7..279ef72c7 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColor.bvp
+++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColor.bvp
Binary files differ
diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColorLight.bvp b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColorLight.bvp
index 5a9deea71..5a9deea71 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColorLight.bvp
+++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColorLight.bvp
Binary files differ
diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColorTexture.bfp b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColorTexture.bfp
index ce1397fe1..ce1397fe1 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColorTexture.bfp
+++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/impl/shaders/bin/nvidia/FixedFuncColorTexture.bfp
Binary files differ
diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShader.java b/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShader.java
index a0eed50ea..a0eed50ea 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShader.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShader.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShaderNVidia.java b/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShaderNVidia.java
index 8eb9ef579..8eb9ef579 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShaderNVidia.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShaderNVidia.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/packrect/BackingStoreManager.java b/src/jogl/classes/com/jogamp/opengl/util/packrect/BackingStoreManager.java
index 7b6a1b479..7b6a1b479 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/packrect/BackingStoreManager.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/packrect/BackingStoreManager.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/packrect/Level.java b/src/jogl/classes/com/jogamp/opengl/util/packrect/Level.java
index 5ba3f7330..5ba3f7330 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/packrect/Level.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/packrect/Level.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/packrect/LevelSet.java b/src/jogl/classes/com/jogamp/opengl/util/packrect/LevelSet.java
index 6783aec3b..6783aec3b 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/packrect/LevelSet.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/packrect/LevelSet.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/packrect/Rect.java b/src/jogl/classes/com/jogamp/opengl/util/packrect/Rect.java
index 6206c4a11..6206c4a11 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/packrect/Rect.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/packrect/Rect.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/packrect/RectVisitor.java b/src/jogl/classes/com/jogamp/opengl/util/packrect/RectVisitor.java
index 49cfc82e6..49cfc82e6 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/packrect/RectVisitor.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/packrect/RectVisitor.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/packrect/RectanglePacker.java b/src/jogl/classes/com/jogamp/opengl/util/packrect/RectanglePacker.java
index 1496a04a6..1496a04a6 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/packrect/RectanglePacker.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/packrect/RectanglePacker.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/packrect/package.html b/src/jogl/classes/com/jogamp/opengl/util/packrect/package.html
index c1c5db477..c1c5db477 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/packrect/package.html
+++ b/src/jogl/classes/com/jogamp/opengl/util/packrect/package.html
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/Texture.java b/src/jogl/classes/com/jogamp/opengl/util/texture/Texture.java
index 57ac0d45a..57ac0d45a 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/Texture.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/Texture.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/TextureCoords.java b/src/jogl/classes/com/jogamp/opengl/util/texture/TextureCoords.java
index 8d8b3679d..8d8b3679d 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/TextureCoords.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/TextureCoords.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/TextureData.java b/src/jogl/classes/com/jogamp/opengl/util/texture/TextureData.java
index f598422bf..f598422bf 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/TextureData.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/TextureData.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java.javame_cdc_fp b/src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java.javame_cdc_fp
index 3b694be68..3b694be68 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java.javame_cdc_fp
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java.javame_cdc_fp
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java.javase b/src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java.javase
index 819a6acf5..819a6acf5 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java.javase
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java.javase
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/awt/AWTTextureData.java b/src/jogl/classes/com/jogamp/opengl/util/texture/awt/AWTTextureData.java
index 39ec74b97..39ec74b97 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/awt/AWTTextureData.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/awt/AWTTextureData.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/DDSImage.java.javame_cdc_fp b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/DDSImage.java.javame_cdc_fp
index b18991dfc..b18991dfc 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/DDSImage.java.javame_cdc_fp
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/DDSImage.java.javame_cdc_fp
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/DDSImage.java.javase b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/DDSImage.java.javase
index e3092162d..e3092162d 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/DDSImage.java.javase
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/DDSImage.java.javase
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/LEDataInputStream.java b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/LEDataInputStream.java
index d5f49599c..d5f49599c 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/LEDataInputStream.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/LEDataInputStream.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/LEDataOutputStream.java b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/LEDataOutputStream.java
index e1e1ca924..e1e1ca924 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/LEDataOutputStream.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/LEDataOutputStream.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/SGIImage.java b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/SGIImage.java
index bb5040a31..bb5040a31 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/SGIImage.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/SGIImage.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TGAImage.java.javame_cdc_fp b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TGAImage.java.javame_cdc_fp
index 6e6e4ab04..6e6e4ab04 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TGAImage.java.javame_cdc_fp
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TGAImage.java.javame_cdc_fp
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TGAImage.java.javase b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TGAImage.java.javase
index 16ba538b5..16ba538b5 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TGAImage.java.javase
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TGAImage.java.javase
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TextureProvider.java b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TextureProvider.java
index 88018edbe..88018edbe 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TextureProvider.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TextureProvider.java
diff --git a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TextureWriter.java b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TextureWriter.java
index 55527cef5..55527cef5 100755..100644
--- a/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TextureWriter.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/texture/spi/TextureWriter.java
diff --git a/src/jogl/classes/javax/media/opengl/GLAutoDrawable.java b/src/jogl/classes/javax/media/opengl/GLAutoDrawable.java
index 7236aa533..10a32fd1d 100644
--- a/src/jogl/classes/javax/media/opengl/GLAutoDrawable.java
+++ b/src/jogl/classes/javax/media/opengl/GLAutoDrawable.java
@@ -161,14 +161,49 @@ public interface GLAutoDrawable extends GLDrawable {
during this update cycle. */
public void removeGLEventListener(GLEventListener listener);
+ /**
+ * <p>
+ * Indicates whether a running animator thread is periodically issuing {@link #display()} calls or not.</p><br>
+ * <p>
+ * This method shall be called by an animator implementation only,<br>
+ * e.g. {@link com.jogamp.opengl.util.Animator#start()}, passing the animator thread,<br>
+ * and {@link com.jogamp.opengl.util.Animator#stop()}, passing <code>null</code>.</p><br>
+ * <p>
+ * Impacts {@link #display()} and {@link #invoke(boolean, GLRunnable)} semantics.</p><br>
+ *
+ * @param animator <code>null</code> reference indicates no running animator thread
+ * issues {@link #display()} calls on this <code>GLAutoDrawable</code>,<br>
+ * a valid reference indicates a running animator thread
+ * periodically issuing {@link #display()} calls.
+ *
+ * @throws GLException if a running animator thread is already registered and you try to register a different one without unregistering the previous one.
+ * @see #display()
+ * @see #invoke(boolean, GLRunnable)
+ */
+ public void setAnimator(Thread animator) throws GLException;
+
+ /**
+ * @return the value of the registered animator thread
+ *
+ * @see #setAnimator(Thread)
+ */
+ public Thread getAnimator();
+
/**
- * Enqueues the one-shot {@link javax.media.opengl.GLRunnable} into the queue,
- * which will be executed at the next {@link #display()} call.
* <p>
- * Warning: We cannot verify if the caller runs in the same thread
- * as the display caller, hence we cannot avoid a deadlock
- * in such case. You have to know what you are doing,
- * ie call this only in a I/O event listener, or such.<br></p>
+ * Enqueues a one-shot {@link javax.media.opengl.GLRunnable},
+ * which will be executed with the next {@link #display()} call.</p><br>
+ * <p>
+ * If {@link #setAnimator(Thread)} has not registered no running animator thread, the default,<br>
+ * or if the current thread is the animator thread,<br>
+ * a {@link #display()} call has to be issued after enqueueing the <code>GLRunnable</code>.<br>
+ * No extra synchronization must be performed in case <code>wait</code> is true, since it is executed in the current thread.</p><br>
+ * <p>
+ * If {@link #setAnimator(Thread)} has registered a valid animator thread,<br>
+ * no call of {@link #display()} must be issued, since the animator thread performs it.<br>
+ * If <code>wait</code> is true, the implementation must wait until the <code>GLRunnable</code> is excecuted.</p><br>
+ *
+ * @see #setAnimator(Thread)
* @see #display()
* @see javax.media.opengl.GLRunnable
*/
@@ -190,28 +225,37 @@ public interface GLAutoDrawable extends GLDrawable {
routine may be called manually. */
public void destroy();
- /** <p>Causes OpenGL rendering to be performed for this GLAutoDrawable
- in the following order:
- <ul>
- <li> Calling {@link GLEventListener#display display(..)} for all
- registered {@link GLEventListener}s. </li>
- <li> Execute and dismiss all one-shot {@link javax.media.opengl.GLRunnable},
- enqueued via {@link #invoke(boolean, GLRunnable)}.</li>
- </ul></p>
- <p>
- Called automatically by the
- window system toolkit upon receiving a repaint() request.</p>
- <p>
- This routine may be called manually for better control over the
- rendering process. It is legal to call another GLAutoDrawable's
- display method from within the {@link GLEventListener#display
- display(..)} callback.</p>
- <p>
- In case of a new generated OpenGL context,
- the implementation shall call {@link GLEventListener#init init(..)} for all
- registered {@link GLEventListener}s <i>before</i> making the
- actual {@link GLEventListener#display display(..)} calls,
- in case this has not been done yet.</p> */
+ /**
+ * <p>
+ * Causes OpenGL rendering to be performed for this GLAutoDrawable
+ * in the following order:
+ * <ul>
+ * <li> Calling {@link GLEventListener#display display(..)} for all
+ * registered {@link GLEventListener}s. </li>
+ * <li> Executes all one-shot {@link javax.media.opengl.GLRunnable},
+ * enqueued via {@link #invoke(boolean, GLRunnable)}.</li>
+ * </ul></p>
+ * <p>
+ * Called automatically by the
+ * window system toolkit upon receiving a repaint() request,
+ * except a running animator thread is registered with {@link #setAnimator(Thread)}.</p> <br>
+ * <p>
+ * Maybe called periodically by a running animator thread,<br>
+ * which must register itself with {@link #setAnimator(Thread)}.</p> <br>
+ * <p>
+ * This routine may be called manually for better control over the
+ * rendering process. It is legal to call another GLAutoDrawable's
+ * display method from within the {@link GLEventListener#display
+ * display(..)} callback.</p>
+ * <p>
+ * In case of a new generated OpenGL context,
+ * the implementation shall call {@link GLEventListener#init init(..)} for all
+ * registered {@link GLEventListener}s <i>before</i> making the
+ * actual {@link GLEventListener#display display(..)} calls,
+ * in case this has not been done yet.</p>
+ *
+ * @see #setAnimator(Thread)
+ */
public void display();
/** Enables or disables automatic buffer swapping for this drawable.
diff --git a/src/jogl/classes/javax/media/opengl/Threading.java b/src/jogl/classes/javax/media/opengl/Threading.java
index e58792b8f..e58792b8f 100755..100644
--- a/src/jogl/classes/javax/media/opengl/Threading.java
+++ b/src/jogl/classes/javax/media/opengl/Threading.java
diff --git a/src/jogl/classes/javax/media/opengl/awt/GLCanvas.java b/src/jogl/classes/javax/media/opengl/awt/GLCanvas.java
index 2dafd691a..f150b2507 100644
--- a/src/jogl/classes/javax/media/opengl/awt/GLCanvas.java
+++ b/src/jogl/classes/javax/media/opengl/awt/GLCanvas.java
@@ -378,7 +378,9 @@ public class GLCanvas extends Canvas implements AWTGLAutoDrawable {
return;
}
- display();
+ if( null == getAnimator() ) {
+ display();
+ }
}
/** Overridden to track when this component is added to a container.
@@ -492,8 +494,16 @@ public class GLCanvas extends Canvas implements AWTGLAutoDrawable {
drawableHelper.removeGLEventListener(listener);
}
+ public void setAnimator(Thread animator) {
+ drawableHelper.setAnimator(animator);
+ }
+
+ public Thread getAnimator() {
+ return drawableHelper.getAnimator();
+ }
+
public void invoke(boolean wait, GLRunnable glRunnable) {
- drawableHelper.invoke(wait, glRunnable);
+ drawableHelper.invoke(this, wait, glRunnable);
}
public void setContext(GLContext ctx) {
@@ -640,10 +650,7 @@ public class GLCanvas extends Canvas implements AWTGLAutoDrawable {
if (sendReshape) {
// Note: we ignore the given x and y within the parent component
// since we are drawing directly into this heavyweight component.
- int width = getWidth();
- int height = getHeight();
- getGL().glViewport(0, 0, width, height);
- drawableHelper.reshape(GLCanvas.this, 0, 0, width, height);
+ drawableHelper.reshape(GLCanvas.this, 0, 0, getWidth(), getHeight());
sendReshape = false;
}
diff --git a/src/jogl/classes/javax/media/opengl/awt/GLJPanel.java b/src/jogl/classes/javax/media/opengl/awt/GLJPanel.java
index 73962e979..d0d97fe31 100644
--- a/src/jogl/classes/javax/media/opengl/awt/GLJPanel.java
+++ b/src/jogl/classes/javax/media/opengl/awt/GLJPanel.java
@@ -380,8 +380,16 @@ public class GLJPanel extends JPanel implements AWTGLAutoDrawable {
drawableHelper.removeGLEventListener(listener);
}
+ public void setAnimator(Thread animator) {
+ drawableHelper.setAnimator(animator);
+ }
+
+ public Thread getAnimator() {
+ return drawableHelper.getAnimator();
+ }
+
public void invoke(boolean wait, GLRunnable glRunnable) {
- drawableHelper.invoke(wait, glRunnable);
+ drawableHelper.invoke(this, wait, glRunnable);
}
public GLContext createContext(GLContext shareWith) {
@@ -585,9 +593,8 @@ public class GLJPanel extends JPanel implements AWTGLAutoDrawable {
}
if (sendReshape) {
if (DEBUG||VERBOSE) {
- System.err.println("display: glViewport(" + viewportX + "," + viewportY + " " + panelWidth + "x" + panelHeight + ")");
+ System.err.println("display: reshape(" + viewportX + "," + viewportY + " " + panelWidth + "x" + panelHeight + ")");
}
- getGL().getGL2().glViewport(viewportX, viewportY, panelWidth, panelHeight);
drawableHelper.reshape(GLJPanel.this, viewportX, viewportY, panelWidth, panelHeight);
sendReshape = false;
}
diff --git a/src/jogl/classes/javax/media/opengl/glu/GLUnurbs.java b/src/jogl/classes/javax/media/opengl/glu/GLUnurbs.java
index 2641115d0..2641115d0 100755..100644
--- a/src/jogl/classes/javax/media/opengl/glu/GLUnurbs.java
+++ b/src/jogl/classes/javax/media/opengl/glu/GLUnurbs.java
diff --git a/src/jogl/classes/javax/media/opengl/glu/GLUquadric.java b/src/jogl/classes/javax/media/opengl/glu/GLUquadric.java
index 49451a34b..49451a34b 100755..100644
--- a/src/jogl/classes/javax/media/opengl/glu/GLUquadric.java
+++ b/src/jogl/classes/javax/media/opengl/glu/GLUquadric.java
diff --git a/src/jogl/classes/javax/media/opengl/glu/GLUtessellator.java b/src/jogl/classes/javax/media/opengl/glu/GLUtessellator.java
index f98bbe158..f98bbe158 100755..100644
--- a/src/jogl/classes/javax/media/opengl/glu/GLUtessellator.java
+++ b/src/jogl/classes/javax/media/opengl/glu/GLUtessellator.java
diff --git a/src/jogl/classes/javax/media/opengl/glu/GLUtessellatorCallback.java b/src/jogl/classes/javax/media/opengl/glu/GLUtessellatorCallback.java
index 72ad68ceb..72ad68ceb 100755..100644
--- a/src/jogl/classes/javax/media/opengl/glu/GLUtessellatorCallback.java
+++ b/src/jogl/classes/javax/media/opengl/glu/GLUtessellatorCallback.java
diff --git a/src/jogl/classes/javax/media/opengl/glu/GLUtessellatorCallbackAdapter.java b/src/jogl/classes/javax/media/opengl/glu/GLUtessellatorCallbackAdapter.java
index f380f4698..f380f4698 100755..100644
--- a/src/jogl/classes/javax/media/opengl/glu/GLUtessellatorCallbackAdapter.java
+++ b/src/jogl/classes/javax/media/opengl/glu/GLUtessellatorCallbackAdapter.java