public void bindControl(JComponent control, String propertyName, boolean instant) {
    final ControlValueAccessor controlAccessor;
    if (control instanceof JCheckBox) {
      controlAccessor = ValueAccessor.checkBoxAccessor((JCheckBox)control);
    }
    else if (control instanceof JTextField){
      controlAccessor = ValueAccessor.textFieldAccessor((JTextField)control);
    }
    else if (control instanceof EditorTextField) {
      controlAccessor = ValueAccessor.editorTextFieldAccessor((EditorTextField)control);
    }
    else {
      throw new IllegalArgumentException("Cannot bind control of type " + control.getClass() + ".\n" +
                                         "Use bindControl(ControlValueAccessor, String) instead.");
    }
    bindControl(controlAccessor, propertyName, instant);
  }
public void bindControl(JComponent control, String propertyName, boolean instant)