@Override
      protected void textChanged(@NotNull DocumentEvent e) {
        if (myExternalModify) {
          return;
        }
        myModifyingLocation = true;
        String path = locationField.getText().trim();
        path = StringUtil.trimEnd(path, File.separator);
        int ind = path.lastIndexOf(File.separator);
        if (ind != -1) {
          String projectName = path.substring(ind + 1);
          if (!nameField.getText().trim().isEmpty()) {
            myBaseDir = path.substring(0, ind);
          }
          if (!projectName.equals(nameField.getText())) {
            if (!myModifyingProjectName) {
              nameField.setText(projectName);
            }
          }
        }
        myModifyingLocation = false;
      }
@Override
      protected void textChanged(@NotNull DocumentEvent e)