diff options
author | Sven Gothel <[email protected]> | 2011-04-26 07:47:19 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2011-04-26 07:47:19 +0200 |
commit | f47230cb4649df13260ac56c5dae6c01dad7c1e7 (patch) | |
tree | 72ca609de469e98118b65130aba4ab90be48625d /src/newt/classes/com | |
parent | 6e499630c878ff74c81c1c6c84542230a48e2c5d (diff) |
Newt Window: Remove 'invalidate()' method, only 'destroy()' is required (and makes sense)
- WindowImpl/GLWindow: Cleanup destroy code ..
- Tests: sync / remove FPS stderr print
Diffstat (limited to 'src/newt/classes/com')
-rw-r--r-- | src/newt/classes/com/jogamp/newt/Window.java | 9 | ||||
-rw-r--r-- | src/newt/classes/com/jogamp/newt/opengl/GLWindow.java | 43 |
2 files changed, 16 insertions, 36 deletions
diff --git a/src/newt/classes/com/jogamp/newt/Window.java b/src/newt/classes/com/jogamp/newt/Window.java index b78f7a9e8..5b3d93eec 100644 --- a/src/newt/classes/com/jogamp/newt/Window.java +++ b/src/newt/classes/com/jogamp/newt/Window.java @@ -109,19 +109,12 @@ public interface Window extends NativeWindow, WindowClosingProtocol { * which will issue {@link Screen#destroy()} if the reference count becomes 0.<br> * This destruction sequence shall end up in {@link Display#destroy()}, if all reference counts become 0. * </p> - * @see #invalidate() + * @see #destroy() * @see #setVisible(boolean) */ void destroy(); /** - * Destroys the Window via {@link #destroy()} and clears all Object references, - * eg. all states, size, position, parent handles, list of child Windows and reference to it's Screen.<br> - * This Window cannot be recreated after calling this method anymore.<br> - */ - void invalidate(); - - /** * <p> * <code>setVisible</code> makes the window and children visible if <code>visible</code> is true, * otherwise the window and children becomes invisible.<br></p> diff --git a/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java b/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java index bc0d67bfc..d8eda923a 100644 --- a/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java +++ b/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java @@ -341,28 +341,18 @@ public class GLWindow implements GLAutoDrawable, Window, NEWTEventConsumer, FPSC } context = null; drawable = null; - + + GLAnimatorControl ctrl = GLWindow.this.getAnimator(); + if ( null!=ctrl ) { + ctrl.remove(GLWindow.this); + } + // helper=null; // pending events .. + if(Window.DEBUG_WINDOW_EVENT || Window.DEBUG_IMPLEMENTATION) { System.err.println("GLWindow.destroy() "+Thread.currentThread()+", fin"); } } - public synchronized void invalidate(boolean unrecoverable) { - if(Window.DEBUG_WINDOW_EVENT || Window.DEBUG_IMPLEMENTATION) { - String msg = "GLWindow.invalidate("+unrecoverable+") "+Thread.currentThread()+", start"; - System.err.println(msg); - //Exception e1 = new Exception(msg); - //e1.printStackTrace(); - } - if(unrecoverable) { - GLAnimatorControl ctrl = GLWindow.this.getAnimator(); - if ( null!=ctrl ) { - ctrl.remove(GLWindow.this); - } - helper=null; - } - } - public synchronized void resetCounter() { if(Window.DEBUG_WINDOW_EVENT || Window.DEBUG_IMPLEMENTATION) { System.err.println("GLWindow.resetCounter() "+Thread.currentThread()); @@ -407,19 +397,20 @@ public class GLWindow implements GLAutoDrawable, Window, NEWTEventConsumer, FPSC } } + private GLAnimatorControl savedAnimator = null; + public synchronized boolean pauseRenderingAction() { boolean animatorPaused = false; - GLAnimatorControl ctrl = GLWindow.this.getAnimator(); - if ( null!=ctrl ) { - animatorPaused = ctrl.pause(); + savedAnimator = GLWindow.this.getAnimator(); + if ( null != savedAnimator ) { + animatorPaused = savedAnimator.pause(); } return animatorPaused; } public synchronized void resumeRenderingAction() { - GLAnimatorControl ctrl = GLWindow.this.getAnimator(); - if ( null!=ctrl && ctrl.isPaused() ) { - ctrl.resume(); + if ( null != savedAnimator && savedAnimator.isPaused() ) { + savedAnimator.resume(); } } } @@ -849,10 +840,6 @@ public class GLWindow implements GLAutoDrawable, Window, NEWTEventConsumer, FPSC return window.surfaceSwap(); } - public final void invalidate() { - window.invalidate(); - } - public final long getWindowHandle() { return window.getWindowHandle(); @@ -917,7 +904,7 @@ public class GLWindow implements GLAutoDrawable, Window, NEWTEventConsumer, FPSC }); glWindow.setVisible(true); - glWindow.invalidate(); + glWindow.destroy(); } } |