You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by jt...@apache.org on 2019/02/15 19:57:28 UTC
[incubator-netbeans-html4j] 05/15: Keep js() internal to Knockout
instance
This is an automated email from the ASF dual-hosted git repository.
jtulach pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-netbeans-html4j.git
commit e31a1a2e01918df2be0669d6c2a6654088a6f737
Author: Jaroslav Tulach <ja...@apidesign.org>
AuthorDate: Wed Feb 13 11:08:15 2019 +0100
Keep js() internal to Knockout instance
---
ko4j/src/main/java/org/netbeans/html/ko4j/KOTech.java | 4 ++--
ko4j/src/main/java/org/netbeans/html/ko4j/Knockout.java | 16 ++++++++++++----
2 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/ko4j/src/main/java/org/netbeans/html/ko4j/KOTech.java b/ko4j/src/main/java/org/netbeans/html/ko4j/KOTech.java
index 04f9928..9586c8c 100644
--- a/ko4j/src/main/java/org/netbeans/html/ko4j/KOTech.java
+++ b/ko4j/src/main/java/org/netbeans/html/ko4j/KOTech.java
@@ -74,7 +74,7 @@ Technology.ApplyId<Knockout>, Technology.ToJavaScript<Knockout> {
if (newValue instanceof Enum) {
newValue = newValue.toString();
}
- Knockout.valueHasMutated(data.js(), propertyName, oldValue, newValue);
+ data.valueHasMutated(propertyName, oldValue, newValue);
}
}
@@ -89,7 +89,7 @@ Technology.ApplyId<Knockout>, Technology.ToJavaScript<Knockout> {
}
@Override
public void applyBindings(String id, Knockout data) {
- Object ko = Knockout.applyBindings(id, data.js());
+ Object ko = data.applyBindings(id);
if (ko instanceof Knockout) {
((Knockout)ko).hold();
applied.add((Knockout) ko);
diff --git a/ko4j/src/main/java/org/netbeans/html/ko4j/Knockout.java b/ko4j/src/main/java/org/netbeans/html/ko4j/Knockout.java
index 70c3287..f83534f 100644
--- a/ko4j/src/main/java/org/netbeans/html/ko4j/Knockout.java
+++ b/ko4j/src/main/java/org/netbeans/html/ko4j/Knockout.java
@@ -59,8 +59,8 @@ final class Knockout {
private PropertyBinding[] props;
private FunctionBinding[] funcs;
private final Map<Fn.Presenter,Object> objs = new HashMap<Fn.Presenter, Object>();
- private Object copyFrom;
- private Object strong;
+ private final Object copyFrom;
+ private final Object strong;
public Knockout(Object model, Object copyFrom, PropertyBinding[] props, FunctionBinding[] funcs) {
this.strong = model;
@@ -144,6 +144,10 @@ final class Knockout {
funcs[index].call(data, ev);
}
+ final void valueHasMutated(String propertyName, Object oldValue, Object newValue) {
+ valueHasMutated(js(), propertyName, oldValue, newValue);
+ }
+
@JavaScriptBody(args = { "model", "prop", "oldValue", "newValue" },
wait4js = false,
body =
@@ -161,10 +165,14 @@ final class Knockout {
+ " }\n"
+ "}\n"
)
- native static void valueHasMutated(
+ private native static void valueHasMutated(
Object model, String prop, Object oldValue, Object newValue
);
+ final Object applyBindings(String id) {
+ return applyBindings(id, js());
+ }
+
@JavaScriptBody(args = { "id", "bindings" }, body =
"var d = window['document'];\n" +
"var e = id ? d['getElementById'](id) : d['body'];\n" +
@@ -172,7 +180,7 @@ final class Knockout {
"ko['applyBindings'](bindings, e);\n" +
"return bindings['ko4j'];\n"
)
- native static Object applyBindings(String id, Object bindings);
+ private native static Object applyBindings(String id, Object bindings);
@JavaScriptBody(args = { "cnt" }, body =
"var arr = new Array(cnt);\n" +
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists