From a0f74457b3f8aaef43f0e89050edc52ab0338d67 Mon Sep 17 00:00:00 2001 From: Gabriel Tofvesson Date: Sun, 30 Oct 2016 16:08:00 +0100 Subject: [PATCH] Tabs :D --- src/Launcher/Main.java | 15 ++++++++++----- src/Launcher/Tabs.java | 26 ++++++++++++++++++++++++++ src/assets/layout/modpacks.fxml | 0 3 files changed, 36 insertions(+), 5 deletions(-) create mode 100644 src/Launcher/Tabs.java create mode 100644 src/assets/layout/modpacks.fxml diff --git a/src/Launcher/Main.java b/src/Launcher/Main.java index b486802..6215754 100644 --- a/src/Launcher/Main.java +++ b/src/Launcher/Main.java @@ -18,23 +18,23 @@ import javafx.scene.layout.Pane; import javafx.scene.shape.Rectangle; import javafx.stage.Stage; import javafx.stage.StageStyle; - import java.net.URL; public class Main extends Application { public static final URL mainLauncher = Main.class.getResource("../assets/layout/main.fxml"); // Launcher body - public static final URL homeTab = Main.class.getResource("../assets/layout/home.fxml"); // Launcher home tab private double xOffset = 0, yOffset = 0; // Offsets for dragging private Button exit, min, Home_btn, Modpack_btn; // Define buttons private Rectangle dragBar; // Draggable top bar + private Pane root, tab; @Override public void start(Stage primaryStage) throws Exception{ - primaryStage.initStyle(StageStyle.UNDECORATED); - Pane root = FXMLLoader.load(mainLauncher); + primaryStage.initStyle(StageStyle.UNDECORATED); // Remove ugly trash + + root = FXMLLoader.load(mainLauncher); primaryStage.setTitle("Team-Avion Launcher [WIP]"); primaryStage.setScene(new Scene(root, 900, 500)); primaryStage.show(); @@ -46,7 +46,7 @@ public class Main extends Application { dragBar = (Rectangle) root.lookup("#rectangle"); Home_btn = (Button) root.lookup("#Home-btn"); Modpack_btn = (Button) root.lookup("#Modpacks-btn"); - + tab = (Pane) root.lookup("#tab"); // Infrastructural navigation exit.setOnMouseClicked(event -> primaryStage.close()); @@ -61,9 +61,14 @@ public class Main extends Application { primaryStage.setX(event.getScreenX() - xOffset); primaryStage.setY(event.getScreenY() - yOffset); }); + + // Set up default layout + Tabs.Home.switchTab(tab); } public static void main(String[] args) { launch(args); } + + } diff --git a/src/Launcher/Tabs.java b/src/Launcher/Tabs.java new file mode 100644 index 0000000..af28412 --- /dev/null +++ b/src/Launcher/Tabs.java @@ -0,0 +1,26 @@ +package Launcher; + +import javafx.fxml.FXMLLoader; +import javafx.scene.layout.Pane; + +import java.io.IOException; +import java.net.URL; + +public enum Tabs { + + Modpacks(Main.class.getResource("../assets/layout/modpacks.fxml")), Home(Main.class.getResource("../assets/layout/home.fxml")); + + public final URL url; + Tabs(URL url){ + this.url = url; + } + + public void switchTab(Pane holder){ + holder.getChildren().clear(); + try { + holder.getChildren().add(FXMLLoader.load(url)); + } catch (IOException e) { + e.printStackTrace(); + } + } +} diff --git a/src/assets/layout/modpacks.fxml b/src/assets/layout/modpacks.fxml new file mode 100644 index 0000000..e69de29