diff options
Diffstat (limited to 'src/main/java/net/sowgro/npehero/devmenu/ErrorDisplay.java')
-rw-r--r-- | src/main/java/net/sowgro/npehero/devmenu/ErrorDisplay.java | 56 |
1 files changed, 32 insertions, 24 deletions
diff --git a/src/main/java/net/sowgro/npehero/devmenu/ErrorDisplay.java b/src/main/java/net/sowgro/npehero/devmenu/ErrorDisplay.java index e5cd857..dc4b40c 100644 --- a/src/main/java/net/sowgro/npehero/devmenu/ErrorDisplay.java +++ b/src/main/java/net/sowgro/npehero/devmenu/ErrorDisplay.java @@ -8,10 +8,19 @@ import javafx.scene.layout.HBox; import javafx.scene.layout.Pane; import javafx.scene.layout.VBox; import net.sowgro.npehero.Driver; +import net.sowgro.npehero.main.Page; import net.sowgro.npehero.main.Sound; -public class ErrorDisplay extends Pane { - public ErrorDisplay(String message, Pane prev) { +public class ErrorDisplay extends Page { + + private HBox content = new HBox(); + + /** + * Error display with a message and Back button + * @param message The message to display + * @param prev The destination of the close button + */ + public ErrorDisplay(String message, Page prev) { Label main = new Label(message); main.getStyleClass().add("box"); @@ -23,35 +32,35 @@ public class ErrorDisplay extends Pane { }); VBox centerBox = new VBox(); - centerBox.setAlignment(Pos.CENTER); + centerBox.getChildren().addAll(main, exit); centerBox.setSpacing(10); - centerBox.getChildren().addAll(main,exit); - centerBox.setMinWidth(400); - - HBox rootBox = new HBox(); - rootBox.prefWidthProperty().bind(super.prefWidthProperty()); - rootBox.prefHeightProperty().bind(super.prefHeightProperty()); - rootBox.getChildren().add(centerBox); - rootBox.setAlignment(Pos.CENTER); + centerBox.setAlignment(Pos.CENTER); - super.getChildren().add(rootBox); + content.getChildren().add(centerBox); + content.setAlignment(Pos.CENTER); } - public ErrorDisplay(String message, Pane prev, Pane next) { + /** + * Error display with a message and Cancel and Proceed buttons + * @param message The message to display + * @param prev The destination of the Cancel button + * @param next The destination of the Proceed button + */ + public ErrorDisplay(String message, Page prev, Page next) { Label main = new Label(message); main.getStyleClass().add("box"); main.setPadding(new Insets(10)); Button exit = new Button(); exit.setText("Cancel"); - exit.setOnAction(e -> { + exit.setOnAction(_ -> { Sound.playSfx(Sound.BACKWARD); Driver.setMenu(prev); }); Button nextButton = new Button(); nextButton.setText("Proceed"); - nextButton.setOnAction(e -> { + nextButton.setOnAction(_ -> { Sound.playSfx(Sound.FORWARD); Driver.setMenu(next); }); @@ -61,17 +70,16 @@ public class ErrorDisplay extends Pane { bottom.setSpacing(10); VBox centerBox = new VBox(); - centerBox.setAlignment(Pos.CENTER); + centerBox.getChildren().addAll(main, bottom); centerBox.setSpacing(10); - centerBox.getChildren().addAll(main,bottom); - centerBox.setMinWidth(400); + centerBox.setAlignment(Pos.CENTER); - HBox rootBox = new HBox(); - rootBox.prefWidthProperty().bind(super.prefWidthProperty()); - rootBox.prefHeightProperty().bind(super.prefHeightProperty()); - rootBox.getChildren().add(centerBox); - rootBox.setAlignment(Pos.CENTER); + content.getChildren().add(centerBox); + content.setAlignment(Pos.CENTER); + } - super.getChildren().add(rootBox); + @Override + public Pane getContent() { + return content; } } |