diff --git a/src/main/java/seng302/visualiser/controllers/ServerListController.java b/src/main/java/seng302/visualiser/controllers/ServerListController.java index df62acd2..ab40fd25 100644 --- a/src/main/java/seng302/visualiser/controllers/ServerListController.java +++ b/src/main/java/seng302/visualiser/controllers/ServerListController.java @@ -72,8 +72,8 @@ public class ServerListController implements Initializable, ServerListenerDelega RequiredFieldValidator validator = new RequiredFieldValidator(); textField.getValidators().add(validator); } - serverHostName.getValidators().get(0).setMessage("Correct HostName Required"); - serverPortNumber.getValidators().get(0).setMessage("Correct Port Number Required"); + serverHostName.getValidators().get(0).setMessage("Incorrect Host Name"); + serverPortNumber.getValidators().get(0).setMessage("Incorrect Port Number"); // Start listening for servers on network try { @@ -112,11 +112,18 @@ public class ServerListController implements Initializable, ServerListenerDelega * */ private void attemptToDirectConnect() { - if (validateHostName(serverHostName.getText()) && validatePortNumber(serverPortNumber.getText())) { + if (validateDirectConnection(serverHostName.getText(), serverPortNumber.getText())) { DirectConnect(); } } + + private Boolean validateDirectConnection(String hostName, String portNumber) { + Boolean hostNameValid = validateHostName(hostName); + Boolean portNumberValid = validatePortNumber(portNumber); + return hostNameValid && portNumberValid; + } + /** * * @return @@ -149,13 +156,12 @@ public class ServerListController implements Initializable, ServerListenerDelega if (portNum > 1024 && portNum <= 65536) { return true; } else { - System.out.println(portNum.toString() + "is not a valid port number"); - serverPortNumber.validate(); + System.out.println(portNum.toString() + " is not a valid port number"); } } catch (NumberFormatException e) { - serverPortNumber.validate(); System.out.println("Not a valid number."); } + serverPortNumber.validate(); return false; } diff --git a/src/main/java/seng302/visualiser/controllers/dialogs/ServerCreationController.java b/src/main/java/seng302/visualiser/controllers/dialogs/ServerCreationController.java index 4bcf9993..c4ede69d 100644 --- a/src/main/java/seng302/visualiser/controllers/dialogs/ServerCreationController.java +++ b/src/main/java/seng302/visualiser/controllers/dialogs/ServerCreationController.java @@ -2,7 +2,9 @@ package seng302.visualiser.controllers.dialogs; import com.jfoenix.controls.JFXButton; import com.jfoenix.controls.JFXSlider; +import com.jfoenix.validation.RequiredFieldValidator; import java.net.URL; +import java.util.Arrays; import java.util.ResourceBundle; import com.jfoenix.controls.JFXTextField; @@ -27,14 +29,28 @@ public class ServerCreationController implements Initializable { private JFXButton submitBtn; //---------FXML END---------// + RequiredFieldValidator validator; + public void initialize(URL location, ResourceBundle resources) { updateMaxPlayerLabel(); maxPlayersSlider.valueProperty().addListener((observable, oldValue, newValue) -> { updateMaxPlayerLabel(); }); + validator = new RequiredFieldValidator(); + serverName.getValidators().add(validator); + submitBtn.setOnMouseClicked(event -> submitBtn.setText("CREATING...")); - submitBtn.setOnMouseReleased(event -> createServer()); + submitBtn.setOnMouseReleased(event -> validateServerSettings()); + } + + private void validateServerSettings() { + if (serverName.getText().length() >= 40) { + validator.setMessage("HI"); + } else if (serverName.getText().length() == 0) { + validator.setMessage("Server Name Required."); + } + serverName.validate(); } public void createServer() { diff --git a/src/main/resources/css/ServerListView.css b/src/main/resources/css/ServerListView.css index 780c63b4..c1f61f17 100644 --- a/src/main/resources/css/ServerListView.css +++ b/src/main/resources/css/ServerListView.css @@ -52,7 +52,7 @@ #serverHostName .error-label, #serverPortNumber .error-label { -fx-font-size: 12px; - -fx-text-fill: palevioletred; + -fx-text-fill: lightblue; } #connectGridPane {