/** Removes all listeners from the bound fields and unbinds properties. */ public void unbind() { // wrap in array list to avoid CME for (Field<?> field : new ArrayList<Field<?>>(getFields())) { field.removeValueChangeListener(this); if (field instanceof TextChangeNotifier) { final TextChangeNotifier abstractTextField = (TextChangeNotifier) field; abstractTextField.removeTextChangeListener(this); } unbind(field); } fieldsWithInitiallyDisabledValidation.clear(); }
public FieldQuery<F> removeValueChangeListener(ValueChangeListener listener) { for (Field<?> f : this) { f.removeValueChangeListener(listener); } return createQuery(); }