1.1 --- a/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/PageProcessor.java Sun Mar 31 05:43:38 2013 +0200
1.2 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/PageProcessor.java Sun Mar 31 06:46:25 2013 +0200
1.3 @@ -128,12 +128,23 @@
1.4 w.append("package " + pkg + ";\n");
1.5 w.append("import org.apidesign.bck2brwsr.htmlpage.api.*;\n");
1.6 w.append("import org.apidesign.bck2brwsr.htmlpage.KOList;\n");
1.7 + w.append("import org.apidesign.bck2brwsr.core.JavaScriptOnly;\n");
1.8 w.append("final class ").append(className).append(" {\n");
1.9 w.append(" private Object json;\n");
1.10 w.append(" private boolean locked;\n");
1.11 w.append(" private org.apidesign.bck2brwsr.htmlpage.Knockout ko;\n");
1.12 w.append(body.toString());
1.13 w.append(" private static Class<" + e.getSimpleName() + "> modelFor() { return null; }\n");
1.14 + for (int i = 0; i < propsGetSet.size(); i += 4) {
1.15 + w.append(" @JavaScriptOnly(name=\"" + propsGetSet.get(i) + "\",\n");
1.16 + w.append(" value=\"function() { ");
1.17 + final String setter = propsGetSet.get(i + 2);
1.18 + if (setter != null) {
1.19 + w.append("if (arguments.length == 1) this." + setter + "(arguments[0]); ");
1.20 + }
1.21 + w.append("return this." + propsGetSet.get(i + 1) + "();}\")\n");
1.22 + w.append(" private static native void __accessor" + i + "();");
1.23 + }
1.24 w.append("}\n");
1.25 } finally {
1.26 w.close();