aboutsummaryrefslogtreecommitdiffstats
path: root/src/newt/classes/com/sun/javafx/newt/Window.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/newt/classes/com/sun/javafx/newt/Window.java')
-rwxr-xr-xsrc/newt/classes/com/sun/javafx/newt/Window.java21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/newt/classes/com/sun/javafx/newt/Window.java b/src/newt/classes/com/sun/javafx/newt/Window.java
index 3321715c3..918e54e1f 100755
--- a/src/newt/classes/com/sun/javafx/newt/Window.java
+++ b/src/newt/classes/com/sun/javafx/newt/Window.java
@@ -34,7 +34,9 @@
package com.sun.javafx.newt;
import com.sun.javafx.newt.impl.Debug;
+
import javax.media.nativewindow.*;
+import com.sun.nativewindow.impl.NWReflection;
import java.util.ArrayList;
import java.util.Iterator;
@@ -82,7 +84,7 @@ public abstract class Window implements NativeWindow
return windowClass;
}
- protected static Window create(long parentWindowHandle, String type, Screen screen, Capabilities caps, boolean undecorated) {
+ protected static Window create(String type, long parentWindowHandle, Screen screen, Capabilities caps, boolean undecorated) {
try {
Class windowClass = getWindowClass(type);
Window window = (Window) windowClass.newInstance();
@@ -97,6 +99,21 @@ public abstract class Window implements NativeWindow
}
}
+ protected static Window create(String type, Object[] cstrArguments, Screen screen, Capabilities caps, boolean undecorated) {
+ try {
+ Class windowClass = getWindowClass(type);
+ Window window = (Window) NWReflection.createInstance( windowClass, cstrArguments ) ;
+ window.invalidate();
+ window.screen = screen;
+ window.setUndecorated(undecorated);
+ window.createNative(0, caps);
+ return window;
+ } catch (Throwable t) {
+ t.printStackTrace();
+ throw new NativeWindowException(t);
+ }
+ }
+
protected static Window wrapHandle(String type, Screen screen, AbstractGraphicsConfiguration config,
long windowHandle, boolean fullscreen, boolean visible,
int x, int y, int width, int height)
@@ -146,6 +163,8 @@ public abstract class Window implements NativeWindow
", surfaceHandle 0x"+Long.toHexString(getSurfaceHandle())+
", pos "+getX()+"/"+getY()+", size "+getWidth()+"x"+getHeight()+
", visible "+isVisible()+
+ ", undecorated "+undecorated+
+ ", fullscreen "+fullscreen+
", "+screen+
", wrappedWindow "+getWrappedWindow());