diff --git a/src/main/java/seng302/visualiser/controllers/LobbyController.java b/src/main/java/seng302/visualiser/controllers/LobbyController.java index 50ee6685..a556472d 100644 --- a/src/main/java/seng302/visualiser/controllers/LobbyController.java +++ b/src/main/java/seng302/visualiser/controllers/LobbyController.java @@ -2,7 +2,6 @@ package seng302.visualiser.controllers; import com.jfoenix.controls.JFXButton; import com.jfoenix.controls.JFXDialog; -import com.jfoenix.controls.JFXDialog.DialogTransition; import java.io.IOException; import java.net.URL; @@ -24,7 +23,7 @@ import seng302.gameServer.GameStages; import seng302.gameServer.GameState; import seng302.model.Colors; import seng302.model.RaceState; -import seng302.visualiser.ServerListener; +import seng302.visualiser.controllers.cells.PlayerCell; public class LobbyController implements Initializable { diff --git a/src/main/java/seng302/visualiser/controllers/PlayerCell.java b/src/main/java/seng302/visualiser/controllers/PlayerCell.java deleted file mode 100644 index 6d54967b..00000000 --- a/src/main/java/seng302/visualiser/controllers/PlayerCell.java +++ /dev/null @@ -1,48 +0,0 @@ -package seng302.visualiser.controllers; - -import javafx.fxml.FXML; -import javafx.scene.control.Label; -import javafx.scene.effect.DropShadow; -import javafx.scene.layout.GridPane; -import javafx.scene.paint.Color; - - -public class PlayerCell { - @FXML - private Label playerName; - - @FXML - private GridPane playerListCell; - - private String name; - - public PlayerCell(String playerName) { - this.name = playerName; - } - - public void initialize() { - playerName.setText(name); - - DropShadow dropShadow = new DropShadow(); - dropShadow.setRadius(10.0); - dropShadow.setOffsetX(3.0); - dropShadow.setOffsetY(4.0); - dropShadow.setColor(Color.color(0, 0, 0, 0.1)); - playerListCell.setEffect(dropShadow); - - DropShadow dropShadow2 = new DropShadow(); - dropShadow2.setRadius(10.0); - dropShadow2.setOffsetX(5.0); - dropShadow2.setOffsetY(6.0); - dropShadow2.setColor(Color.color(0, 0, 0, 0.3)); - - playerListCell.setOnMouseEntered(event -> { - playerListCell.setEffect(dropShadow2); - }); - - playerListCell.setOnMouseExited(event -> { - playerListCell.setEffect(dropShadow); - }); - - } -} diff --git a/src/main/java/seng302/visualiser/controllers/ServerListController.java b/src/main/java/seng302/visualiser/controllers/ServerListController.java index 522b9669..904ad384 100644 --- a/src/main/java/seng302/visualiser/controllers/ServerListController.java +++ b/src/main/java/seng302/visualiser/controllers/ServerListController.java @@ -18,9 +18,9 @@ import javafx.scene.layout.VBox; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import seng302.gameServer.ServerDescription; -import seng302.visualiser.GameClient; import seng302.visualiser.ServerListener; import seng302.visualiser.ServerListenerDelegate; +import seng302.visualiser.controllers.cells.ServerCell; public class ServerListController implements Initializable, ServerListenerDelegate { diff --git a/src/main/java/seng302/visualiser/controllers/ViewManager.java b/src/main/java/seng302/visualiser/controllers/ViewManager.java index 02672af1..6b30eee1 100644 --- a/src/main/java/seng302/visualiser/controllers/ViewManager.java +++ b/src/main/java/seng302/visualiser/controllers/ViewManager.java @@ -11,11 +11,11 @@ import javafx.scene.layout.StackPane; import javafx.scene.paint.Color; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import seng302.model.ClientYacht; import seng302.visualiser.GameClient; import java.io.IOException; import java.util.HashMap; +import seng302.visualiser.controllers.dialogs.BoatCustomizeController; public class ViewManager { diff --git a/src/main/java/seng302/visualiser/controllers/cells/PlayerCell.java b/src/main/java/seng302/visualiser/controllers/cells/PlayerCell.java new file mode 100644 index 00000000..13f9d32e --- /dev/null +++ b/src/main/java/seng302/visualiser/controllers/cells/PlayerCell.java @@ -0,0 +1,26 @@ +package seng302.visualiser.controllers.cells; + +import javafx.fxml.FXML; +import javafx.scene.control.Label; +import javafx.scene.effect.DropShadow; +import javafx.scene.layout.GridPane; +import javafx.scene.paint.Color; + + +public class PlayerCell { + @FXML + private Label playerName; + + @FXML + private GridPane playerListCell; + + private String name; + + public PlayerCell(String playerName) { + this.name = playerName; + } + + public void initialize() { + playerName.setText(name); + } +} diff --git a/src/main/java/seng302/visualiser/controllers/ServerCell.java b/src/main/java/seng302/visualiser/controllers/cells/ServerCell.java similarity index 95% rename from src/main/java/seng302/visualiser/controllers/ServerCell.java rename to src/main/java/seng302/visualiser/controllers/cells/ServerCell.java index c9dced5a..06730389 100644 --- a/src/main/java/seng302/visualiser/controllers/ServerCell.java +++ b/src/main/java/seng302/visualiser/controllers/cells/ServerCell.java @@ -1,4 +1,4 @@ -package seng302.visualiser.controllers; +package seng302.visualiser.controllers.cells; import com.jfoenix.controls.JFXButton; import com.jfoenix.controls.JFXDecorator; @@ -17,6 +17,7 @@ import javafx.scene.layout.GridPane; import javafx.scene.paint.Color; import seng302.gameServer.ServerDescription; import seng302.visualiser.GameClient; +import seng302.visualiser.controllers.ViewManager; public class ServerCell implements Initializable { diff --git a/src/main/java/seng302/visualiser/controllers/BoatCustomizeController.java b/src/main/java/seng302/visualiser/controllers/dialogs/BoatCustomizeController.java similarity index 95% rename from src/main/java/seng302/visualiser/controllers/BoatCustomizeController.java rename to src/main/java/seng302/visualiser/controllers/dialogs/BoatCustomizeController.java index 384a2cf6..a30e8564 100644 --- a/src/main/java/seng302/visualiser/controllers/BoatCustomizeController.java +++ b/src/main/java/seng302/visualiser/controllers/dialogs/BoatCustomizeController.java @@ -1,4 +1,4 @@ -package seng302.visualiser.controllers; +package seng302.visualiser.controllers.dialogs; import com.jfoenix.controls.JFXButton; import com.jfoenix.controls.JFXColorPicker; @@ -13,6 +13,7 @@ import seng302.visualiser.ClientToServerThread; import java.net.URL; import java.util.ResourceBundle; +import seng302.visualiser.controllers.LobbyController; public class BoatCustomizeController implements Initializable{ diff --git a/src/main/java/seng302/visualiser/controllers/ServerCreationController.java b/src/main/java/seng302/visualiser/controllers/dialogs/ServerCreationController.java similarity index 64% rename from src/main/java/seng302/visualiser/controllers/ServerCreationController.java rename to src/main/java/seng302/visualiser/controllers/dialogs/ServerCreationController.java index c260f947..4bcf9993 100644 --- a/src/main/java/seng302/visualiser/controllers/ServerCreationController.java +++ b/src/main/java/seng302/visualiser/controllers/dialogs/ServerCreationController.java @@ -1,20 +1,16 @@ -package seng302.visualiser.controllers; +package seng302.visualiser.controllers.dialogs; import com.jfoenix.controls.JFXButton; -import com.jfoenix.controls.JFXDecorator; import com.jfoenix.controls.JFXSlider; -import java.io.IOException; import java.net.URL; import java.util.ResourceBundle; import com.jfoenix.controls.JFXTextField; import javafx.fxml.FXML; -import javafx.fxml.FXMLLoader; import javafx.fxml.Initializable; -import javafx.scene.Parent; import javafx.scene.control.Label; -import javafx.scene.layout.StackPane; import seng302.gameServer.ServerDescription; +import seng302.visualiser.controllers.ViewManager; public class ServerCreationController implements Initializable { @@ -23,7 +19,7 @@ public class ServerCreationController implements Initializable { private JFXTextField serverName; @FXML - private JFXSlider maxPlayers; + private JFXSlider maxPlayersSlider; @FXML private Label maxPlayersLabel; @@ -33,23 +29,26 @@ public class ServerCreationController implements Initializable { public void initialize(URL location, ResourceBundle resources) { updateMaxPlayerLabel(); - maxPlayers.valueProperty().addListener((observable, oldValue, newValue) -> { + maxPlayersSlider.valueProperty().addListener((observable, oldValue, newValue) -> { updateMaxPlayerLabel(); }); + submitBtn.setOnMouseClicked(event -> submitBtn.setText("CREATING...")); submitBtn.setOnMouseReleased(event -> createServer()); } public void createServer() { - ServerDescription serverDescription = ViewManager.getInstance().getGameClient().runAsHost("localhost", 4941, serverName.getText(), (int) maxPlayers.getValue()); + ServerDescription serverDescription = ViewManager.getInstance().getGameClient() + .runAsHost("localhost", 4941, serverName.getText(), (int) maxPlayersSlider + .getValue()); ViewManager.getInstance().setProperty("serverName", serverDescription.getName()); ViewManager.getInstance().setProperty("mapName", serverDescription.getMapName()); } private void updateMaxPlayerLabel() { - maxPlayers.setValue(Math.floor(maxPlayers.getValue())); - maxPlayersLabel.setText(Double.toString(maxPlayers.getValue())); + maxPlayersSlider.setValue(Math.floor(maxPlayersSlider.getValue())); + maxPlayersLabel.setText(String.format("YOU SELECTED: %.0f", maxPlayersSlider.getValue())); } } diff --git a/src/main/resources/css/Baloo-Regular.ttf b/src/main/resources/css/Baloo-Regular.ttf new file mode 100644 index 00000000..0c601b33 Binary files /dev/null and b/src/main/resources/css/Baloo-Regular.ttf differ diff --git a/src/main/resources/css/BalooTammudu-Regular.ttf b/src/main/resources/css/BalooTammudu-Regular.ttf deleted file mode 100644 index 479bb7a1..00000000 Binary files a/src/main/resources/css/BalooTammudu-Regular.ttf and /dev/null differ diff --git a/src/main/resources/css/ServerCreate.css b/src/main/resources/css/ServerCreate.css deleted file mode 100644 index 112af0dd..00000000 --- a/src/main/resources/css/ServerCreate.css +++ /dev/null @@ -1,5 +0,0 @@ -#submitBtn { - -fx-background-color: -fx-pp-theme-color; - -fx-font-size: 14px; - -fx-text-fill: -fx-pp-light-text-color; -} \ No newline at end of file diff --git a/src/main/resources/css/ServerCreation.css b/src/main/resources/css/ServerCreation.css deleted file mode 100644 index 5910bd1c..00000000 --- a/src/main/resources/css/ServerCreation.css +++ /dev/null @@ -1,26 +0,0 @@ -#submitBtn { - -fx-background-color: -fx-pp-theme-color; - -fx-text-fill: -fx-pp-light-text-color; - -fx-font-size: 20px; -} - -#hostDialogHeader { - -fx-font-size: 30px; - -fx-text-fill: -fx-pp-dark-text-color; -} - - -#serverName { - -jfx-focus-color: -fx-pp-dark-text-color; - -jfx-unfocus-color: -fx-pp-dark-text-color; - -fx-text-fill: -fx-pp-dark-text-color; - -fx-prompt-text-fill: -fx-pp-dark-text-color; -} - -#maxPlayerLabel { - -fx-text-fill: -fx-pp-dark-text-color; -} - -#maxPlayers .thumb, #maxPlayers .track { - -fx-background-color: -fx-pp-theme-color; -} \ No newline at end of file diff --git a/src/main/resources/css/PlayerCell.css b/src/main/resources/css/cells/PlayerCell.css similarity index 67% rename from src/main/resources/css/PlayerCell.css rename to src/main/resources/css/cells/PlayerCell.css index 984cc36a..588fb31a 100644 --- a/src/main/resources/css/PlayerCell.css +++ b/src/main/resources/css/cells/PlayerCell.css @@ -5,6 +5,11 @@ #playerListCell { -fx-background-color: -fx-pp-front-color; + -fx-effect: -fx-pp-dropshadow-light; +} + +#playerListCell:hover { + -fx-effect: -fx-pp-dropshadow-dark; } #playerCellVBox { diff --git a/src/main/resources/css/ServerCell.css b/src/main/resources/css/cells/ServerCell.css similarity index 100% rename from src/main/resources/css/ServerCell.css rename to src/main/resources/css/cells/ServerCell.css diff --git a/src/main/resources/css/dialogs/ServerCreation.css b/src/main/resources/css/dialogs/ServerCreation.css new file mode 100644 index 00000000..c871335f --- /dev/null +++ b/src/main/resources/css/dialogs/ServerCreation.css @@ -0,0 +1,55 @@ +#maxPlayersGridPane VBox * { + -fx-font-family: monospace !important; +} + +#submitBtn { + -fx-background-color: -fx-pp-theme-color; + -fx-text-fill: -fx-pp-light-text-color; + -fx-font-size: 20px; + -fx-effect: -fx-pp-dropshadow-dark; +} + +.jfx-rippler { + -jfx-rippler-fill: -fx-pp-light-theme-color; /* set rippler color for button */ +} + +#submitBtn:hover { + -fx-font-size: 23px; + -fx-background-color: -fx-pp-light-theme-color; +} + +#hostDialogHeader { + -fx-font-size: 30px; + -fx-text-fill: -fx-pp-dark-text-color; +} + + +#serverName { + -jfx-focus-color: -fx-pp-dark-text-color; + -jfx-unfocus-color: -fx-pp-dark-text-color; + -fx-text-fill: -fx-pp-dark-text-color; + -fx-prompt-text-fill: -fx-pp-dark-text-color; + -fx-font-size: 16px; +} + +#maxPlayersLabel { + -fx-text-fill: -fx-pp-dark-text-color; + -fx-font-size: 16px; +} + +#maxPlayerPromptLabel { + -fx-text-fill: -fx-pp-dark-text-color; + -fx-font-size: 16px; +} + +.maxPlayers { + -fx-font-size: 13px; +} + +#maxPlayersSlider .thumb { + -fx-background-color: -fx-pp-theme-color; +} + +#maxPlayersSlider .track { + -fx-background-color: -fx-pp-dark-text-color; +} \ No newline at end of file diff --git a/src/main/resources/css/master.css b/src/main/resources/css/master.css index 69c596e6..85f8da0b 100644 --- a/src/main/resources/css/master.css +++ b/src/main/resources/css/master.css @@ -1,5 +1,5 @@ @font-face { - src: url("BalooTammudu-Regular.ttf"); + src: url("Baloo-Regular.ttf"); } * { @@ -9,12 +9,24 @@ -fx-pp-light-theme-color: #38a2fa; -fx-pp-background-color: transparent; -fx-pp-front-color: #fff; - -fx-font-family: "Baloo Tammudu"; + -fx-font-family: "Baloo"; -fx-pp-dropshadow-light: dropshadow(gaussian, rgba(0, 0, 0, 0.1), 10.0, 0.2, 3, 4); -fx-pp-dropshadow-dark: dropshadow(gaussian, rgba(0, 0, 0, 0.3), 10.0, 0.2, 5, 6); } +GridPane .jfx-button { + -fx-min-height: 65px; /* because we changed the font, we now need to set mini height for all buttons */ +} + +.jfx-button { + -fx-cursor: hand; +} + +.jfx-button:pressed { + -fx-cursor: wait; +} + .jfx-text-field { -jfx-label-float: true; } diff --git a/src/main/resources/views/LobbyView.fxml b/src/main/resources/views/LobbyView.fxml index 15fdd2e7..fc089eb9 100644 --- a/src/main/resources/views/LobbyView.fxml +++ b/src/main/resources/views/LobbyView.fxml @@ -33,7 +33,8 @@ - + + + diff --git a/src/main/resources/views/cells/ServerCell.fxml b/src/main/resources/views/cells/ServerCell.fxml index 74e22a54..ff306a6c 100644 --- a/src/main/resources/views/cells/ServerCell.fxml +++ b/src/main/resources/views/cells/ServerCell.fxml @@ -19,7 +19,7 @@ - + diff --git a/src/main/resources/views/dialogs/BoatCustomizeDialog.fxml b/src/main/resources/views/dialogs/BoatCustomizeDialog.fxml index 1450f03f..57543808 100644 --- a/src/main/resources/views/dialogs/BoatCustomizeDialog.fxml +++ b/src/main/resources/views/dialogs/BoatCustomizeDialog.fxml @@ -9,7 +9,10 @@ - + @@ -56,7 +59,7 @@ - + diff --git a/src/main/resources/views/dialogs/ServerCreationDialog.fxml b/src/main/resources/views/dialogs/ServerCreationDialog.fxml index 1dfe23b4..ec8e48a1 100644 --- a/src/main/resources/views/dialogs/ServerCreationDialog.fxml +++ b/src/main/resources/views/dialogs/ServerCreationDialog.fxml @@ -9,7 +9,10 @@ - + @@ -18,47 +21,59 @@ - + - - +