X-Git-Url: http://git.megacz.com/?p=org.ibex.core.git;a=blobdiff_plain;f=src%2Forg%2Fxwt%2Fplat%2FWin32.java;h=a17323b05edbb6a90eb68c85b175efe02b23a005;hp=168e9ff518b99a5a32d56ca511317742af8c8195;hb=de378041d5ca2aca1a2b5a31ef15ae90a86c977f;hpb=60f510fe84aa058fb3f33addc99fd943b2cd03fc diff --git a/src/org/xwt/plat/Win32.java b/src/org/xwt/plat/Win32.java index 168e9ff..a17323b 100644 --- a/src/org/xwt/plat/Win32.java +++ b/src/org/xwt/plat/Win32.java @@ -4,11 +4,11 @@ package org.xwt.plat; import org.xwt.*; import org.xwt.util.*; import java.util.*; +import org.xwt.js.*; import java.io.*; /** Platform specific code for GCJ-compiled Win32 binaries */ public class Win32 extends GCJ { - // Initialization //////////////////////////////////////////////////////////////////////////// // Win32 often asks for a DC/Handle when it doesn't really need one @@ -38,21 +38,13 @@ public class Win32 extends GCJ { public static native String getTempPath(); public static native void natInit(); + public static native void natPreInit(); protected native String _fileDialog(String suggestedFileName, boolean write); - public Win32() { } - - public void init() { - String logfile = getTempPath() + "xwt-log.txt"; - try { - PrintStream ps = new PrintStream(new FileOutputStream(logfile)); - System.setOut(ps); - System.setErr(ps); - } catch (Throwable e) { - criticalAbort("Exception while attempting to redirect logging to " + logfile + " -- " + e); - } + public Win32() { natPreInit(); } + public void postInit() { new Thread() { public void run() { natInit(); } }.start(); messagePumpStarted.block(); } @@ -65,7 +57,7 @@ public class Win32 extends GCJ { protected String getDescriptiveName() { return "GCJ Win32 Binary"; } protected Surface _createSurface(Box b, boolean framed) { return new Win32Surface(b, framed); } protected PixelBuffer _createPixelBuffer(int w, int h, Surface owner) { return new Win32PixelBuffer(w, h, (Win32Surface)owner); } - protected Picture _createPicture() { return new Win32Picture(); } + protected Picture _createPicture(JS r) { return new Win32Picture(r); } protected native int _getScreenWidth(); protected native int _getScreenHeight(); protected boolean _supressDirtyOnResize() { return false; } @@ -92,8 +84,8 @@ public class Win32 extends GCJ { HTTP.Proxy ret = new HTTP.Proxy(); if (container[2] != null) { - ret.proxyAutoConfigJSFunction = HTTP.Proxy.getProxyAutoConfigJSFunction(container[2]); - if (ret.proxyAutoConfigJSFunction != null) return ret; + ret.proxyAutoConfigFunction = HTTP.Proxy.getProxyAutoConfigFunction(container[2]); + if (ret.proxyAutoConfigFunction != null) return ret; } if (container[0] == null) return null; @@ -205,8 +197,6 @@ public class Win32 extends GCJ { // Win32Picture //////////////////////////////////////////////////////////////////////////// public static class Win32Picture extends Picture { - int w = 0, h = 0; - int[] data = null; /** the Win32 bitmap version of this Picture */ int hbitmap = -1; @@ -226,8 +216,9 @@ public class Win32 extends GCJ { /** dc of the mask */ int maskdc = -1; - public int getWidth() { return w; }; - public int getHeight() { return h; }; + public Win32Picture(JS r) { super(r); } + public int getWidth() { return width; }; + public int getHeight() { return height; }; public int[] getData() { return data; } boolean initialized = false; public void init() { if (!initialized && isLoaded) natInit(); initialized = true; }