1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.vectomatic.svg.edit.client.gxt.binding;
19
20 import org.vectomatic.svg.edit.client.gxt.form.DashArrayField;
21
22 import com.extjs.gxt.ui.client.data.ModelData;
23 import com.extjs.gxt.ui.client.event.Events;
24 import com.extjs.gxt.ui.client.event.FieldEvent;
25 import com.extjs.gxt.ui.client.event.Listener;
26 import com.google.gwt.core.client.GWT;
27
28
29
30
31
32
33 public class DashArrayFieldBinding extends DelayedBindingBase {
34 private Listener<FieldEvent> afterEditListener;
35
36 public DashArrayFieldBinding(DashArrayField field, String property) {
37 super(field, property);
38 afterEditListener = new Listener<FieldEvent>() {
39 @Override
40 public void handleEvent(FieldEvent be) {
41 commitChanges();
42 }
43 };
44 }
45
46 @Override
47 public void bind(ModelData model) {
48 GWT.log("DashArrayFieldBinding.bind(" + model + ")");
49 super.bind(model);
50 field.addListener(Events.AfterEdit, afterEditListener);
51 currentValue = model.get(property);
52 }
53
54 @Override
55 public void unbind() {
56 field.removeListener(Events.AfterEdit, afterEditListener);
57 super.unbind();
58 }
59
60 }