javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/PageProcessor.java
branchmodel
changeset 761 ade90921ede5
parent 760 4bd6f3bc6c64
child 763 ecd7294f1e17
     1.1 --- a/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/PageProcessor.java	Mon Feb 18 12:26:16 2013 +0100
     1.2 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/PageProcessor.java	Mon Feb 18 13:03:01 2013 +0100
     1.3 @@ -97,6 +97,7 @@
     1.4                  try {
     1.5                      w.append("package " + pkg + ";\n");
     1.6                      w.append("import org.apidesign.bck2brwsr.htmlpage.api.*;\n");
     1.7 +                    w.append("import org.apidesign.bck2brwsr.htmlpage.KOList;\n");
     1.8                      w.append("final class ").append(className).append(" {\n");
     1.9                      w.append("  private boolean locked;\n");
    1.10                      if (!initializeOnClick(className, (TypeElement) e, w, pp)) {
    1.11 @@ -320,9 +321,21 @@
    1.12              String[] gs = toGetSet(p.name(), tn, p.array());
    1.13  
    1.14              if (p.array()) {
    1.15 -                w.write("private java.util.List<" + tn + "> prop_" + p.name() + " = new java.util.ArrayList<" + tn + ">();\n");
    1.16 +                w.write("private KOList<" + tn + "> prop_" + p.name() + " = new KOList<" + tn + ">(\""
    1.17 +                    + p.name() + "\"");
    1.18 +                final Collection<String> dependants = deps.get(p.name());
    1.19 +                if (dependants != null) {
    1.20 +                    for (String depProp : dependants) {
    1.21 +                        w.write(", ");
    1.22 +                        w.write('\"');
    1.23 +                        w.write(depProp);
    1.24 +                        w.write('\"');
    1.25 +                    }
    1.26 +                }
    1.27 +                w.write(");\n");
    1.28                  w.write("public java.util.List<" + tn + "> " + gs[0] + "() {\n");
    1.29                  w.write("  if (locked) throw new IllegalStateException();\n");
    1.30 +                w.write("  prop_" + p.name() + ".assign(ko);\n");
    1.31                  w.write("  return prop_" + p.name() + ";\n");
    1.32                  w.write("}\n");
    1.33              } else {