@Override
  public @Nullable JComponent createComponent() {
    final TreeClassChooserFactory chooserFactory = TreeClassChooserFactory.getInstance(myProject);
    myMainClass = new TextFieldWithBrowseButton(
      e -> {
        final TreeClassChooser classChooser =
          chooserFactory.createWithInnerClassesScopeChooser(ExecutionBundle.message("choose.main.class.dialog.title"),
                                                          GlobalSearchScope.projectScope(myProject),
                                                          PsiMethodUtil::hasMainMethod, null);
        classChooser.showDialog();
        final PsiClass selectedClass = classChooser.getSelected();
        if (selectedClass == null) {
          return;
        }
        myMainClass.setText(selectedClass.getQualifiedName());
      }
    );
    myMainClass.setText(myProperties.mainClass);
    myVersion = new JTextField(myProperties.version);
    myCopyright = new JTextField(myProperties.copyright);
    myVendor = new JTextField(myProperties.vendor);
    myDescription = new JBTextArea(myProperties.description, 5, 50);
    myDescription.setMinimumSize(new Dimension(100, 50));
    myVerbose = new JCheckBox(JavaFXBundle.message("show.verbose.output.when.building.the.platform.specific.package"), myProperties.verbose);

    final FormBuilder builder = new FormBuilder();
    builder.addLabeledComponent(JavaFXBundle.message("label.main.class"), myMainClass);
    builder.addLabeledComponent(JavaFXBundle.message("label.version"), myVersion);
    builder.addLabeledComponent(JavaFXBundle.message("label.copyright"), myCopyright);
    builder.addLabeledComponent(JavaFXBundle.message("label.vendor"), myVendor);
    builder.addLabeledComponent(JavaFXBundle.message("label.description"), new JBScrollPane(myDescription));
    builder.addComponent(myVerbose);
    return builder.getPanel();
  }
@Override
  public @Nullable JComponent createComponent()