From 6ee1f0641fbefbb309217401708e61d0c7f248e9 Mon Sep 17 00:00:00 2001
From: Sven Gothel <sgothel@jausoft.com>
Date: Tue, 27 May 2014 04:25:26 +0200
Subject: Adapt to JOGL HiDPI (Bug 741) changes up-to commit
 bcda2dad1a6569ffd4eba07b231d50fdafc60b7f

---
 src/demos/j2d/TestTextureRenderer.java | 66 +++++++++++++++++++---------------
 1 file changed, 38 insertions(+), 28 deletions(-)

(limited to 'src/demos/j2d/TestTextureRenderer.java')

diff --git a/src/demos/j2d/TestTextureRenderer.java b/src/demos/j2d/TestTextureRenderer.java
index a217c7b..ccf3dbf 100755
--- a/src/demos/j2d/TestTextureRenderer.java
+++ b/src/demos/j2d/TestTextureRenderer.java
@@ -1,21 +1,21 @@
 /*
  * Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
- * 
+ *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are
  * met:
- * 
+ *
  * - Redistribution of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * 
+ *
  * - Redistribution in binary form must reproduce the above copyright
  *   notice, this list of conditions and the following disclaimer in the
  *   documentation and/or other materials provided with the distribution.
- * 
+ *
  * Neither the name of Sun Microsystems, Inc. or the names of
  * contributors may be used to endorse or promote products derived from
  * this software without specific prior written permission.
- * 
+ *
  * This software is provided "AS IS," without a warranty of any kind. ALL
  * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
  * INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A
@@ -28,22 +28,19 @@
  * DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY,
  * ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE, EVEN IF
  * SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
- * 
+ *
  * You acknowledge that this software is not designed or intended for use
  * in the design, construction, operation or maintenance of any nuclear
  * facility.
- * 
+ *
  * Sun gratefully acknowledges that this software was originally authored
  * and developed by Kenneth Bradley Russell and Christopher John Kline.
  */
 
 package demos.j2d;
 
-import com.jogamp.opengl.util.awt.TextureRenderer;
-import demos.gears.Gears;
-import demos.util.SystemTime;
-import demos.util.Time;
 import gleem.linalg.Vec2f;
+
 import java.awt.AlphaComposite;
 import java.awt.Color;
 import java.awt.Font;
@@ -55,13 +52,20 @@ import java.awt.event.WindowEvent;
 import java.awt.font.FontRenderContext;
 import java.awt.font.GlyphVector;
 import java.text.DecimalFormat;
+
 import javax.media.opengl.GL;
 import javax.media.opengl.GLAutoDrawable;
 import javax.media.opengl.GLCapabilities;
 import javax.media.opengl.GLEventListener;
 import javax.media.opengl.GLProfile;
 import javax.media.opengl.awt.GLCanvas;
+
 import com.jogamp.opengl.util.Animator;
+import com.jogamp.opengl.util.awt.TextureRenderer;
+
+import demos.gears.Gears;
+import demos.util.SystemTime;
+import demos.util.Time;
 
 
 
@@ -81,12 +85,14 @@ public class TestTextureRenderer implements GLEventListener {
     frame.setSize(512, 512);
     final Animator animator = new Animator(canvas);
     frame.addWindowListener(new WindowAdapter() {
-        public void windowClosing(WindowEvent e) {
+        @Override
+		public void windowClosing(WindowEvent e) {
           // Run this on another thread than the AWT event queue to
           // make sure the call to Animator.stop() completes before
           // exiting
           new Thread(new Runnable() {
-              public void run() {
+              @Override
+			public void run() {
                 animator.stop();
                 System.exit(0);
               }
@@ -100,17 +106,18 @@ public class TestTextureRenderer implements GLEventListener {
   private TextureRenderer renderer;
   private Time time;
   private Font font;
-  private Color TRANSPARENT_BLACK = new Color(0.0f, 0.0f, 0.0f, 0.0f);
-  private Vec2f velocity = new Vec2f(100.0f, 150.0f);
+  private final Color TRANSPARENT_BLACK = new Color(0.0f, 0.0f, 0.0f, 0.0f);
+  private final Vec2f velocity = new Vec2f(100.0f, 150.0f);
   private Vec2f position;
   private Rectangle textBounds;
   private Rectangle fpsBounds;
-  private String TEST_STRING = "Java 2D Text";
+  private final String TEST_STRING = "Java 2D Text";
   private long startTime;
   private int frameCount;
-  private DecimalFormat format = new DecimalFormat("####.00");
+  private final DecimalFormat format = new DecimalFormat("####.00");
 
-  public void init(GLAutoDrawable drawable) {
+  @Override
+public void init(GLAutoDrawable drawable) {
     GL gl = drawable.getGL();
     gl.setSwapInterval(0);
 
@@ -119,7 +126,7 @@ public class TestTextureRenderer implements GLEventListener {
     ((SystemTime) time).rebase();
 
     // Start the text half way up the left side
-    position = new Vec2f(0.0f, drawable.getHeight() / 2);
+    position = new Vec2f(0.0f, drawable.getSurfaceHeight() / 2);
 
     // Create the font, render context, and glyph vector
     font = new Font("SansSerif", Font.BOLD, 36);
@@ -136,21 +143,23 @@ public class TestTextureRenderer implements GLEventListener {
     renderer.markDirty(textBounds.x, textBounds.y, textBounds.width, textBounds.height);
   }
 
-  public void dispose(GLAutoDrawable drawable) {
+  @Override
+public void dispose(GLAutoDrawable drawable) {
     renderer = null;
     textBounds = null;
     position = null;
     time = null;
   }
 
-  public void display(GLAutoDrawable drawable) {
+  @Override
+public void display(GLAutoDrawable drawable) {
     if (startTime == 0) {
       startTime = System.currentTimeMillis();
     }
 
     if (++frameCount == 100) {
       long endTime = System.currentTimeMillis();
-      float fps = 100.0f / (float) (endTime - startTime) * 1000;
+      float fps = 100.0f / (endTime - startTime) * 1000;
       frameCount = 0;
       startTime = System.currentTimeMillis();
 
@@ -177,17 +186,17 @@ public class TestTextureRenderer implements GLEventListener {
                                         textBounds.width, textBounds.height);
     if (tmpBounds.getMinX() < 0) {
       velocity.setX(Math.abs(velocity.x()));
-    } else if (tmpBounds.getMaxX() > drawable.getWidth()) {
+    } else if (tmpBounds.getMaxX() > drawable.getSurfaceWidth()) {
       velocity.setX(-1.0f * Math.abs(velocity.x()));
     }
     if (tmpBounds.getMinY() < 0) {
       velocity.setY(Math.abs(velocity.y()));
-    } else if (tmpBounds.getMaxY() > drawable.getHeight()) {
+    } else if (tmpBounds.getMaxY() > drawable.getSurfaceHeight()) {
       velocity.setY(-1.0f * Math.abs(velocity.y()));
     }
 
     // Prepare to draw from the renderer's texture
-    renderer.beginOrthoRendering(drawable.getWidth(), drawable.getHeight());
+    renderer.beginOrthoRendering(drawable.getSurfaceWidth(), drawable.getSurfaceHeight());
 
     // Draw from the renderer's texture
     renderer.drawOrthoRect((int) position.x(), (int) position.y(),
@@ -198,19 +207,20 @@ public class TestTextureRenderer implements GLEventListener {
 
     // If we have the FPS, draw it
     if (fpsBounds != null) {
-      renderer.drawOrthoRect(drawable.getWidth() - fpsBounds.width,
+      renderer.drawOrthoRect(drawable.getSurfaceWidth() - fpsBounds.width,
                              20,
                              fpsBounds.x,
                              renderer.getHeight() - fpsBounds.y - fpsBounds.height,
                              fpsBounds.width,
                              fpsBounds.height);
     }
-    
+
     // Clean up rendering
     renderer.endOrthoRendering();
   }
 
   // Unused methods
-  public void reshape(GLAutoDrawable drawable, int x, int y, int width, int height) {}
+  @Override
+public void reshape(GLAutoDrawable drawable, int x, int y, int width, int height) {}
   public void displayChanged(GLAutoDrawable drawable, boolean modeChanged, boolean deviceChanged) {}
 }
-- 
cgit v1.2.3