rt/vm/src/test/java/org/apidesign/vm4brwsr/HtmlAnnotations.java
changeset 1248 a3eb8b0dfb81
parent 1244 4b43ab1f72e8
     1.1 --- a/rt/vm/src/test/java/org/apidesign/vm4brwsr/HtmlAnnotations.java	Fri Jul 12 11:07:58 2013 +0200
     1.2 +++ b/rt/vm/src/test/java/org/apidesign/vm4brwsr/HtmlAnnotations.java	Fri Jul 12 16:06:38 2013 +0200
     1.3 @@ -26,6 +26,9 @@
     1.4   */
     1.5  @JavaScriptResource("htmlannotations.js")
     1.6  public class HtmlAnnotations {
     1.7 +    private Object callback;
     1.8 +    
     1.9 +    
    1.10      @JavaScriptBody(args = {}, body = "return 42;")
    1.11      public static int fourtyTwo() {
    1.12          return -1;
    1.13 @@ -59,6 +62,14 @@
    1.14          return l;
    1.15      }
    1.16      
    1.17 +    protected void onError(Object obj) throws Exception {
    1.18 +        callback = obj;
    1.19 +    }
    1.20 +    
    1.21 +    Object getError() {
    1.22 +        return callback;
    1.23 +    }
    1.24 +    
    1.25      public static Object create() {
    1.26          return new HtmlAnnotations();
    1.27      }
    1.28 @@ -66,4 +77,10 @@
    1.29          "return impl.@org.apidesign.vm4brwsr.HtmlAnnotations::chooseLong(ZZJJ)(true, false, a, b);"
    1.30      )
    1.31      public static native long first(Object impl, long a, long b);
    1.32 +    
    1.33 +    @JavaScriptBody(args = { "impl", "d" }, javacall = true, body = 
    1.34 +        "impl.@org.apidesign.vm4brwsr.HtmlAnnotations::onError(Ljava/lang/Object;)(d);" +
    1.35 +        "return impl.@org.apidesign.vm4brwsr.HtmlAnnotations::getError()();"
    1.36 +    )
    1.37 +    public static native Double onError(Object impl, Double d);
    1.38  }