Merging filter complete GUI for Airport, Airline and Route Raw Data
This commit is contained in:
@@ -83,7 +83,7 @@ public class AirportFilter extends Filter{
|
||||
}
|
||||
|
||||
public void filterLatitude(String latitude){
|
||||
String regexCode = "(?i).*"+latitude+".*";
|
||||
String regexCode = ".*"+latitude+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!String.valueOf(filteredList.get(index).getLatitude()).matches(regexCode)){
|
||||
@@ -95,7 +95,7 @@ public class AirportFilter extends Filter{
|
||||
}
|
||||
|
||||
public void filterLongitude(String longitude){
|
||||
String regexCode = "(?i).*"+longitude+".*";
|
||||
String regexCode = ".*"+longitude+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!String.valueOf(filteredList.get(index).getLongitude()).matches(regexCode)){
|
||||
@@ -107,7 +107,7 @@ public class AirportFilter extends Filter{
|
||||
}
|
||||
|
||||
public void filterAltitude(String altitude){
|
||||
String regexCode = "(?i).*"+altitude+".*";
|
||||
String regexCode = ".*"+altitude+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!String.valueOf(filteredList.get(index).getAltitude()).matches(regexCode)){
|
||||
@@ -146,7 +146,7 @@ public class AirportFilter extends Filter{
|
||||
String regexCode = "(?i).*"+DST+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getCountry().getDST().matches(regexCode)){
|
||||
if (!filteredList.get(index).getDST().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
|
||||
@@ -740,7 +740,7 @@ public class Dataset {
|
||||
HashMap<String, Airline> airlineByIATA= new HashMap<String, Airline>();
|
||||
//create Airline country link
|
||||
for (Airline airline: airlines){
|
||||
airlineByIATA.put(airline.getAlias(), airline);
|
||||
airlineByIATA.put(airline.getIATA(), airline);
|
||||
//System.out.println(airline.getAlias());
|
||||
airline.setCountry(countryDictionary.get(airline.getCountryName()));
|
||||
}
|
||||
@@ -831,6 +831,7 @@ public class Dataset {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
}
|
||||
createDataLinks();
|
||||
}
|
||||
|
||||
public void addAirport(String name, String city, String country, String IATA_FFA, String ICAO, String latitude, String longitude,
|
||||
@@ -890,6 +891,7 @@ public class Dataset {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
}
|
||||
createDataLinks();
|
||||
}
|
||||
|
||||
public void addCity(City city){
|
||||
@@ -1015,6 +1017,7 @@ public class Dataset {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
}
|
||||
createDataLinks();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1180,10 +1183,14 @@ public class Dataset {
|
||||
try {
|
||||
Class.forName("org.sqlite.JDBC");
|
||||
c = DriverManager.getConnection("jdbc:sqlite:res/userdb.db");
|
||||
//System.out.println(airline.getID());
|
||||
String deleteQuery = "DELETE FROM `"+this.name+"_Airline` WHERE `Airline_ID` = " + airline.getID() + ";";
|
||||
stmt = c.createStatement();
|
||||
//System.out.println("Airline deleted");
|
||||
stmt.execute(deleteQuery);
|
||||
//System.out.println("Airline deleted");
|
||||
stmt.close();
|
||||
//System.out.println("Airline deleted");
|
||||
stmt = c.createStatement();
|
||||
//check if number of countries that contain airlines > 0 else delete the country
|
||||
String countCountry = "SELECT COUNT(*) FROM `"+this.name+"_Airline` JOIN `"+this.name+"_Country` ON" +
|
||||
@@ -1196,6 +1203,7 @@ public class Dataset {
|
||||
}
|
||||
countCountryRes.close();
|
||||
stmt.close();
|
||||
|
||||
//check if number of counties that contain airports > 0 else delete the country
|
||||
String countCountryA = "SELECT COUNT(*) FROM `"+this.name+"_Airport` JOIN `"+this.name+"_Country` ON" +
|
||||
" `"+this.name+"_Country`.`Country_Name` = `"+this.name+"_Airport`.`Country`" +
|
||||
@@ -1216,7 +1224,7 @@ public class Dataset {
|
||||
c.close();
|
||||
} catch ( Exception e ) {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
//System.exit(0);
|
||||
}
|
||||
airlines.remove(airline);
|
||||
}
|
||||
|
||||
@@ -73,7 +73,7 @@ public class RouteFilter extends Filter{
|
||||
String regexCode = "(?i).*"+stops+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getArrivalAirport().matches(regexCode)){
|
||||
if (!String.valueOf(filteredList.get(index).getStops()).matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
|
||||
@@ -123,7 +123,7 @@ public class Route {
|
||||
}
|
||||
//JavaDoc needed
|
||||
public int getAirlineID() throws DataException {
|
||||
if (this.airline != null) {
|
||||
if (this.getAirline() != null) {
|
||||
return this.getAirline().getID();
|
||||
}else {
|
||||
return 0;
|
||||
@@ -241,7 +241,7 @@ public class Route {
|
||||
*/
|
||||
public void hasDuplicate(Route route) throws DataException{
|
||||
//routeAirline + routeSourceAirport + routeArrvAirport + routeCodeShare + routeStops + routeEquip
|
||||
if (route.getAirline().equals(this.airline) && route.getDepartureAirport().equals(this.departureAirport)
|
||||
if (route.getAirlineName().equals(this.airlineName) && route.getDepartureAirport().equals(this.departureAirport)
|
||||
&& route.getArrivalAirport().equals(this.arrivalAirport) && route.getCode().equals(this.codeShare)
|
||||
&& route.getStops() == this.stops && route.getEquipment().equals(this.equipment)){
|
||||
throw new DataException("This Route already exists.");
|
||||
|
||||
@@ -1,25 +1,20 @@
|
||||
package seng202.group9.GUI;
|
||||
|
||||
import javafx.collections.FXCollections;
|
||||
import javafx.collections.ObservableList;
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.fxml.Initializable;
|
||||
import javafx.scene.control.*;
|
||||
import javafx.scene.control.cell.PropertyValueFactory;
|
||||
import seng202.group9.Controller.App;
|
||||
import seng202.group9.Controller.AirlineFilter;
|
||||
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 Controller {
|
||||
|
||||
@FXML
|
||||
private TableView<Airline> tableView;
|
||||
private TableView<Airline> tableViewAirlineRD;
|
||||
@FXML
|
||||
private TableColumn<Airline, String> airlIDcol;
|
||||
@FXML
|
||||
@@ -36,6 +31,7 @@ public class AirlineRDController extends Controller {
|
||||
private TableColumn<Airline, String> airlCountrycol;
|
||||
@FXML
|
||||
private TableColumn<Airline, String> airlActivecol;
|
||||
|
||||
@FXML
|
||||
private TextField airlNameBox;
|
||||
@FXML
|
||||
@@ -49,9 +45,23 @@ public class AirlineRDController extends Controller {
|
||||
@FXML
|
||||
private TextField airlCountryBox;
|
||||
@FXML
|
||||
//private TextField airlActiveBox;
|
||||
private ComboBox<String> airlActiveCBox;
|
||||
|
||||
@FXML
|
||||
private TextField airlNameFilter;
|
||||
@FXML
|
||||
private TextField airlAliasFilter;
|
||||
@FXML
|
||||
private TextField airlIATAFilter;
|
||||
@FXML
|
||||
private TextField airlICAOFilter;
|
||||
@FXML
|
||||
private TextField airlCallsignFilter;
|
||||
@FXML
|
||||
private TextField airlCountryFilter;
|
||||
@FXML
|
||||
private TextField airlActiveFilter;
|
||||
|
||||
private Dataset theDataSet = null;
|
||||
|
||||
//Dummy function to test the add button.
|
||||
@@ -73,7 +83,7 @@ public class AirlineRDController extends Controller {
|
||||
airlCallsignBox.clear();
|
||||
airlCountryBox.clear();
|
||||
airlActiveCBox.getSelectionModel().clearSelection();
|
||||
tableView.setItems(FXCollections.observableArrayList(theDataSet.getAirlines()));
|
||||
tableViewAirlineRD.setItems(FXCollections.observableArrayList(theDataSet.getAirlines()));
|
||||
} catch ( Exception e ) {
|
||||
Alert alert = new Alert(Alert.AlertType.ERROR);
|
||||
alert.setTitle("Airline Data Error");
|
||||
@@ -87,7 +97,6 @@ public class AirlineRDController extends Controller {
|
||||
airlIDcol.setCellValueFactory(new PropertyValueFactory<Airline, String>("ID"));
|
||||
airlNamecol.setCellValueFactory(new PropertyValueFactory<Airline, String>("Name"));
|
||||
airlAliascol.setCellValueFactory(new PropertyValueFactory<Airline, String>("Alias"));
|
||||
//Need to check IATA and ICAO
|
||||
airlIATAcol.setCellValueFactory(new PropertyValueFactory<Airline, String>("IATA"));
|
||||
airlICAOcol.setCellValueFactory(new PropertyValueFactory<Airline, String>("ICAO"));
|
||||
airlCallsigncol.setCellValueFactory(new PropertyValueFactory<Airline, String>("CallSign"));
|
||||
@@ -95,9 +104,41 @@ public class AirlineRDController extends Controller {
|
||||
airlActivecol.setCellValueFactory(new PropertyValueFactory<Airline, String>("Active"));
|
||||
|
||||
theDataSet = getParent().getCurrentDataset();
|
||||
tableView.setItems(FXCollections.observableArrayList(theDataSet.getAirlines()));
|
||||
//ObservableList<String> activeOptions= FXCollections.observableArrayList("Y", "N");
|
||||
tableViewAirlineRD.setItems(FXCollections.observableArrayList(theDataSet.getAirlines()));
|
||||
|
||||
airlActiveCBox.setValue("Y");
|
||||
airlActiveCBox.getItems().addAll("Y", "N");
|
||||
}
|
||||
|
||||
public void deleteAirline() {
|
||||
Airline toDelete = tableViewAirlineRD.getSelectionModel().getSelectedItem();
|
||||
theDataSet.deleteAirline(toDelete);
|
||||
tableViewAirlineRD.setItems(FXCollections.observableArrayList(theDataSet.getAirlines()));
|
||||
}
|
||||
|
||||
public void filterAirlines() {
|
||||
AirlineFilter filter = new AirlineFilter(theDataSet.getAirlines());
|
||||
if (airlNameFilter.getText() != null) {
|
||||
filter.filterName(airlNameFilter.getText());
|
||||
}
|
||||
if (airlAliasFilter.getText() != null) {
|
||||
filter.filterAlias(airlAliasFilter.getText());
|
||||
}
|
||||
if (airlIATAFilter.getText() != null) {
|
||||
filter.filterIATA(airlIATAFilter.getText());
|
||||
}
|
||||
if (airlICAOFilter.getText() != null) {
|
||||
filter.filterICAO(airlICAOFilter.getText());
|
||||
}
|
||||
if (airlCallsignFilter.getText() != null) {
|
||||
filter.filterCallsign(airlCallsignFilter.getText());
|
||||
}
|
||||
if (airlCountryFilter.getText() != null) {
|
||||
filter.filterCountry(airlCountryFilter.getText());
|
||||
}
|
||||
if (airlActiveFilter.getText() != null) {
|
||||
filter.filterActive(airlActiveFilter.getText());
|
||||
}
|
||||
tableViewAirlineRD.setItems(FXCollections.<Airline>observableArrayList(filter.getFilteredData()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ import javafx.fxml.FXML;
|
||||
import javafx.scene.control.*;
|
||||
import javafx.scene.control.cell.PropertyValueFactory;
|
||||
import javafx.util.Callback;
|
||||
import seng202.group9.Controller.AirportFilter;
|
||||
import seng202.group9.Controller.App;
|
||||
import seng202.group9.Controller.Dataset;
|
||||
import seng202.group9.Controller.SceneCode;
|
||||
@@ -75,6 +76,29 @@ public class AirportRDController extends Controller{
|
||||
@FXML
|
||||
private TextField airpTzBox;
|
||||
|
||||
@FXML
|
||||
private TextField airpNameFilter;
|
||||
@FXML
|
||||
private TextField airpCityFilter;
|
||||
@FXML
|
||||
private TextField airpCountryFilter;
|
||||
@FXML
|
||||
private TextField airpIATAFFAFilter;
|
||||
@FXML
|
||||
private TextField airpICAOFilter;
|
||||
@FXML
|
||||
private TextField airpLatitudeFilter;
|
||||
@FXML
|
||||
private TextField airpLongitudeFilter;
|
||||
@FXML
|
||||
private TextField airpAltitudeFilter;
|
||||
@FXML
|
||||
private TextField airpTimezoneFilter;
|
||||
@FXML
|
||||
private TextField airpDSTFilter;
|
||||
@FXML
|
||||
private TextField airpTzFilter;
|
||||
|
||||
private Dataset theDataSet = null;
|
||||
|
||||
public void load() {
|
||||
@@ -91,26 +115,10 @@ public class AirportRDController extends Controller{
|
||||
airpDSTcol.setCellValueFactory(new PropertyValueFactory<Airport, String>("DST"));
|
||||
airpTzcol.setCellValueFactory(new PropertyValueFactory<Airport, String>("Tz"));
|
||||
|
||||
// airpTimezonecol.setCellFactory(new Callback<TableColumn<Airport, String>, TableCell<Airport, String>>() {
|
||||
//
|
||||
// @Override
|
||||
// public TableCell<Airport, City> call(TableColumn<Airport, City> param) {
|
||||
// TableCell<Airport, City> timeZoneCell = new TableCell<Airport, City>() {
|
||||
// @Override
|
||||
// protected void updateItem(City timezone, boolean empty) {
|
||||
// if (timezone != null) {
|
||||
// Label timeZoneLabel = new Label(timezone.getTimeOlson());
|
||||
// setGraphic(timeZoneLabel);
|
||||
// }
|
||||
// }
|
||||
// };
|
||||
//
|
||||
// return timeZoneCell;
|
||||
// }
|
||||
// });
|
||||
theDataSet = getParent().getCurrentDataset();
|
||||
tableViewAirportRD.setItems(FXCollections.observableArrayList(theDataSet.getAirports()));
|
||||
|
||||
airpDSTCBox.setValue("E");
|
||||
airpDSTCBox.getItems().addAll("E", "A", "S", "O", "Z", "N", "U");
|
||||
}
|
||||
|
||||
@@ -147,7 +155,51 @@ public class AirportRDController extends Controller{
|
||||
alert.showAndWait();
|
||||
}
|
||||
}
|
||||
public void airportAnalyserButton(){
|
||||
public void airportAnalyserButton() {
|
||||
replaceSceneContent(SceneCode.AIRPORT_ANALYSER);
|
||||
}
|
||||
|
||||
public void deleteAirport(){
|
||||
Airport toDelete = tableViewAirportRD.getSelectionModel().getSelectedItem();
|
||||
theDataSet.deleteAirport(toDelete);
|
||||
tableViewAirportRD.setItems(FXCollections.observableArrayList(theDataSet.getAirports()));
|
||||
}
|
||||
|
||||
public void filterAirports() {
|
||||
AirportFilter filter = new AirportFilter(theDataSet.getAirports());
|
||||
if (airpNameFilter.getText() != null) {
|
||||
filter.filterName(airpNameFilter.getText());
|
||||
}
|
||||
if (airpCityFilter.getText() != null) {
|
||||
filter.filterCity(airpCityFilter.getText());
|
||||
}
|
||||
if (airpCountryFilter.getText() != null) {
|
||||
filter.filterCountry(airpCountryFilter.getText());
|
||||
}
|
||||
if (airpIATAFFAFilter.getText() != null) {
|
||||
filter.filterIATA_FFA(airpIATAFFAFilter.getText());
|
||||
}
|
||||
if (airpICAOFilter.getText() != null) {
|
||||
filter.filterICAO(airpICAOFilter.getText());
|
||||
}
|
||||
if (airpLatitudeFilter.getText() != null) {
|
||||
filter.filterLatitude(airpLatitudeFilter.getText());
|
||||
}
|
||||
if (airpLongitudeFilter.getText() != null) {
|
||||
filter.filterLongitude(airpLongitudeFilter.getText());
|
||||
}
|
||||
if (airpAltitudeFilter.getText() != null) {
|
||||
filter.filterAltitude(airpAltitudeFilter.getText());
|
||||
}
|
||||
if (airpTimezoneFilter.getText() != null) {
|
||||
filter.filterTimezone(airpTimezoneFilter.getText());
|
||||
}
|
||||
if (airpDSTFilter.getText() != null) {
|
||||
filter.filterDST(airpDSTFilter.getText());
|
||||
}
|
||||
if (airpTzFilter.getText() != null) {
|
||||
filter.filterOlson(airpTzFilter.getText());
|
||||
}
|
||||
tableViewAirportRD.setItems(FXCollections.<Airport>observableArrayList(filter.getFilteredData()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,10 +5,14 @@ import javafx.fxml.FXML;
|
||||
import javafx.scene.control.*;
|
||||
import javafx.scene.control.cell.PropertyValueFactory;
|
||||
import seng202.group9.Controller.App;
|
||||
import seng202.group9.Controller.DataException;
|
||||
import seng202.group9.Controller.Dataset;
|
||||
import seng202.group9.Controller.SceneCode;
|
||||
import seng202.group9.Controller.RouteFilter;
|
||||
import seng202.group9.Core.Route;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* Created by Sunguin on 2016/09/14.
|
||||
*/
|
||||
@@ -48,6 +52,19 @@ public class RouteRDController extends Controller {
|
||||
@FXML
|
||||
private TextField rEquipmentBox;
|
||||
|
||||
@FXML
|
||||
private TextField rAirlineFilter;
|
||||
@FXML
|
||||
private TextField rSourceFilter;
|
||||
@FXML
|
||||
private TextField rDestFilter;
|
||||
@FXML
|
||||
private TextField rCodeshareFilter;
|
||||
@FXML
|
||||
private TextField rStopsFilter;
|
||||
@FXML
|
||||
private TextField rEquipmentFilter;
|
||||
@FXML
|
||||
private Dataset theDataSet = null;
|
||||
|
||||
public void addRouteSingle() {
|
||||
@@ -67,12 +84,19 @@ public class RouteRDController extends Controller {
|
||||
rStopsBox.clear();
|
||||
rEquipmentBox.clear();
|
||||
tableViewRouteRD.setItems(FXCollections.observableArrayList(theDataSet.getRoutes()));
|
||||
} catch ( Exception e ) {
|
||||
} catch (DataException e){
|
||||
Alert alert = new Alert(Alert.AlertType.ERROR);
|
||||
alert.setTitle("Route Data Error");
|
||||
alert.setHeaderText("Error adding a custom route entry.");
|
||||
alert.setContentText(e.getMessage());
|
||||
alert.showAndWait();
|
||||
} catch ( Exception e ) {
|
||||
e.printStackTrace();
|
||||
Alert alert = new Alert(Alert.AlertType.ERROR);
|
||||
alert.setTitle("Route Error");
|
||||
alert.setHeaderText("Error adding a custom route entry.");
|
||||
alert.setContentText(e.getMessage());
|
||||
alert.showAndWait();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,7 +114,41 @@ public class RouteRDController extends Controller {
|
||||
theDataSet = getParent().getCurrentDataset();
|
||||
tableViewRouteRD.setItems(FXCollections.observableArrayList(theDataSet.getRoutes()));
|
||||
|
||||
rCodeshareCBox.setValue("");
|
||||
rCodeshareCBox.getItems().addAll("Y", "");
|
||||
|
||||
}
|
||||
|
||||
public void deleteRoute(){
|
||||
Route toDelete = tableViewRouteRD.getSelectionModel().getSelectedItem();
|
||||
theDataSet.deleteRoute(toDelete);
|
||||
tableViewRouteRD.setItems(FXCollections.observableArrayList(theDataSet.getRoutes()));
|
||||
}
|
||||
|
||||
public void filterRoutes(){
|
||||
RouteFilter filter = new RouteFilter(theDataSet.getRoutes());
|
||||
if (rAirlineFilter.getText() != null) {
|
||||
//System.out.println("Hello over here");
|
||||
filter.filterAirline(rAirlineFilter.getText());
|
||||
}
|
||||
if (rSourceFilter.getText() != null) {
|
||||
filter.filterSourceAirport(rSourceFilter.getText());
|
||||
}
|
||||
if (rDestFilter.getText() != null) {
|
||||
filter.filterDestinationAirport(rDestFilter.getText());
|
||||
}
|
||||
if (rCodeshareFilter.getText() != null) {
|
||||
filter.filterCodeshare(rCodeshareFilter.getText());
|
||||
}
|
||||
if (rStopsFilter.getText() != null) {
|
||||
filter.filterDestinationStops(rStopsFilter.getText());
|
||||
}
|
||||
if (rEquipmentFilter.getText() != null) {
|
||||
filter.filterEquipment(rEquipmentFilter.getText());
|
||||
}
|
||||
// System.out.println("Hello");
|
||||
// filter.printFilter();
|
||||
tableViewRouteRD.setItems(FXCollections.<Route>observableArrayList(filter.getFilteredData()));
|
||||
}
|
||||
|
||||
public void analyse_Button() {
|
||||
|
||||
@@ -3,7 +3,10 @@
|
||||
<?import javafx.geometry.Insets?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.scene.control.ComboBox?>
|
||||
<?import javafx.scene.control.ContextMenu?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.MenuItem?>
|
||||
<?import javafx.scene.control.ScrollPane?>
|
||||
<?import javafx.scene.control.TableColumn?>
|
||||
<?import javafx.scene.control.TableView?>
|
||||
<?import javafx.scene.control.TextField?>
|
||||
@@ -32,9 +35,9 @@
|
||||
</Label>
|
||||
<Button layoutX="14.0" layoutY="526.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="125.0" text="Analyse" />
|
||||
<Button layoutX="654.0" layoutY="526.0" mnemonicParsing="false" onAction="#addAirlineSingle" prefHeight="25.0" prefWidth="125.0" text="Add" />
|
||||
<Pane layoutX="14.0" layoutY="57.0" prefHeight="403.0" prefWidth="765.0">
|
||||
<Pane layoutX="14.0" layoutY="57.0" prefHeight="340.0" prefWidth="765.0">
|
||||
<children>
|
||||
<TableView fx:id="tableView" layoutX="1.0" prefHeight="403.0" prefWidth="765.0">
|
||||
<TableView fx:id="tableViewAirlineRD" layoutX="1.0" prefHeight="340.0" prefWidth="765.0">
|
||||
<columns>
|
||||
<TableColumn fx:id="airlIDcol" prefWidth="83.0" text="Airline ID" />
|
||||
<TableColumn fx:id="airlNamecol" prefWidth="450.0" text="Name" />
|
||||
@@ -45,45 +48,101 @@
|
||||
<TableColumn fx:id="airlCountrycol" minWidth="0.0" prefWidth="200.0" text="Country" />
|
||||
<TableColumn fx:id="airlActivecol" minWidth="8.0" prefWidth="66.0" text="Active" />
|
||||
</columns>
|
||||
<contextMenu>
|
||||
<ContextMenu>
|
||||
<items>
|
||||
<MenuItem mnemonicParsing="false" onAction="#deleteAirline" text="Delete" />
|
||||
</items>
|
||||
</ContextMenu>
|
||||
</contextMenu>
|
||||
</TableView>
|
||||
</children>
|
||||
</Pane>
|
||||
<Pane layoutX="14.0" layoutY="483.0" prefHeight="31.0" prefWidth="765.0">
|
||||
<children>
|
||||
<TextField fx:id="airlNameBox" layoutX="97.0" layoutY="-1.0" prefHeight="31.0" prefWidth="137.0" promptText="Name">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlAliasBox" layoutX="234.0" layoutY="-1.0" prefHeight="31.0" prefWidth="69.0" promptText="Alias">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlIATABox" layoutX="303.0" layoutY="-1.0" prefHeight="31.0" prefWidth="69.0" promptText="IATA">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlICAOBox" layoutX="372.0" layoutY="-1.0" prefHeight="31.0" prefWidth="69.0" promptText="ICAO">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlCallsignBox" layoutX="441.0" layoutY="-1.0" prefHeight="31.0" prefWidth="84.0" promptText="Callsign">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlCountryBox" layoutX="525.0" layoutY="-1.0" prefHeight="31.0" prefWidth="137.0" promptText="Country">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<Label layoutY="2.0" prefHeight="25.0" prefWidth="93.0" text="Enter Values:" />
|
||||
<ComboBox fx:id="airlActiveCBox" layoutX="662.0" layoutY="-1.0" prefHeight="31.0" prefWidth="102.0" promptText="Active" />
|
||||
</children>
|
||||
</Pane>
|
||||
<ScrollPane layoutX="14.0" layoutY="467.0" prefHeight="56.0" prefWidth="765.0">
|
||||
<content>
|
||||
<Pane prefHeight="37.0" prefWidth="1436.0">
|
||||
<children>
|
||||
<TextField fx:id="airlNameBox" layoutX="97.0" layoutY="3.0" prefHeight="31.0" prefWidth="450.0" promptText="Name">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlAliasBox" layoutX="547.0" layoutY="3.0" prefHeight="31.0" prefWidth="56.0" promptText="Alias">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlIATABox" layoutX="603.0" layoutY="3.0" prefHeight="31.0" prefWidth="59.0" promptText="IATA">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlICAOBox" layoutX="662.0" layoutY="3.0" prefHeight="31.0" prefWidth="68.0" promptText="ICAO">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlCallsignBox" layoutX="730.0" layoutY="3.0" prefHeight="31.0" prefWidth="400.0" promptText="Callsign">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlCountryBox" layoutX="1130.0" layoutY="3.0" prefHeight="31.0" prefWidth="200.0" promptText="Country">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<Label layoutX="14.0" layoutY="6.0" prefHeight="25.0" prefWidth="84.0" text="Add Airline:" />
|
||||
<ComboBox fx:id="airlActiveCBox" layoutX="1330.0" layoutY="-1.0" prefHeight="31.0" prefWidth="102.0" promptText="Active" />
|
||||
</children>
|
||||
</Pane>
|
||||
</content>
|
||||
</ScrollPane>
|
||||
<ScrollPane layoutX="14.0" layoutY="406.0" prefHeight="56.0" prefWidth="713.0">
|
||||
<content>
|
||||
<Pane prefHeight="37.0" prefWidth="1315.0">
|
||||
<children>
|
||||
<TextField fx:id="airlNameFilter" layoutX="57.0" layoutY="3.0" prefHeight="31.0" prefWidth="400.0" promptText="Name">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlAliasFilter" layoutX="457.0" layoutY="3.0" prefHeight="31.0" prefWidth="56.0" promptText="Alias">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlIATAFilter" layoutX="513.0" layoutY="3.0" prefHeight="31.0" prefWidth="59.0" promptText="IATA">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlICAOFilter" layoutX="572.0" layoutY="3.0" prefHeight="31.0" prefWidth="68.0" promptText="ICAO">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlCallsignFilter" layoutX="640.0" layoutY="3.0" prefHeight="31.0" prefWidth="400.0" promptText="Callsign">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlCountryFilter" layoutX="1040.0" layoutY="3.0" prefHeight="31.0" prefWidth="200.0" promptText="Country">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<Label layoutX="10.0" layoutY="6.0" prefHeight="25.0" prefWidth="47.0" text="Filter :" />
|
||||
<TextField fx:id="airlActiveFilter" layoutX="1240.0" layoutY="3.0" prefHeight="31.0" prefWidth="66.0" promptText="Active">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
</children>
|
||||
</Pane>
|
||||
</content>
|
||||
</ScrollPane>
|
||||
<Button layoutX="733.0" layoutY="416.0" mnemonicParsing="false" onAction="#filterAirlines" prefHeight="31.0" prefWidth="40.0" text="Go" />
|
||||
</children>
|
||||
</Pane>
|
||||
</children>
|
||||
|
||||
@@ -3,7 +3,9 @@
|
||||
<?import javafx.geometry.Insets?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.scene.control.ComboBox?>
|
||||
<?import javafx.scene.control.ContextMenu?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.MenuItem?>
|
||||
<?import javafx.scene.control.ScrollPane?>
|
||||
<?import javafx.scene.control.TableColumn?>
|
||||
<?import javafx.scene.control.TableView?>
|
||||
@@ -31,7 +33,7 @@
|
||||
<Font size="29.0" />
|
||||
</font>
|
||||
</Label>
|
||||
<ScrollPane hbarPolicy="ALWAYS" layoutX="14.0" layoutY="469.0" prefHeight="54.0" prefViewportHeight="29.0" prefViewportWidth="1095.0" prefWidth="772.0" vbarPolicy="NEVER">
|
||||
<ScrollPane hbarPolicy="ALWAYS" layoutX="14.0" layoutY="469.0" prefHeight="54.0" prefViewportHeight="29.0" prefViewportWidth="1095.0" prefWidth="764.0" vbarPolicy="NEVER">
|
||||
<content>
|
||||
<Pane prefHeight="39.0" prefWidth="1633.0">
|
||||
<children>
|
||||
@@ -50,17 +52,17 @@
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpIATAFFABox" layoutX="839.0" layoutY="4.0" prefHeight="31.0" prefWidth="87.0" promptText="IATA/FAA">
|
||||
<TextField fx:id="airpIATAFFABox" layoutX="839.0" layoutY="4.0" prefHeight="31.0" prefWidth="75.0" promptText="IATA/FAA">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpICAOBox" layoutX="926.0" layoutY="4.0" prefHeight="31.0" prefWidth="48.0" promptText="ICAO">
|
||||
<TextField fx:id="airpICAOBox" layoutX="914.0" layoutY="3.0" prefHeight="31.0" prefWidth="61.0" promptText="ICAO">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpLatitudeBox" layoutX="974.0" layoutY="4.0" prefHeight="31.0" prefWidth="100.0" promptText="Latitude">
|
||||
<TextField fx:id="airpLatitudeBox" layoutX="975.0" layoutY="3.0" prefHeight="31.0" prefWidth="100.0" promptText="Latitude">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
@@ -85,17 +87,23 @@
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<Label layoutX="2.0" layoutY="7.0" prefHeight="25.0" prefWidth="87.0" text="Enter Values:" />
|
||||
<Label layoutX="2.0" layoutY="7.0" prefHeight="25.0" prefWidth="87.0" text="Add Airport:" />
|
||||
<ComboBox fx:id="airpDSTCBox" layoutX="1349.0" layoutY="3.0" prefHeight="31.0" prefWidth="83.0" promptText="DST" />
|
||||
</children>
|
||||
</Pane>
|
||||
</content>
|
||||
</ScrollPane>
|
||||
<<<<<<< HEAD
|
||||
<Button layoutX="14.0" layoutY="526.0" mnemonicParsing="false" onAction="#airportAnalyserButton" prefHeight="25.0" prefWidth="125.0" text="Analyse" />
|
||||
<Button layoutX="662.0" layoutY="526.0" mnemonicParsing="false" onAction="#addAirportSingle" prefHeight="25.0" prefWidth="125.0" text="Add" />
|
||||
<Pane layoutX="15.0" layoutY="60.0" prefHeight="403.0" prefWidth="772.0">
|
||||
=======
|
||||
<Button layoutX="14.0" layoutY="526.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="125.0" text="Analyse" />
|
||||
<Button layoutX="653.0" layoutY="526.0" mnemonicParsing="false" onAction="#addAirportSingle" prefHeight="25.0" prefWidth="125.0" text="Add" />
|
||||
<Pane layoutX="15.0" layoutY="60.0" prefHeight="342.0" prefWidth="764.0">
|
||||
>>>>>>> raw_data_fixes
|
||||
<children>
|
||||
<TableView fx:id="tableViewAirportRD" prefHeight="403.0" prefWidth="772.0">
|
||||
<TableView fx:id="tableViewAirportRD" prefHeight="340.0" prefWidth="765.0">
|
||||
<columns>
|
||||
<TableColumn fx:id="airpIDcol" prefWidth="81.00003051757812" text="Airport ID" />
|
||||
<TableColumn fx:id="airpNamecol" prefWidth="350.0" text="Name" />
|
||||
@@ -110,8 +118,80 @@
|
||||
<TableColumn fx:id="airpDSTcol" prefWidth="55.0" text="DST" />
|
||||
<TableColumn fx:id="airpTzcol" minWidth="0.0" prefWidth="200.0" text="Tz database time zone" />
|
||||
</columns>
|
||||
<contextMenu>
|
||||
<ContextMenu>
|
||||
<items>
|
||||
<MenuItem mnemonicParsing="false" onAction="#deleteAirport" text="Delete" />
|
||||
</items>
|
||||
</ContextMenu>
|
||||
</contextMenu>
|
||||
</TableView>
|
||||
</children></Pane>
|
||||
<ScrollPane layoutX="15.0" layoutY="408.0" prefHeight="54.0" prefWidth="713.0">
|
||||
<content>
|
||||
<Pane prefHeight="32.0" prefWidth="1596.0">
|
||||
<children>
|
||||
<Label layoutX="14.0" layoutY="6.0" text="Filter :" />
|
||||
<TextField fx:id="airpNameFilter" layoutX="64.0" layoutY="3.0" prefHeight="31.0" prefWidth="350.0" promptText="Name">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpCityFilter" layoutX="414.0" layoutY="3.0" prefHeight="31.0" prefWidth="200.0" promptText="City">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpCountryFilter" layoutX="614.0" layoutY="3.0" prefHeight="31.0" prefWidth="200.0" promptText="Country">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpIATAFFAFilter" layoutX="814.0" layoutY="3.0" prefHeight="31.0" prefWidth="87.0" promptText="IATA/FAA">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpICAOFilter" layoutX="901.0" layoutY="3.0" prefHeight="31.0" prefWidth="61.0" promptText="ICAO">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpLatitudeFilter" layoutX="962.0" layoutY="3.0" prefHeight="31.0" prefWidth="100.0" promptText="Latitude">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpLongitudeFilter" layoutX="1062.0" layoutY="3.0" prefHeight="31.0" prefWidth="100.0" promptText="Longitude">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpAltitudeFilter" layoutX="1162.0" layoutY="3.0" prefHeight="31.0" prefWidth="75.0" promptText="Altitude">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpTimezoneFilter" layoutX="1237.0" layoutY="3.0" prefHeight="31.0" prefWidth="100.0" promptText="Timezone">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpTzFilter" layoutX="1395.0" layoutY="3.0" prefHeight="31.0" prefWidth="200.0" promptText="Tz database time zone">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpDSTFilter" layoutX="1337.0" layoutY="3.0" prefHeight="31.0" prefWidth="58.0" promptText="DST">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
</children>
|
||||
</Pane>
|
||||
</content>
|
||||
</ScrollPane>
|
||||
<Button layoutX="735.0" layoutY="420.0" mnemonicParsing="false" onAction="#filterAirports" prefHeight="31.0" prefWidth="40.0" text="Go" />
|
||||
</children>
|
||||
</Pane>
|
||||
</children>
|
||||
|
||||
@@ -3,7 +3,10 @@
|
||||
<?import javafx.geometry.Insets?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.scene.control.ComboBox?>
|
||||
<?import javafx.scene.control.ContextMenu?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.MenuItem?>
|
||||
<?import javafx.scene.control.Separator?>
|
||||
<?import javafx.scene.control.TableColumn?>
|
||||
<?import javafx.scene.control.TableView?>
|
||||
<?import javafx.scene.control.TextField?>
|
||||
@@ -32,9 +35,9 @@
|
||||
</Label>
|
||||
<Button layoutX="14.0" layoutY="524.0" mnemonicParsing="false" onAction="#analyse_Button" prefHeight="25.0" prefWidth="125.0" text="Analyse" />
|
||||
<Button layoutX="656.0" layoutY="524.0" mnemonicParsing="false" onAction="#addRouteSingle" prefHeight="25.0" prefWidth="125.0" text="Add" />
|
||||
<Pane layoutX="16.0" layoutY="53.0" prefHeight="403.0" prefWidth="765.0">
|
||||
<Pane layoutX="16.0" layoutY="53.0" prefHeight="340.0" prefWidth="765.0">
|
||||
<children>
|
||||
<TableView fx:id="tableViewRouteRD" layoutX="-1.0" prefHeight="403.0" prefWidth="765.0">
|
||||
<TableView fx:id="tableViewRouteRD" layoutX="-1.0" prefHeight="340.0" prefWidth="765.0">
|
||||
<columns>
|
||||
<TableColumn fx:id="rAirlineCol" prefWidth="67.0" text="Airline" />
|
||||
<TableColumn fx:id="rAirlineIDCol" prefWidth="86.0" text="Airline ID" />
|
||||
@@ -46,10 +49,17 @@
|
||||
<TableColumn fx:id="rStopsCol" minWidth="0.0" prefWidth="69.0" text="Stops" />
|
||||
<TableColumn fx:id="rEquipmentCol" prefWidth="98.0" text="Equipment" />
|
||||
</columns>
|
||||
<contextMenu>
|
||||
<ContextMenu>
|
||||
<items>
|
||||
<MenuItem mnemonicParsing="false" onAction="#deleteRoute" text="Delete" />
|
||||
</items>
|
||||
</ContextMenu>
|
||||
</contextMenu>
|
||||
</TableView>
|
||||
</children>
|
||||
</Pane>
|
||||
<Pane layoutX="16.0" layoutY="479.0" prefHeight="32.0" prefWidth="765.0">
|
||||
<Pane layoutX="14.0" layoutY="484.0" prefHeight="32.0" prefWidth="765.0">
|
||||
<children>
|
||||
<TextField fx:id="rAirlineBox" layoutX="90.0" layoutY="-1.0" prefHeight="31.0" prefWidth="100.0" promptText="Airline">
|
||||
<padding>
|
||||
@@ -76,10 +86,23 @@
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<Label layoutY="4.0" text="Enter Values:" />
|
||||
<Label layoutX="14.0" layoutY="4.0" text="Add Route:" />
|
||||
<ComboBox fx:id="rCodeshareCBox" layoutX="490.0" layoutY="-1.0" prefHeight="31.0" prefWidth="100.0" promptText="Codeshare" />
|
||||
</children>
|
||||
</Pane>
|
||||
<Pane layoutX="14.0" layoutY="405.0" prefHeight="45.0" prefWidth="724.0">
|
||||
<children>
|
||||
<Label layoutX="7.0" layoutY="12.0" text="Filter :" />
|
||||
<TextField fx:id="rAirlineFilter" layoutX="55.0" layoutY="7.0" prefHeight="31.0" prefWidth="100.0" promptText="Airline" />
|
||||
<TextField fx:id="rSourceFilter" layoutX="155.0" layoutY="7.0" prefHeight="31.0" prefWidth="150.0" promptText="Source airport" />
|
||||
<TextField fx:id="rDestFilter" layoutX="305.0" layoutY="7.0" prefHeight="31.0" prefWidth="150.0" promptText="Destination airport" />
|
||||
<TextField fx:id="rCodeshareFilter" layoutX="455.0" layoutY="7.0" prefHeight="31.0" prefWidth="89.0" promptText="Codeshare" />
|
||||
<TextField fx:id="rStopsFilter" layoutX="544.0" layoutY="7.0" prefHeight="31.0" prefWidth="75.0" promptText="Stops" />
|
||||
<TextField fx:id="rEquipmentFilter" layoutX="619.0" layoutY="7.0" prefHeight="31.0" prefWidth="100.0" promptText="Equipment" />
|
||||
</children>
|
||||
</Pane>
|
||||
<Separator layoutY="464.0" prefHeight="6.0" prefWidth="800.0" />
|
||||
<Button layoutX="738.0" layoutY="412.0" mnemonicParsing="false" onAction="#filterRoutes" prefHeight="31.0" prefWidth="40.0" text="Go" />
|
||||
</children>
|
||||
</Pane>
|
||||
</children>
|
||||
|
||||
Reference in New Issue
Block a user