package greenfoot.guifx;

import bluej.utility.javafx.FXCustomizedDialog;
import bluej.Config;

import javafx.geometry.Pos;
import javafx.scene.control.ButtonType;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.stage.Window;


| A dialog to set the Player name in the project properties. | | @author Amjad Altadmri | public class SetPlayerDialog extends FXCustomizedDialog<String>{ private TextField playerNameTextField;
| Construct a set player dialog with the current player name as the default | text in the name text field. | | @param parent The parent window. | @param curPlayerName The current player name. | public SetPlayerDialog(Window parent, String curPlayerName) { super(parent, Config.getString("playername.dialog.title"), null); setResizable(false); playerNameTextField = new TextField(curPlayerName); playerNameTextField.setPrefWidth(250); Label playerNameLabel = new Label(Config.getString("playername.dialog.playerName") + ":"); HBox nameFieldRow = new HBox(5, playerNameLabel, playerNameTextField); nameFieldRow.setAlignment(Pos.BASELINE_LEFT); setContentPane(new VBox(15, new Label(Config.getString("playername.dialog.help")), nameFieldRow)); playerNameTextField.requestFocus(); getDialogPane().getButtonTypes().addAll(ButtonType.CANCEL, ButtonType.OK); getDialogPane().lookupButton(ButtonType.OK).disableProperty().bind(playerNameTextField.textProperty().isEmpty()); setResultConverter(bt -> bt == ButtonType.OK ? playerNameTextField.getText() : null); } }

.   SetPlayerDialog




39 neLoCode + 6 LoComm