diff -r df3513758d20 -r a06c98795b01 javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/Knockout.java --- a/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/Knockout.java Sun Jan 20 20:48:37 2013 +0100 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/Knockout.java Sun Jan 20 21:01:46 2013 +0100 @@ -26,15 +26,13 @@ */ @ExtraJavaScript(resource = "org/apidesign/bck2brwsr/htmlpage/knockout-2.2.1.js") public final class Knockout { - - private Knockout() { } - public static void applyBindings( + public static Knockout applyBindings( Class modelClass, M model, String[] propsGettersAndSetters ) { - Object bindings = new Object(); + Knockout bindings = new Knockout(); for (int i = 0; i < propsGettersAndSetters.length; i += 3) { bind(bindings, model, propsGettersAndSetters[i], propsGettersAndSetters[i + 1], @@ -42,6 +40,13 @@ ); } applyBindings(bindings); + return bindings; + } + + @JavaScriptBody(args = { "prop" }, body = + "this[prop].valueHasMutated();" + ) + public void valueHasMutated(String prop) { } @JavaScriptBody(args = { "bindings", "model", "prop", "getter", "setter" }, body =