# HG changeset patch # User Anton Epple # Date 1369656781 -7200 # Node ID 633572e140959297734b1984befa14fd3a0560db # Parent c312f00cbace0306ac0e89e3cbaaf03d9a072872 fixed bugs in Image Handling diff -r c312f00cbace -r 633572e14095 javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/HTML5GraphicsEnvironment.java --- a/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/HTML5GraphicsEnvironment.java Mon May 27 12:53:39 2013 +0200 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/HTML5GraphicsEnvironment.java Mon May 27 14:13:01 2013 +0200 @@ -174,13 +174,13 @@ return drawImageImpl(context, nativeImage, sx, sy, sWidth, sHeight, x, y, width, height); } - @JavaScriptBody(args = {"ctx", "img", "x", "y", "width", "height"}, body = "ctx.drawImage(img,x,y,width,height); return img;") + @JavaScriptBody(args = {"ctx", "img", "x", "y", "width", "height"}, body = "img.onload=function(){ctx.drawImage(img,x,y,width,height);};ctx.drawImage(img,x,y,width,height); return img;") private native static Object drawImageImpl(Object ctx, Object img, double x, double y, double width, double height); - @JavaScriptBody(args = {"ctx", "img", "sx", "sy", "swidth", "sheight", "x", "y", "width", "height"}, body = "ctx.drawImage(img,sx,sy,swidth,sheight,x,y,width,height); return img;") + @JavaScriptBody(args = {"ctx", "img", "sx", "sy", "swidth", "sheight", "x", "y", "width", "height"}, body = "img.onload=function(){ctx.drawImage(img,sx,sy,swidth,sheight,x,y,width,height);}; ctx.drawImage(img,sx,sy,swidth,sheight,x,y,width,height); return img;") private native static Object drawImageImpl(Object ctx, Object img, double sx, double sy, double sWidth, double sHeight, double x, double y, double width, double height); - @JavaScriptBody(args = {"ctx", "img", "x", "y"}, body = "ctx.drawImage(img,x,y); return img;") + @JavaScriptBody(args = {"ctx", "img", "x", "y"}, body = "img.onload=function(){ctx.drawImage(img,x,y);}; ctx.drawImage(img,x,y); return img;") private native static Object drawImageImpl(Object ctx, Object img, double x, double y); public Object setFillStyle(Style style, Object nativeStyle) { @@ -233,7 +233,7 @@ "gradient.addColorStop(position,color)") private static native void addColorStopImpl(Object gradient, double position, String color); - @JavaScriptBody(args = {"context", "obj"}, body = "context.fillStyle=obj;") + @JavaScriptBody(args = {"context", "obj"}, body = "console.log('style: '+obj);context.fillStyle=obj;") private native void setFillStyleImpl(Object context, Object obj); @JavaScriptBody(args = {"style"}, body = "this._context().strokeStyle=style.valueOf();") @@ -448,8 +448,8 @@ @JavaScriptBody(args = {"context", "x0", "y0", "r0", "x1", "y1", "r1"}, body = "return context.createRadialGradient(x0,y0,r0,x1,y1,r1);") private static native Object createRadialGradientImpl(Object context, double x0, double y0, double r0, double x1, double y1, double r1); - @JavaScriptBody(args = {"path"}, body = "var b = new Image(); b.src=path; return b;") - public native Image getImageForPath(String path); +// @JavaScriptBody(args = {"path"}, body = "var b = new Image(); b.src=path; return b;") +// public native Image getImageForPathImpl(String path); @Override public int getHeight() { diff -r c312f00cbace -r 633572e14095 javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/ImageDataWrapper.java --- a/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/ImageDataWrapper.java Mon May 27 12:53:39 2013 +0200 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/ImageDataWrapper.java Mon May 27 14:13:01 2013 +0200 @@ -15,10 +15,7 @@ * this program. Look for COPYING file in the top folder. If not, see * http://opensource.org/licenses/GPL-2.0. */ -/* - * To change this template, choose Tools | Templates - * and open the template in the editor. - */ + package org.apidesign.bck2brwsr.htmlpage; import net.java.html.canvas.ImageData; @@ -120,7 +117,7 @@ getData().set(idx + 3, value); } - public static class Data { + private static class Data { Object data; diff -r c312f00cbace -r 633572e14095 javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/Logger.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/Logger.java Mon May 27 14:13:01 2013 +0200 @@ -0,0 +1,18 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package org.apidesign.bck2brwsr.htmlpage; + +import org.apidesign.bck2brwsr.core.JavaScriptBody; + +/** + * + * @author antonepple + */ +public class Logger { + + @JavaScriptBody(args = "message",body = "console.log(message)") + public static native void log(String text); + +} diff -r c312f00cbace -r 633572e14095 javaquery/canvas/src/main/java/net/java/html/canvas/GraphicsContext.java --- a/javaquery/canvas/src/main/java/net/java/html/canvas/GraphicsContext.java Mon May 27 12:53:39 2013 +0200 +++ b/javaquery/canvas/src/main/java/net/java/html/canvas/GraphicsContext.java Mon May 27 14:13:01 2013 +0200 @@ -323,7 +323,7 @@ } public Image getImageForPath(String path){ - return graphicsEnvironmentImpl.getImageForPath(path); + return new net.java.html.canvas.Image(path); } public int getHeight(){ diff -r c312f00cbace -r 633572e14095 javaquery/canvas/src/main/java/net/java/html/canvas/Image.java --- a/javaquery/canvas/src/main/java/net/java/html/canvas/Image.java Mon May 27 12:53:39 2013 +0200 +++ b/javaquery/canvas/src/main/java/net/java/html/canvas/Image.java Mon May 27 14:13:01 2013 +0200 @@ -30,7 +30,7 @@ private Object cached; private int cacheHash; - void Image(String src) { + Image(String src) { this.src = src; } diff -r c312f00cbace -r 633572e14095 javaquery/canvas/src/main/java/net/java/html/canvas/spi/GraphicsEnvironment.java --- a/javaquery/canvas/src/main/java/net/java/html/canvas/spi/GraphicsEnvironment.java Mon May 27 12:53:39 2013 +0200 +++ b/javaquery/canvas/src/main/java/net/java/html/canvas/spi/GraphicsEnvironment.java Mon May 27 14:13:01 2013 +0200 @@ -188,8 +188,6 @@ public void setGlobalCompositeOperation(String operation); public String getGlobalCompositeOperation(); - - public Image getImageForPath(String path); public int getHeight();