summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2014-06-08 22:50:22 +0200
committerSven Gothel <[email protected]>2014-06-08 22:50:22 +0200
commit14ff638b63fc7adaa59f351891f6a38806d7fa5d (patch)
tree0c61ee420775df3730da1452033463460a1cd954
parent58153310faa4089417037e67e06c0812908cecd2 (diff)
NEWT Window: Remove deprecated methods: HiDPI + reparentWindow(..)
Remove HiDPI pixel- from/to window-unit conversion and getter methods: Rectangle HiDPI pixel- from/to window-units are erroneous in case of multiple monitor setup where a mixed pixel-scale exist, since the methods didn't take the monitor viewport and each of it's pixel-scale into account (expensive). Remove deprecated reparentWindow(..) methods.
-rw-r--r--src/newt/classes/com/jogamp/newt/Window.java60
-rw-r--r--src/newt/classes/com/jogamp/newt/opengl/GLWindow.java25
-rw-r--r--src/newt/classes/jogamp/newt/WindowImpl.java26
-rw-r--r--src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode00cNEWT.java9
-rw-r--r--src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01aNEWT.java9
-rw-r--r--src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01bNEWT.java13
-rw-r--r--src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01cNEWT.java14
7 files changed, 25 insertions, 131 deletions
diff --git a/src/newt/classes/com/jogamp/newt/Window.java b/src/newt/classes/com/jogamp/newt/Window.java
index 88134f3ef..08236ae67 100644
--- a/src/newt/classes/com/jogamp/newt/Window.java
+++ b/src/newt/classes/com/jogamp/newt/Window.java
@@ -254,16 +254,6 @@ public interface Window extends NativeWindow, WindowClosingProtocol, ScalableSur
Rectangle getBounds();
/**
- * Returns a newly created {@link Rectangle} containing the scaled window origin, {@link #getX()} & {@link #getY()},
- * and size, {@link #getSurfaceWidth()} & {@link #getSurfaceHeight()}, in pixel units.
- *
- * @deprecated The returned position in pixel units might be erroneous in case of multiple monitor setup where a mixed pixel-scale exist,
- * since this method currently does not take the monitor viewport and each of it's pixel-scale into account (expensive).
- * Either we fix this issue or remove this method at a later time.
- */
- Rectangle getSurfaceBounds();
-
- /**
* Sets the size of the window's client area in window units, excluding decorations.
*
* <p>
@@ -358,22 +348,6 @@ public interface Window extends NativeWindow, WindowClosingProtocol, ScalableSur
*/
void setTopLevelPosition(int x, int y);
- /**
- * Converts the given pixel units into window units <i>in place</i>.
- * @param pixelUnitsAndResult rectangle storage holding the pixel units to convert
- * and the resulting conversion.
- * @return resulting rectangle storage pixelUnitsAndResult for chaining holding the converted values
- */
- Rectangle convertToWindowUnits(final Rectangle pixelUnitsAndResult);
-
- /**
- * Converts the given window units into pixel units <i>in place</i>.
- * @param windowUnitsAndResult rectangle storage holding the window units to convert
- * and the resulting conversion.
- * @return resulting rectangle storage windowUnitsAndResult for chaining holding the converted values
- */
- Rectangle convertToPixelUnits(final Rectangle windowUnitsAndResult);
-
void setUndecorated(boolean value);
boolean isUndecorated();
@@ -472,40 +446,6 @@ public interface Window extends NativeWindow, WindowClosingProtocol, ScalableSur
* this window is added to it's list of children.<br></P>
*
* @param newParent The new parent NativeWindow. If null, this Window becomes a top level window.
- *
- * @return The issued reparent action type (strategy) as defined in Window.ReparentAction
- * @see #reparentWindow(NativeWindow, int, int, boolean)
- * @deprecated Use {@link #reparentWindow(NativeWindow, int, int, int)}
- */
- ReparentOperation reparentWindow(NativeWindow newParent);
-
- /**
- * Change this window's parent window.<br>
- * <P>
- * In case the old parent is not null and a Window,
- * this window is removed from it's list of children.<br>
- * In case the new parent is not null and a Window,
- * this window is added to it's list of children.<br></P>
- *
- * @param newParent The new parent NativeWindow. If null, this Window becomes a top level window.
- * @param x new top-level position, use -1 for default position.
- * @param y new top-level position, use -1 for default position.
- * @param forceDestroyCreate if true, uses re-creation strategy for reparenting, default is <code>false</code>.
- *
- * @return The issued reparent action type (strategy) as defined in Window.ReparentAction
- * @deprecated Use {@link #reparentWindow(NativeWindow, int, int, int)}
- */
- ReparentOperation reparentWindow(NativeWindow newParent, int x, int y, boolean forceDestroyCreate);
-
- /**
- * Change this window's parent window.<br>
- * <P>
- * In case the old parent is not null and a Window,
- * this window is removed from it's list of children.<br>
- * In case the new parent is not null and a Window,
- * this window is added to it's list of children.<br></P>
- *
- * @param newParent The new parent NativeWindow. If null, this Window becomes a top level window.
* @param x new top-level position in window units, use -1 for default position.
* @param y new top-level position in window units, use -1 for default position.
* @param hints May contain hints (bitfield values) like {@link #REPARENT_HINT_FORCE_RECREATION} or {@link #REPARENT_HINT_BECOMES_VISIBLE}.
diff --git a/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java b/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java
index 25297917b..2991bb98a 100644
--- a/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java
+++ b/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java
@@ -379,11 +379,6 @@ public class GLWindow extends GLAutoDrawableBase implements GLAutoDrawable, Wind
}
@Override
- public final Rectangle getSurfaceBounds() {
- return window.getSurfaceBounds();
- }
-
- @Override
public final int[] convertToWindowUnits(final int[] pixelUnitsAndResult) {
return window.convertToWindowUnits(pixelUnitsAndResult);
}
@@ -394,16 +389,6 @@ public class GLWindow extends GLAutoDrawableBase implements GLAutoDrawable, Wind
}
@Override
- public final Rectangle convertToWindowUnits(final Rectangle pixelUnitsAndResult) {
- return window.convertToWindowUnits(pixelUnitsAndResult);
- }
-
- @Override
- public final Rectangle convertToPixelUnits(final Rectangle windowUnitsAndResult) {
- return window.convertToPixelUnits(windowUnitsAndResult);
- }
-
- @Override
public final void setSurfaceScale(final int[] pixelScale) {
window.setSurfaceScale(pixelScale);
}
@@ -454,16 +439,6 @@ public class GLWindow extends GLAutoDrawableBase implements GLAutoDrawable, Wind
}
@Override
- public final ReparentOperation reparentWindow(NativeWindow newParent) {
- return window.reparentWindow(newParent);
- }
-
- @Override
- public final ReparentOperation reparentWindow(NativeWindow newParent, int x, int y, boolean forceDestroyCreate) {
- return window.reparentWindow(newParent, x, y, forceDestroyCreate);
- }
-
- @Override
public final ReparentOperation reparentWindow(NativeWindow newParent, int x, int y, int hints) {
return window.reparentWindow(newParent, x, y, hints);
}
diff --git a/src/newt/classes/jogamp/newt/WindowImpl.java b/src/newt/classes/jogamp/newt/WindowImpl.java
index 0df105ff0..0501f6ad6 100644
--- a/src/newt/classes/jogamp/newt/WindowImpl.java
+++ b/src/newt/classes/jogamp/newt/WindowImpl.java
@@ -1586,16 +1586,6 @@ public abstract class WindowImpl implements Window, NEWTEventConsumer
private final ReparentActionRecreate reparentActionRecreate = new ReparentActionRecreate();
@Override
- public final ReparentOperation reparentWindow(NativeWindow newParent) {
- return reparentWindow(newParent, -1, -1, 0);
- }
-
- @Override
- public final ReparentOperation reparentWindow(NativeWindow newParent, int x, int y, boolean forceDestroyCreate) {
- return reparentWindow(newParent, x, y, forceDestroyCreate ? REPARENT_HINT_FORCE_RECREATION : 0);
- }
-
- @Override
public final ReparentOperation reparentWindow(NativeWindow newParent, int x, int y, int hints) {
final ReparentAction reparentAction = new ReparentAction(newParent, x, y, hints);
runOnEDTIfAvail(true, reparentAction);
@@ -1920,12 +1910,6 @@ public abstract class WindowImpl implements Window, NEWTEventConsumer
}
@Override
- public final Rectangle getSurfaceBounds() {
- // FIXME HiDPI: Shortcut, may need to adjust if we change scaling methodology
- return new Rectangle(x * getPixelScaleX(), y * getPixelScaleY(), pixWidth, pixHeight);
- }
-
- @Override
public final int[] convertToWindowUnits(final int[] pixelUnitsAndResult) {
pixelUnitsAndResult[0] /= getPixelScaleX();
pixelUnitsAndResult[1] /= getPixelScaleY();
@@ -1947,16 +1931,6 @@ public abstract class WindowImpl implements Window, NEWTEventConsumer
return windowUnitsAndResult.scale(getPixelScaleX(), getPixelScaleY());
}
- @Override
- public final Rectangle convertToWindowUnits(final Rectangle pixelUnitsAndResult) {
- return pixelUnitsAndResult.scaleInv(getPixelScaleX(), getPixelScaleY());
- }
-
- @Override
- public final Rectangle convertToPixelUnits(final Rectangle windowUnitsAndResult) {
- return windowUnitsAndResult.scale(getPixelScaleX(), getPixelScaleY());
- }
-
/** HiDPI: We currently base scaling of window units to pixel units on an integer scale factor per component. */
protected final int getPixelScaleX() {
return hasPixelScale[0];
diff --git a/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode00cNEWT.java b/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode00cNEWT.java
index 3a5e96880..714e75695 100644
--- a/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode00cNEWT.java
+++ b/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode00cNEWT.java
@@ -57,6 +57,7 @@ import java.util.List;
import javax.media.nativewindow.NativeWindowFactory;
import javax.media.nativewindow.util.Dimension;
+import javax.media.nativewindow.util.DimensionImmutable;
import javax.media.nativewindow.util.Rectangle;
/**
@@ -127,9 +128,9 @@ public class TestScreenMode00cNEWT extends UITestCase {
Assert.assertNotNull(window0);
Rectangle window0WindowBounds = window0.getBounds();
- Rectangle window0SurfaceBounds = window0.getSurfaceBounds();
+ DimensionImmutable window0SurfaceSize = new Dimension(window0.getSurfaceWidth(), window0.getSurfaceHeight());
System.err.println("Test.0: Window bounds : "+window0WindowBounds+" [wu] within "+screen.getViewportInWindowUnits()+" [wu]");
- System.err.println("Test.0: Window bounds : "+window0SurfaceBounds+" [pixels]");
+ System.err.println("Test.0: Window size : "+window0SurfaceSize+" [pixels]");
System.err.println("Test.0: Screen viewport : "+screen.getViewport()+" [pixels]");
final List<MonitorMode> allMonitorModes = screen.getMonitorModes();
@@ -190,9 +191,9 @@ public class TestScreenMode00cNEWT extends UITestCase {
System.err.println("[1] has current cached : "+mmCachedCurrent);
System.err.println("[1] has current queried : "+mmQueriedCurrent+", equal "+mmCurrentEquals);
window0WindowBounds = window0.getBounds();
- window0SurfaceBounds = window0.getSurfaceBounds();
+ window0SurfaceSize = new Dimension(window0.getSurfaceWidth(), window0.getSurfaceHeight());
System.err.println("Test.1: Window bounds : "+window0WindowBounds+" [wu] within "+screen.getViewportInWindowUnits()+" [wu]");
- System.err.println("Test.1: Window bounds : "+window0SurfaceBounds+" [pixels]");
+ System.err.println("Test.1: Window size : "+window0SurfaceSize+" [pixels]");
System.err.println("Test.1: Screen viewport : "+screen.getViewport()+" [pixels]");
Assert.assertTrue(monitor.isModeChangedByUs());
diff --git a/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01aNEWT.java b/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01aNEWT.java
index 808571d05..cb9192a70 100644
--- a/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01aNEWT.java
+++ b/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01aNEWT.java
@@ -56,6 +56,7 @@ import com.jogamp.opengl.test.junit.util.UITestCase;
import java.util.List;
import javax.media.nativewindow.util.Dimension;
+import javax.media.nativewindow.util.DimensionImmutable;
import javax.media.nativewindow.util.Rectangle;
/**
@@ -130,9 +131,9 @@ public class TestScreenMode01aNEWT extends UITestCase {
final MonitorDevice monitor = screen.getMonitorDevices().get(0);
Rectangle window0WindowBounds = window0.getBounds();
- Rectangle window0SurfaceBounds = window0.getSurfaceBounds();
+ DimensionImmutable window0SurfaceSize = new Dimension(window0.getSurfaceWidth(), window0.getSurfaceHeight());
System.err.println("Test.0: Window bounds : "+window0WindowBounds+" [wu] within "+screen.getViewportInWindowUnits()+" [wu]");
- System.err.println("Test.0: Window bounds : "+window0SurfaceBounds+" [pixels]");
+ System.err.println("Test.0: Window size : "+window0SurfaceSize+" [pixels]");
System.err.println("Test.0: Screen viewport : "+screen.getViewport()+" [pixels], "+screen.getViewportInWindowUnits()+" [wu]");
System.err.println("Test.0: Monitor viewport : "+monitor.getViewport()+" [pixels], "+monitor.getViewportInWindowUnits()+" [wu]");
@@ -193,9 +194,9 @@ public class TestScreenMode01aNEWT extends UITestCase {
System.err.println("[1] has current cached : "+mmCachedCurrent);
System.err.println("[1] has current queried : "+mmQueriedCurrent+", equal "+mmCurrentEquals);
window0WindowBounds = window0.getBounds();
- window0SurfaceBounds = window0.getSurfaceBounds();
+ window0SurfaceSize = new Dimension(window0.getSurfaceWidth(), window0.getSurfaceHeight());
System.err.println("Test.1: Window bounds : "+window0WindowBounds+" [wu] within "+screen.getViewportInWindowUnits()+" [wu]");
- System.err.println("Test.1: Window bounds : "+window0SurfaceBounds+" [pixels]");
+ System.err.println("Test.1: Window size : "+window0SurfaceSize+" [pixels]");
System.err.println("Test.1: Screen viewport : "+screen.getViewport()+" [pixels], "+screen.getViewportInWindowUnits()+" [wu]");
System.err.println("Test.1: Monitor viewport : "+monitor.getViewport()+" [pixels], "+monitor.getViewportInWindowUnits()+" [wu]");
diff --git a/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01bNEWT.java b/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01bNEWT.java
index 6bf9831dc..e862e6b8e 100644
--- a/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01bNEWT.java
+++ b/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01bNEWT.java
@@ -57,6 +57,7 @@ import com.jogamp.opengl.util.Animator;
import java.util.List;
import javax.media.nativewindow.util.Dimension;
+import javax.media.nativewindow.util.DimensionImmutable;
import javax.media.nativewindow.util.Rectangle;
import javax.media.nativewindow.util.RectangleImmutable;
@@ -157,9 +158,9 @@ public class TestScreenMode01bNEWT extends UITestCase {
GLWindow window0 = createWindow(screen, caps, "win0", screenXPos, screenYPos, width, height);
Assert.assertNotNull(window0);
Rectangle window0WindowBounds = window0.getBounds();
- Rectangle window0SurfaceBounds = window0.getSurfaceBounds();
+ DimensionImmutable window0SurfaceSize = new Dimension(window0.getSurfaceWidth(), window0.getSurfaceHeight());
System.err.println("Test.0: Window bounds : "+window0WindowBounds+" [wu] within "+screen.getViewportInWindowUnits()+" [wu]");
- System.err.println("Test.0: Window bounds : "+window0SurfaceBounds+" [pixels]");
+ System.err.println("Test.0: Window size : "+window0SurfaceSize+" [pixels]");
final Animator anim = new Animator(window0);
anim.start();
@@ -226,10 +227,10 @@ public class TestScreenMode01bNEWT extends UITestCase {
}
window0WindowBounds = window0.getBounds();
- window0SurfaceBounds = window0.getSurfaceBounds();
+ window0SurfaceSize = new Dimension(window0.getSurfaceWidth(), window0.getSurfaceHeight());
System.err.println("Test.1: Screen : "+screen);
System.err.println("Test.1: Window bounds : "+window0WindowBounds+" [wu] within "+screen.getViewportInWindowUnits()+" [wu]");
- System.err.println("Test.1: Window bounds : "+window0SurfaceBounds+" [pixels]");
+ System.err.println("Test.1: Window size : "+window0SurfaceSize+" [pixels]");
System.err.println("Test.1: Screen viewport : "+screen.getViewport()+" [pixels]");
System.err.println("Test.1: Monitor viewport : "+monitor.getViewport()+" [pixels], "+monitor.getViewportInWindowUnits()+" [wu]");
System.err.println("Test.1: Window main-mon : "+window0.getMainMonitor());
@@ -253,10 +254,10 @@ public class TestScreenMode01bNEWT extends UITestCase {
}
window0WindowBounds = window0.getBounds();
- window0SurfaceBounds = window0.getSurfaceBounds();
+ window0SurfaceSize = new Dimension(window0.getSurfaceWidth(), window0.getSurfaceHeight());
System.err.println("Test.2: Screen : "+screen);
System.err.println("Test.2: Window bounds : "+window0WindowBounds+" [wu] within "+screen.getViewportInWindowUnits()+" [wu]");
- System.err.println("Test.2: Window bounds : "+window0SurfaceBounds+" [pixels]");
+ System.err.println("Test.2: Window size : "+window0SurfaceSize+" [pixels]");
System.err.println("Test.2: Screen viewport : "+screen.getViewport()+" [pixels]");
System.err.println("Test.2: Monitor viewport : "+monitor.getViewport()+" [pixels], "+monitor.getViewportInWindowUnits()+" [wu]");
System.err.println("Test.2: Window main-mon : "+window0.getMainMonitor());
diff --git a/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01cNEWT.java b/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01cNEWT.java
index 986f92273..bbc1cb2da 100644
--- a/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01cNEWT.java
+++ b/src/test/com/jogamp/opengl/test/junit/newt/mm/TestScreenMode01cNEWT.java
@@ -56,6 +56,8 @@ import com.jogamp.opengl.util.Animator;
import java.util.ArrayList;
import java.util.List;
+import javax.media.nativewindow.util.Dimension;
+import javax.media.nativewindow.util.DimensionImmutable;
import javax.media.nativewindow.util.Rectangle;
import javax.media.nativewindow.util.RectangleImmutable;
@@ -201,9 +203,9 @@ public class TestScreenMode01cNEWT extends UITestCase {
GLWindow window0 = createWindow(screen, caps, "win0", screenXPos, screenYPos, width, height);
Assert.assertNotNull(window0);
Rectangle window0WindowBounds = window0.getBounds();
- Rectangle window0SurfaceBounds = window0.getSurfaceBounds();
+ DimensionImmutable window0SurfaceSize = new Dimension(window0.getSurfaceWidth(), window0.getSurfaceHeight());
System.err.println("Test.0: Window bounds : "+window0WindowBounds+" [wu] within "+screen.getViewportInWindowUnits()+" [wu]");
- System.err.println("Test.0: Window bounds : "+window0SurfaceBounds+" [pixels]");
+ System.err.println("Test.0: Window size : "+window0SurfaceSize+" [pixels]");
System.err.println("Test.0: Screen viewport : "+screen.getViewport()+" [pixels]");
final Animator anim = new Animator(window0);
@@ -222,9 +224,9 @@ public class TestScreenMode01cNEWT extends UITestCase {
monitor = window0.getMainMonitor();
window0WindowBounds = window0.getBounds();
- window0SurfaceBounds = window0.getSurfaceBounds();
+ window0SurfaceSize = new Dimension(window0.getSurfaceWidth(), window0.getSurfaceHeight());
System.err.println("Test.1: Window bounds : "+window0WindowBounds+" [wu] within "+screen.getViewportInWindowUnits()+" [wu]");
- System.err.println("Test.1: Window bounds : "+window0SurfaceBounds+" [pixels]");
+ System.err.println("Test.1: Window size : "+window0SurfaceSize+" [pixels]");
System.err.println("Test.1: Screen viewport : "+screen.getViewport()+" [pixels]");
System.err.println("Test.1: Monitor viewport : "+monitor.getViewport()+" [pixels], "+monitor.getViewportInWindowUnits()+" [wu]");
if( !spanAcrossMonitors ) {
@@ -244,10 +246,10 @@ public class TestScreenMode01cNEWT extends UITestCase {
window0.setFullscreen(false);
window0WindowBounds = window0.getBounds();
- window0SurfaceBounds = window0.getSurfaceBounds();
+ window0SurfaceSize = new Dimension(window0.getSurfaceWidth(), window0.getSurfaceHeight());;
monitor = window0.getMainMonitor();
System.err.println("Test.2: Window bounds : "+window0WindowBounds+" [wu] within "+screen.getViewportInWindowUnits()+" [wu]");
- System.err.println("Test.2: Window bounds : "+window0SurfaceBounds+" [pixels]");
+ System.err.println("Test.2: Window size : "+window0SurfaceSize+" [pixels]");
System.err.println("Test.2: Screen viewport : "+screen.getViewport()+" [pixels]");
System.err.println("Test.2: Monitor viewport : "+monitor.getViewport()+" [pixels], "+monitor.getViewportInWindowUnits()+" [wu]");