@Override
 public void updateAllInputsValid() {
   allInputsValid.set(
       isAccountNameValid()
           && perfectMoneyValidator.validate(perfectMoneyAccount.getAccountNr()).isValid
           && perfectMoneyAccount.getTradeCurrencies().size() > 0);
 }
  @Override
  public void addFormForAddAccount() {
    gridRowFrom = gridRow + 1;

    InputTextField holderNameInputTextField =
        addLabelInputTextField(gridPane, ++gridRow, "Account holder name:").second;
    holderNameInputTextField.setValidator(inputValidator);
    holderNameInputTextField
        .textProperty()
        .addListener(
            (ov, oldValue, newValue) -> {
              perfectMoneyAccount.setHolderName(newValue);
              updateFromInputs();
            });

    accountNrInputTextField = addLabelInputTextField(gridPane, ++gridRow, "Account nr.:").second;
    accountNrInputTextField.setValidator(perfectMoneyValidator);
    accountNrInputTextField
        .textProperty()
        .addListener(
            (ov, oldValue, newValue) -> {
              perfectMoneyAccount.setAccountNr(newValue);
              updateFromInputs();
            });

    addLabelTextField(
        gridPane,
        ++gridRow,
        "Currency:",
        perfectMoneyAccount.getSingleTradeCurrency().getCodeAndName());
    addAllowedPeriod();
    addAccountNameTextFieldWithAutoFillCheckBox();
  }
 @Override
 public void addFormForDisplayAccount() {
   gridRowFrom = gridRow;
   addLabelTextField(
       gridPane,
       gridRow,
       "Account name:",
       perfectMoneyAccount.getAccountName(),
       Layout.FIRST_ROW_AND_GROUP_DISTANCE);
   addLabelTextField(
       gridPane,
       ++gridRow,
       "Payment method:",
       BSResources.get(perfectMoneyAccount.getPaymentMethod().getId()));
   addLabelTextField(
       gridPane, ++gridRow, "Account holder name:", perfectMoneyAccount.getHolderName());
   TextField field =
       addLabelTextField(gridPane, ++gridRow, "Account nr.:", perfectMoneyAccount.getAccountNr())
           .second;
   field.setMouseTransparent(false);
   addLabelTextField(
       gridPane,
       ++gridRow,
       "Currency:",
       perfectMoneyAccount.getSingleTradeCurrency().getCodeAndName());
   addAllowedPeriod();
 }