diff --git a/res/userdb.db b/res/userdb.db new file mode 100644 index 0000000..451f4e6 Binary files /dev/null and b/res/userdb.db differ diff --git a/src/main/java/seng202/group9/Controller/SceneCode.java b/src/main/java/seng202/group9/Controller/SceneCode.java index 588369c..53fc4b6 100644 --- a/src/main/java/seng202/group9/Controller/SceneCode.java +++ b/src/main/java/seng202/group9/Controller/SceneCode.java @@ -11,7 +11,7 @@ public enum SceneCode { FLIGHT_RAW_DATA("flight_raw_data.fxml"), AIRPORT_ANALYSER("airport_analyser.fxml"), ROUTE_ANALYSER("route_analyser.fxml"), AIRPORT_DIST_CALC("airport_dist_calc.fxml"), AIRLINE_ADD("airline_add_form.fxml"), AIRLINE_FILTER("airline_filter_form.fxml"), AIRPORT_ADD("airport_add_form.fxml"), AIRPORT_FILTER("airport_filter_form.fxml"), ROUTE_ADD("route_add_form.fxml"), - ROUTE_FILTER("route_filter_form.fxml"); + ROUTE_FILTER("route_filter_form.fxml"), AIRLINE_EDIT("airline_edit_form.fxml"); private String filePath; diff --git a/src/main/java/seng202/group9/Controller/Session.java b/src/main/java/seng202/group9/Controller/Session.java index c63461d..05c71f6 100644 --- a/src/main/java/seng202/group9/Controller/Session.java +++ b/src/main/java/seng202/group9/Controller/Session.java @@ -12,10 +12,14 @@ import java.util.HashMap; */ public class Session implements Serializable { private SceneCode sceneDisplayed; + private HashMap filteredAirlines; private HashMap filteredAirports; private HashMap filteredRoutes; + private String airlineToEdit; + + /** * Constructor for a new session */ @@ -71,4 +75,12 @@ public class Session implements Serializable { public HashMap getFilteredRoutes() { return filteredRoutes; } + + public void setAirlineToEdit(String name) { + this.airlineToEdit = name; + } + + public String getAirlineToEdit() { + return airlineToEdit; + } } diff --git a/src/main/java/seng202/group9/GUI/AirlineEditController.java b/src/main/java/seng202/group9/GUI/AirlineEditController.java new file mode 100644 index 0000000..1d4de89 --- /dev/null +++ b/src/main/java/seng202/group9/GUI/AirlineEditController.java @@ -0,0 +1,54 @@ +package seng202.group9.GUI; + +import javafx.fxml.FXML; +import javafx.scene.control.Button; +import javafx.scene.control.TextField; +import seng202.group9.Controller.Dataset; +import seng202.group9.Controller.Session; +import seng202.group9.Core.Airline; + +/** + * Created by Sunguin on 2016/09/24. + */ +public class AirlineEditController extends Controller { + //Setting up text fields for editing data + @FXML + private TextField airlNameEdit; + @FXML + private TextField airlAliasEdit; + @FXML + private TextField airlIATAEdit; + @FXML + private TextField airlICAOEdit; + @FXML + private TextField airlCallsignEdit; + @FXML + private TextField airlCountryEdit; + @FXML + private TextField airlActiveEdit; + @FXML + private Button applyButton; + + private Dataset theDataSet = null; + private Session currentSession = null; + + public void editAirline() { + + } + + public void load() { + theDataSet = getParent().getCurrentDataset(); + currentSession = getParent().getSession(); + + //System.out.println(currentSession.getAirlineToEdit()); + Airline toEdit = theDataSet.getAirlineDictionary().get(currentSession.getAirlineToEdit()); + + airlNameEdit.setText(toEdit.getName()); + airlAliasEdit.setText(toEdit.getAlias()); + airlIATAEdit.setText(toEdit.getIATA()); + airlICAOEdit.setText(toEdit.getICAO()); + airlCallsignEdit.setText(toEdit.getCallSign()); + airlCountryEdit.setText(toEdit.getCountryName()); + airlActiveEdit.setText(toEdit.getActive()); + } +} diff --git a/src/main/java/seng202/group9/GUI/AirlineRDController.java b/src/main/java/seng202/group9/GUI/AirlineRDController.java index 020d07d..73cc207 100644 --- a/src/main/java/seng202/group9/GUI/AirlineRDController.java +++ b/src/main/java/seng202/group9/GUI/AirlineRDController.java @@ -104,7 +104,6 @@ public class AirlineRDController extends Controller { alert.setTitle("Airline Delete Confirmation"); alert.setHeaderText("You are about to delete some data."); alert.setContentText("Are you sure you want to delete the selected airline(s)?"); - //alert.showAndWait(); Optional result = alert.showAndWait(); Airline air = null; if (result.isPresent() && result.get() == ButtonType.OK) { @@ -116,6 +115,11 @@ public class AirlineRDController extends Controller { } } + public void editAirline() { + Airline toEdit = tableViewAirlineRD.getSelectionModel().getSelectedItem(); + currentSession.setAirlineToEdit(toEdit.getName()); + createPopUpStage(SceneCode.AIRLINE_EDIT, 600, 370); + } /** * Analyses the current data and creates a graph based on the data. diff --git a/src/main/resources/airline_edit_form.fxml b/src/main/resources/airline_edit_form.fxml new file mode 100644 index 0000000..0181fc5 --- /dev/null +++ b/src/main/resources/airline_edit_form.fxml @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +