diff --git a/res/userdb.db b/res/userdb.db index 5d9b977..cc838b9 100644 Binary files a/res/userdb.db and b/res/userdb.db differ diff --git a/src/main/java/seng202/group9/Controller/AirlineParser.java b/src/main/java/seng202/group9/Controller/AirlineParser.java index 9f2b8a0..1fe1643 100644 --- a/src/main/java/seng202/group9/Controller/AirlineParser.java +++ b/src/main/java/seng202/group9/Controller/AirlineParser.java @@ -1,5 +1,7 @@ package seng202.group9.Controller; +import javafx.collections.FXCollections; +import javafx.collections.ObservableList; import seng202.group9.Core.Airline; import java.io.*; @@ -7,11 +9,11 @@ import java.util.ArrayList; public class AirlineParser extends Parser { String filePath = ""; - ArrayList parsedAirline; + ObservableList parsedAirline; public AirlineParser(String filePath){ this.filePath = filePath; - parsedAirline = new ArrayList(); + parsedAirline = FXCollections.observableArrayList(); } public String parse() throws DataException{ @@ -120,7 +122,7 @@ public class AirlineParser extends Parser { "Entries With Errors: %2$d", successful, error); } - public ArrayList getResult(){ + public ObservableList getResult(){ return parsedAirline; } diff --git a/src/main/java/seng202/group9/GUI/AirlineRDController.java b/src/main/java/seng202/group9/GUI/AirlineRDController.java new file mode 100644 index 0000000..4baa7b1 --- /dev/null +++ b/src/main/java/seng202/group9/GUI/AirlineRDController.java @@ -0,0 +1,110 @@ +package seng202.group9.GUI; + +import javafx.fxml.FXML; +import javafx.fxml.Initializable; +import javafx.scene.control.TableColumn; +import javafx.scene.control.TableView; +import javafx.scene.control.TextField; +import javafx.scene.control.cell.PropertyValueFactory; +import seng202.group9.Controller.DataException; +import seng202.group9.Controller.Dataset; +import seng202.group9.Core.Airline; + +import java.net.URL; +import java.util.ResourceBundle; + + +/** + * Created by Sunguin on 2016/09/13. + */ +public class AirlineRDController extends MenuController implements Initializable{ + + @FXML + private TableView tableView; + @FXML + private TableColumn airlIDcol; + @FXML + private TableColumn airlNamecol; + @FXML + private TableColumn airlAliascol; + @FXML + private TableColumn airlIATAcol; + @FXML + private TableColumn airlICAOcol; + @FXML + private TableColumn airlCallsigncol; + @FXML + private TableColumn airlCountrycol; + @FXML + private TableColumn airlActivecol; + @FXML + private TextField airlNameBox; + @FXML + private TextField airlAliasBox; + @FXML + private TextField airlIATABox; + @FXML + private TextField airlICAOBox; + @FXML + private TextField airlCallsignBox; + @FXML + private TextField airlCountryBox; + @FXML + private TextField airlActiveBox; + @FXML + private TextField airlIDBox; + + + private Dataset theDataSet = null; + + public AirlineRDController(){ + } + + //Initializes the table. + //Uses dummy data since I have no idea how the data is connected together. + @Override + public void initialize(URL url, ResourceBundle rb) { + airlIDcol.setCellValueFactory(new PropertyValueFactory("ID")); + airlNamecol.setCellValueFactory(new PropertyValueFactory("Name")); + airlAliascol.setCellValueFactory(new PropertyValueFactory("Alias")); + airlIATAcol.setCellValueFactory(new PropertyValueFactory("IATA")); + airlICAOcol.setCellValueFactory(new PropertyValueFactory("ICAO")); + airlCallsigncol.setCellValueFactory(new PropertyValueFactory("CallSign")); + airlCountrycol.setCellValueFactory(new PropertyValueFactory("Country")); + airlActivecol.setCellValueFactory(new PropertyValueFactory("Active")); + + try { + theDataSet = new Dataset("test's", Dataset.getExisting); + }catch (DataException e){ + e.printStackTrace(); + } + try{ + System.out.println(theDataSet.importAirline("res/Samples/Airlines.txt")); + } catch (DataException e){ + e.printStackTrace(); + } + tableView.setItems(theDataSet.getAirlines()); + } + + //Dummy function to test the add button. + //Will edit when ID is added automatically. + public void addAirlineSingle() { + theDataSet.getAirlines().add(new Airline( + Integer.parseInt(airlIDBox.getText()), + airlNameBox.getText(), + airlAliasBox.getText(), + airlIATABox.getText(), + airlICAOBox.getText(), + airlCallsignBox.getText(), + airlCountryBox.getText(), + airlActiveBox.getText())); + airlIDBox.clear(); + airlNameBox.clear(); + airlAliasBox.clear(); + airlIATABox.clear(); + airlICAOBox.clear(); + airlCallsignBox.clear(); + airlCountryBox.clear(); + airlActiveBox.clear(); + } +} diff --git a/src/main/java/seng202/group9/GUI/AirportRDController.java b/src/main/java/seng202/group9/GUI/AirportRDController.java new file mode 100644 index 0000000..60e6ec7 --- /dev/null +++ b/src/main/java/seng202/group9/GUI/AirportRDController.java @@ -0,0 +1,12 @@ +package seng202.group9.GUI; + +import javafx.fxml.Initializable; + +/** + * Created by Sunguin on 2016/09/13. + */ +public class AirportRDController extends MenuController implements Initializable { + + public AirportRDController(){ + } +} diff --git a/src/main/resources/airline_raw_data.fxml b/src/main/resources/airline_raw_data.fxml index a3937a7..13e3f9f 100644 --- a/src/main/resources/airline_raw_data.fxml +++ b/src/main/resources/airline_raw_data.fxml @@ -1,127 +1,104 @@ - - - - - - + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - + +