diff -r 0f775bd8d210 -r 6fed3663b751 javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/HTML5GraphicsEnvironment.java --- a/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/HTML5GraphicsEnvironment.java Sun Sep 08 10:58:10 2013 +0200 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/HTML5GraphicsEnvironment.java Mon Sep 23 07:09:13 2013 -0700 @@ -30,16 +30,23 @@ import net.java.html.canvas.spi.GraphicsEnvironment; import org.apidesign.bck2brwsr.core.JavaScriptBody; import org.apidesign.bck2brwsr.htmlpage.api.Canvas; +import org.openide.util.lookup.ServiceProvider; /** * * @author Anton Epple */ +@ServiceProvider(service = GraphicsEnvironment.class) public class HTML5GraphicsEnvironment implements GraphicsEnvironment { Object context; Canvas canvas; + public HTML5GraphicsEnvironment() { + } + + + public HTML5GraphicsEnvironment(Object contextImpl, Canvas canvas) { this.context = contextImpl; this.canvas = canvas; @@ -233,7 +240,7 @@ "gradient.addColorStop(position,color)") private static native void addColorStopImpl(Object gradient, double position, String color); - @JavaScriptBody(args = {"context", "obj"}, body = "console.log('style: '+obj);context.fillStyle=obj;") + @JavaScriptBody(args = {"context", "obj"}, body = "context.fillStyle=obj;") private native void setFillStyleImpl(Object context, Object obj); @JavaScriptBody(args = {"style"}, body = "this._context().strokeStyle=style.valueOf();") @@ -470,13 +477,16 @@ canvas.setWidth(width); } - @JavaScriptBody(args = {"src"}, body = "var image = new Image(); image.src = src; return image;") +// @JavaScriptBody(args = {"src"}, body = "var image = new Image();console.log('image complete '+image.complete);image.src = './'+ src; return image;") + @JavaScriptBody(args = {"src"}, body = "console.log ('looking up image by id '+src);return document.getElementById(src);") private static native Object createImage(String src); @Override public int getWidth(Image image, Object nativeImage) { + if (nativeImage == null) { nativeImage = createImage(image.getSrc()); + } return getWidth(nativeImage); }