package application; import jalviewfx.controllers.engine.ScreensController; import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.stage.Stage; public class App extends Application { public static final String FXML_DIRECTORY = "/fxml/"; public enum Screens{ HOME_SCREEN("desktop", FXML_DIRECTORY +"Desktop.fxml"), SCREEN_1("screen_1",FXML_DIRECTORY +"screen_1.fxml"), SCREEN_2("screen_2",FXML_DIRECTORY +"screen_2.fxml"), SCREEN_3("screen_3", FXML_DIRECTORY + "screen_3.fxml"),; private String name; private String fxml; private Screens(String name, String fxml){ this.name = name; this.fxml = fxml; } public String getName() { return name; } public String getFxml() { return fxml; } } public static void main(String[] args) { launch(args); } @Override public void start(Stage primaryStage) { ScreensController mainContainer = new ScreensController(); for(Screens screen : Screens.values()){ mainContainer.loadScreen(screen.getName(), screen.getFxml()); } mainContainer.setScreen(Screens.HOME_SCREEN); Group root = new Group(); root.getChildren().addAll(mainContainer); Scene scene = new Scene(root); primaryStage.setTitle("JalviewFX POC"); primaryStage.setScene(scene); primaryStage.show(); } }