diff --git a/src/main/java/seng202/group9/Controller/App.java b/src/main/java/seng202/group9/Controller/App.java index fb5006c..599d03f 100644 --- a/src/main/java/seng202/group9/Controller/App.java +++ b/src/main/java/seng202/group9/Controller/App.java @@ -28,6 +28,7 @@ public class App extends Application private Dataset currentDataset = null; private Stage primaryStage = null; private VBox mainContainer; + private Session session; public static void main( String[] args ) { @@ -40,6 +41,7 @@ public class App extends Application @Override public void start(Stage primaryStage) { this.primaryStage = primaryStage; + this.session = new Session(); //load the menu and the first container try { FXMLLoader loader = new FXMLLoader(); @@ -126,9 +128,9 @@ public class App extends Application * @return * @throws Exception */ - public Initializable replaceSceneContent(String fxml) throws Exception { + public Initializable replaceSceneContent(SceneCode fxml) throws Exception { FXMLLoader loader = new FXMLLoader(); - InputStream in = getClass().getClassLoader().getResourceAsStream(fxml); + InputStream in = getClass().getClassLoader().getResourceAsStream(fxml.getFilePath()); Parent page; try { page = (Parent) loader.load(in); @@ -139,6 +141,8 @@ public class App extends Application mainContainer.getChildren().remove(1); } mainContainer.getChildren().add(page); + //change session code to fit with the serialisation + session.setSceneDisplayed(fxml); return (Initializable) loader.getController(); } diff --git a/src/main/java/seng202/group9/Controller/SceneCode.java b/src/main/java/seng202/group9/Controller/SceneCode.java index 7262b7a..3b2d15b 100644 --- a/src/main/java/seng202/group9/Controller/SceneCode.java +++ b/src/main/java/seng202/group9/Controller/SceneCode.java @@ -4,6 +4,18 @@ package seng202.group9.Controller; * Created by fwy13 on 16/09/16. */ public enum SceneCode { - INITIAL, AIRLINE_SUMMARY, AIRLINE_RAW_DATA, AIRPORT_SUMMARY, AIRPORT_RAW_DATA, - ROUTE_SUMMARY, ROUTE_RAW_DATA, FLIGHT_SUMMARY, FLIGHT_RAW_DATA + INITIAL(""), AIRLINE_SUMMARY("airline_summary.fxml"), AIRLINE_RAW_DATA("airline_raw_data.fxml"), + AIRPORT_SUMMARY("airport_summary.fxml"), AIRPORT_RAW_DATA("airport_raw_data.fxml"), + ROUTE_SUMMARY("routes_summary.fxml"), ROUTE_RAW_DATA("route_raw_data.fxml"), FLIGHT_SUMMARY("flight_data_summary.fxml"), + FLIGHT_RAW_DATA("flight_raw_data.fxml"); + + private String filePath; + + SceneCode(String filePath){ + this.filePath = filePath; + } + + public String getFilePath(){ + return filePath; + } } diff --git a/src/main/java/seng202/group9/Controller/Session.java b/src/main/java/seng202/group9/Controller/Session.java index 0476294..eeb4136 100644 --- a/src/main/java/seng202/group9/Controller/Session.java +++ b/src/main/java/seng202/group9/Controller/Session.java @@ -6,7 +6,16 @@ import java.io.Serializable; * Created by fwy13 on 16/09/16. */ public class Session implements Serializable { - private SceneCode sceneDisplayed = SceneCode.INITIAL; + private SceneCode sceneDisplayed; + + public Session(){ + //blank constructor + this.sceneDisplayed = SceneCode.INITIAL; + } + + public Session(SceneCode scene){ + this.sceneDisplayed = scene; + } public void setSceneDisplayed(SceneCode sceneDisplayed) { this.sceneDisplayed = sceneDisplayed; diff --git a/src/main/java/seng202/group9/GUI/AirlineSummaryController.java b/src/main/java/seng202/group9/GUI/AirlineSummaryController.java index 07be386..d22bce6 100644 --- a/src/main/java/seng202/group9/GUI/AirlineSummaryController.java +++ b/src/main/java/seng202/group9/GUI/AirlineSummaryController.java @@ -7,6 +7,7 @@ import javafx.scene.control.TableView; import javafx.scene.control.cell.PropertyValueFactory; import seng202.group9.Controller.App; import seng202.group9.Controller.Dataset; +import seng202.group9.Controller.SceneCode; import seng202.group9.Core.Airline; /** @@ -46,7 +47,7 @@ public class AirlineSummaryController extends MenuController{ public void airlineRawDataButton() { try { AirlineRDController rawDataController = (AirlineRDController) - parent.replaceSceneContent("airline_raw_data.fxml"); + parent.replaceSceneContent(SceneCode.AIRLINE_RAW_DATA); rawDataController.setApp(parent); rawDataController.loadTables(); } @@ -57,7 +58,7 @@ public class AirlineSummaryController extends MenuController{ public void flightSummaryButton() { try { FlightSummaryController summaryController = (FlightSummaryController) - parent.replaceSceneContent("flight_data_summary.fxml"); + parent.replaceSceneContent(SceneCode.FLIGHT_SUMMARY); summaryController.setApp(parent); summaryController.flightPathListView(); } @@ -68,7 +69,7 @@ public class AirlineSummaryController extends MenuController{ public void airportSummaryButton() { try { AirportSummaryController summaryController = (AirportSummaryController) - parent.replaceSceneContent("airport_summary.fxml"); + parent.replaceSceneContent(SceneCode.AIRPORT_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); } @@ -79,7 +80,7 @@ public class AirlineSummaryController extends MenuController{ public void routeSummaryButton() { try { RouteSummaryController summaryController = (RouteSummaryController) - parent.replaceSceneContent("routes_summary.fxml"); + parent.replaceSceneContent(SceneCode.ROUTE_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); } diff --git a/src/main/java/seng202/group9/GUI/AirportSummaryController.java b/src/main/java/seng202/group9/GUI/AirportSummaryController.java index 03d3dad..7e98673 100644 --- a/src/main/java/seng202/group9/GUI/AirportSummaryController.java +++ b/src/main/java/seng202/group9/GUI/AirportSummaryController.java @@ -7,6 +7,7 @@ import javafx.scene.control.TableView; import javafx.scene.control.cell.PropertyValueFactory; import seng202.group9.Controller.App; import seng202.group9.Controller.Dataset; +import seng202.group9.Controller.SceneCode; import seng202.group9.Core.Airport; /** @@ -47,7 +48,7 @@ public class AirportSummaryController extends MenuController{ public void airportRawDataButton() { try { AirportRDController rawDataController = (AirportRDController) - parent.replaceSceneContent("airport_raw_data.fxml"); + parent.replaceSceneContent(SceneCode.AIRPORT_RAW_DATA); rawDataController.setApp(parent); rawDataController.loadTables(); } @@ -58,7 +59,7 @@ public class AirportSummaryController extends MenuController{ public void flightSummaryButton() { try { FlightSummaryController summaryController = (FlightSummaryController) - parent.replaceSceneContent("flight_data_summary.fxml"); + parent.replaceSceneContent(SceneCode.FLIGHT_SUMMARY); summaryController.setApp(parent); summaryController.flightPathListView(); } @@ -69,7 +70,7 @@ public class AirportSummaryController extends MenuController{ public void routeSummaryButton() { try { RouteSummaryController summaryController = (RouteSummaryController) - parent.replaceSceneContent("routes_summary.fxml"); + parent.replaceSceneContent(SceneCode.ROUTE_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); } @@ -80,7 +81,7 @@ public class AirportSummaryController extends MenuController{ public void airlineSummaryButton() { try { AirlineSummaryController summaryController = (AirlineSummaryController) - parent.replaceSceneContent("airline_summary.fxml"); + parent.replaceSceneContent(SceneCode.AIRLINE_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); } diff --git a/src/main/java/seng202/group9/GUI/FlightSummaryController.java b/src/main/java/seng202/group9/GUI/FlightSummaryController.java index a534407..cbccbca 100644 --- a/src/main/java/seng202/group9/GUI/FlightSummaryController.java +++ b/src/main/java/seng202/group9/GUI/FlightSummaryController.java @@ -11,6 +11,7 @@ import javafx.scene.control.ListView; import javafx.scene.control.TableView; import seng202.group9.Controller.App; import seng202.group9.Controller.Dataset; +import seng202.group9.Controller.SceneCode; import seng202.group9.Core.FlightPath; import seng202.group9.Core.FlightPoint; @@ -66,7 +67,7 @@ public class FlightSummaryController implements Initializable { public void handleRawDataButton() { try { FlightRawDataController rawDataController = (FlightRawDataController) - parent.replaceSceneContent("flight_raw_data.fxml"); + parent.replaceSceneContent(SceneCode.FLIGHT_RAW_DATA); rawDataController.setApp(parent); rawDataController.loadTables(); rawDataController.flightPathListView(); @@ -79,7 +80,7 @@ public class FlightSummaryController implements Initializable { public void airportSummaryButton() { try { AirportSummaryController summaryController = (AirportSummaryController) - parent.replaceSceneContent("airport_summary.fxml"); + parent.replaceSceneContent(SceneCode.AIRPORT_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); } @@ -90,7 +91,7 @@ public class FlightSummaryController implements Initializable { public void routeSummaryButton() { try { RouteSummaryController summaryController = (RouteSummaryController) - parent.replaceSceneContent("routes_summary.fxml"); + parent.replaceSceneContent(SceneCode.ROUTE_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); } @@ -101,7 +102,7 @@ public class FlightSummaryController implements Initializable { public void airlineSummaryButton() { try { AirlineSummaryController summaryController = (AirlineSummaryController) - parent.replaceSceneContent("airline_summary.fxml"); + parent.replaceSceneContent(SceneCode.AIRLINE_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); } diff --git a/src/main/java/seng202/group9/GUI/MenuController.java b/src/main/java/seng202/group9/GUI/MenuController.java index 7167741..26e23fa 100644 --- a/src/main/java/seng202/group9/GUI/MenuController.java +++ b/src/main/java/seng202/group9/GUI/MenuController.java @@ -11,6 +11,7 @@ import javafx.scene.layout.BorderPane; import javafx.stage.Stage; import seng202.group9.Controller.App; +import seng202.group9.Controller.SceneCode; public class MenuController implements Initializable{ @@ -37,7 +38,7 @@ public class MenuController implements Initializable{ */ public void viewAirlineRawData() { try { - AirlineRDController summaryController = (AirlineRDController) parent.replaceSceneContent("airline_raw_data.fxml"); + AirlineRDController summaryController = (AirlineRDController) parent.replaceSceneContent(SceneCode.AIRLINE_RAW_DATA); summaryController.setApp(parent); summaryController.loadTables(); } catch (Exception e) { @@ -47,7 +48,7 @@ public class MenuController implements Initializable{ public void viewAirportRawData() { try { - AirportRDController summaryController = (AirportRDController) parent.replaceSceneContent("airport_raw_data.fxml"); + AirportRDController summaryController = (AirportRDController) parent.replaceSceneContent(SceneCode.AIRPORT_RAW_DATA); summaryController.setApp(parent); summaryController.loadTables(); } catch (Exception e) { @@ -57,7 +58,7 @@ public class MenuController implements Initializable{ public void viewRouteRawData() { try { - RouteRDController summaryController = (RouteRDController) parent.replaceSceneContent("route_raw_data.fxml"); + RouteRDController summaryController = (RouteRDController) parent.replaceSceneContent(SceneCode.ROUTE_RAW_DATA); summaryController.setApp(parent); summaryController.loadTables(); } catch (Exception e) { @@ -67,7 +68,7 @@ public class MenuController implements Initializable{ public void viewAirlineSummary() { try { - AirlineSummaryController summaryController = (AirlineSummaryController) parent.replaceSceneContent("airline_summary.fxml"); + AirlineSummaryController summaryController = (AirlineSummaryController) parent.replaceSceneContent(SceneCode.AIRLINE_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); } catch (Exception e) { @@ -77,7 +78,7 @@ public class MenuController implements Initializable{ public void viewAirportSummary() { try { - AirportSummaryController summaryController = (AirportSummaryController) parent.replaceSceneContent("airport_summary.fxml"); + AirportSummaryController summaryController = (AirportSummaryController) parent.replaceSceneContent(SceneCode.AIRPORT_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); } catch (Exception e) { @@ -87,7 +88,7 @@ public class MenuController implements Initializable{ public void viewRouteSummary() { try { - RouteSummaryController summaryController = (RouteSummaryController) parent.replaceSceneContent("routes_summary.fxml"); + RouteSummaryController summaryController = (RouteSummaryController) parent.replaceSceneContent(SceneCode.ROUTE_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); } catch (Exception e) { @@ -104,7 +105,7 @@ public class MenuController implements Initializable{ */ public void viewFlightSummary() { try { - FlightSummaryController summaryController = (FlightSummaryController) parent.replaceSceneContent("flight_data_summary.fxml"); + FlightSummaryController summaryController = (FlightSummaryController) parent.replaceSceneContent(SceneCode.FLIGHT_SUMMARY); summaryController.setApp(parent); summaryController.flightPathListView(); } catch (Exception e) { @@ -118,7 +119,7 @@ public class MenuController implements Initializable{ public void viewFlightRawData() { try { FlightRawDataController rawDataController = (FlightRawDataController) - parent.replaceSceneContent("flight_raw_data.fxml"); + parent.replaceSceneContent(SceneCode.FLIGHT_RAW_DATA); rawDataController.setApp(parent); rawDataController.loadTables(); rawDataController.flightPathListView(); diff --git a/src/main/java/seng202/group9/GUI/RouteSummaryController.java b/src/main/java/seng202/group9/GUI/RouteSummaryController.java index b5f023e..8c762ca 100644 --- a/src/main/java/seng202/group9/GUI/RouteSummaryController.java +++ b/src/main/java/seng202/group9/GUI/RouteSummaryController.java @@ -7,6 +7,7 @@ import javafx.scene.control.TableView; import javafx.scene.control.cell.PropertyValueFactory; import seng202.group9.Controller.App; import seng202.group9.Controller.Dataset; +import seng202.group9.Controller.SceneCode; import seng202.group9.Core.Route; /** @@ -46,7 +47,7 @@ public class RouteSummaryController extends MenuController{ public void routeRawDataButton() { try { RouteRDController rawDataController = (RouteRDController) - parent.replaceSceneContent("route_raw_data.fxml"); + parent.replaceSceneContent(SceneCode.ROUTE_RAW_DATA); rawDataController.setApp(parent); rawDataController.loadTables(); } @@ -57,7 +58,7 @@ public class RouteSummaryController extends MenuController{ public void flightSummaryButton() { try { FlightSummaryController summaryController = (FlightSummaryController) - parent.replaceSceneContent("flight_data_summary.fxml"); + parent.replaceSceneContent(SceneCode.FLIGHT_SUMMARY); summaryController.setApp(parent); summaryController.flightPathListView(); } @@ -68,7 +69,7 @@ public class RouteSummaryController extends MenuController{ public void airportSummaryButton() { try { AirportSummaryController summaryController = (AirportSummaryController) - parent.replaceSceneContent("airport_summary.fxml"); + parent.replaceSceneContent(SceneCode.AIRPORT_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); } @@ -79,7 +80,7 @@ public class RouteSummaryController extends MenuController{ public void airlineSummaryButton() { try { AirlineSummaryController summaryController = (AirlineSummaryController) - parent.replaceSceneContent("airline_summary.fxml"); + parent.replaceSceneContent(SceneCode.AIRLINE_SUMMARY); summaryController.setApp(parent); summaryController.loadTables(); }