package net.sowgro.npehero.devmenu; import javafx.geometry.Insets; import javafx.geometry.Pos; import javafx.scene.control.Button; import javafx.scene.control.Label; 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.Sound; public class ErrorDisplay extends Pane { public ErrorDisplay(String message, Pane prev) { Label main = new Label(message); main.getStyleClass().add("box"); Button exit = new Button(); exit.setText("Back"); exit.setOnAction(e -> { Sound.playSfx(Sound.BACKWARD); Driver.setMenu(prev); }); VBox centerBox = new VBox(); centerBox.setAlignment(Pos.CENTER); 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); super.getChildren().add(rootBox); } public ErrorDisplay(String message, Pane prev, Pane 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 -> { Sound.playSfx(Sound.BACKWARD); Driver.setMenu(prev); }); Button nextButton = new Button(); nextButton.setText("Proceed"); nextButton.setOnAction(e -> { Sound.playSfx(Sound.FORWARD); Driver.setMenu(next); }); HBox bottom = new HBox(exit, nextButton); bottom.setAlignment(Pos.CENTER); bottom.setSpacing(10); VBox centerBox = new VBox(); centerBox.setAlignment(Pos.CENTER); centerBox.setSpacing(10); centerBox.getChildren().addAll(main,bottom); 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); super.getChildren().add(rootBox); } }