Merge branch 'master' of https://eng-git.canterbury.ac.nz/fwy13/SENG202
# Conflicts: # res/userdb.db
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,131 @@
|
||||
package seng202.group9.Controller;
|
||||
|
||||
import seng202.group9.Core.Airline;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* Created by fwy13 on 16/09/16.
|
||||
*/
|
||||
public class AirlineFilter extends Filter{
|
||||
|
||||
private ArrayList<Airline> baseArray;
|
||||
private ArrayList<Airline> filteredList;
|
||||
|
||||
public AirlineFilter(ArrayList<Airline> baseList){
|
||||
filteredList = new ArrayList<Airline>();
|
||||
baseArray = new ArrayList<Airline>();
|
||||
for (Airline airline: baseList){
|
||||
baseArray.add(airline);
|
||||
filteredList.add(airline);
|
||||
}
|
||||
}
|
||||
|
||||
public void filterName(String name){
|
||||
String regexCode = "(?i).*"+name+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getName().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterAlias(String alias){
|
||||
String regexCode = "(?i).*"+alias+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getAlias().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterIATA(String IATA){
|
||||
String regexCode = "(?i).*"+IATA+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getIATA().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterICAO(String ICAO){
|
||||
String regexCode = "(?i).*"+ICAO+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getICAO().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterCallsign(String callsign){
|
||||
String regexCode = "(?i).*"+callsign+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getCallSign().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterCountry(String country){
|
||||
String regexCode = "(?i).*"+country+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getCountryName().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterActive(String active){
|
||||
String regexCode = "(?i).*"+active+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getActive().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void reset() {
|
||||
filteredList = new ArrayList<Airline>();
|
||||
for (Airline airline: filteredList){
|
||||
filteredList.add(airline);
|
||||
}
|
||||
}
|
||||
|
||||
public ArrayList getFilteredData() {
|
||||
return filteredList;
|
||||
}
|
||||
|
||||
public void setBaseList(ArrayList<Airline> arrayList) {
|
||||
baseArray = new ArrayList<Airline>();
|
||||
for (Airline airline: arrayList){
|
||||
baseArray.add(airline);
|
||||
}
|
||||
}
|
||||
|
||||
public void printFilter(){
|
||||
for (Airline airline: filteredList){
|
||||
System.out.println(airline);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,180 @@
|
||||
package seng202.group9.Controller;
|
||||
|
||||
import seng202.group9.Core.Airline;
|
||||
import seng202.group9.Core.Airport;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* Created by fwy13 on 16/09/16.
|
||||
*/
|
||||
public class AirportFilter extends Filter{
|
||||
|
||||
private ArrayList<Airport> baseArray;
|
||||
private ArrayList<Airport> filteredList;
|
||||
|
||||
public AirportFilter(ArrayList<Airport> baseList){
|
||||
filteredList = new ArrayList<Airport>();
|
||||
baseArray = new ArrayList<Airport>();
|
||||
for (Airport airport: baseList){
|
||||
baseArray.add(airport);
|
||||
filteredList.add(airport);
|
||||
}
|
||||
}
|
||||
|
||||
public void filterName(String name){
|
||||
String regexCode = "(?i).*"+name+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getName().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterCity(String city){
|
||||
String regexCode = "(?i).*"+city+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getCityName().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterCountry(String country){
|
||||
String regexCode = "(?i).*"+country+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getCountryName().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterIATA_FFA(String IATA_FFA){
|
||||
String regexCode = "(?i).*"+IATA_FFA+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getIATA_FFA().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterICAO(String ICAO){
|
||||
String regexCode = "(?i).*"+ICAO+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getICAO().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterLatitude(String latitude){
|
||||
String regexCode = "(?i).*"+latitude+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!String.valueOf(filteredList.get(index).getLatitude()).matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterLongitude(String longitude){
|
||||
String regexCode = "(?i).*"+longitude+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!String.valueOf(filteredList.get(index).getLongitude()).matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterAltitude(String altitude){
|
||||
String regexCode = "(?i).*"+altitude+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!String.valueOf(filteredList.get(index).getAltitude()).matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterTimezone(String timezone){
|
||||
String regexCode = "(?i).*"+timezone+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!String.valueOf(filteredList.get(index).getCity(). getTimezone()).matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterOlson(String olson){
|
||||
String regexCode = "(?i).*"+olson+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getCity().getTimeOlson().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterDST(String DST){
|
||||
String regexCode = "(?i).*"+DST+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getCountry().getDST().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void reset() {
|
||||
filteredList = new ArrayList<Airport>();
|
||||
for (Airport airport: filteredList){
|
||||
filteredList.add(airport);
|
||||
}
|
||||
}
|
||||
|
||||
public ArrayList getFilteredData() {
|
||||
return filteredList;
|
||||
}
|
||||
|
||||
public void setBaseList(ArrayList<Airport> arrayList) {
|
||||
baseArray = new ArrayList<Airport>();
|
||||
for (Airport airport: arrayList){
|
||||
baseArray.add(airport);
|
||||
}
|
||||
}
|
||||
|
||||
public void printFilter(){
|
||||
for (Airport airport: filteredList){
|
||||
System.out.println(airport);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -23,7 +23,7 @@ import seng202.group9.GUI.MenuController;
|
||||
*/
|
||||
public class App extends Application
|
||||
{
|
||||
private ArrayList<Dataset> Datasets = new ArrayList<Dataset>();
|
||||
private ArrayList<Dataset> datasets = new ArrayList<Dataset>();
|
||||
private Dataset currentDataset = null;
|
||||
private Stage primaryStage = null;
|
||||
private VBox mainContainer;
|
||||
@@ -62,6 +62,10 @@ public class App extends Application
|
||||
e.printStackTrace();
|
||||
|
||||
}
|
||||
AirlineFilter filter = new AirlineFilter(currentDataset.getAirlines());
|
||||
filter.filterName("NZ");
|
||||
filter.filterAlias("flight");
|
||||
filter.printFilter();
|
||||
/*
|
||||
//testout single route adding
|
||||
try {
|
||||
@@ -75,14 +79,12 @@ public class App extends Application
|
||||
}catch (DataException e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
//testout single airline adding
|
||||
try {
|
||||
currentDataset.addAirline("Dota2", "Valve", "D2", "DOT", "Defence of the Ancients", "Steam", "Y");
|
||||
}catch (DataException e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
//testing out airport parser
|
||||
try {
|
||||
System.out.println(currentDataset.importAirport("res/Samples/Airports.txt"));
|
||||
@@ -136,4 +138,9 @@ public class App extends Application
|
||||
public Dataset getCurrentDataset(){
|
||||
return currentDataset;
|
||||
}
|
||||
|
||||
public void deleteDataset(Dataset dataset){
|
||||
dataset.deleteDataset();
|
||||
datasets.remove(dataset);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -96,7 +96,7 @@ public class Dataset {
|
||||
String airCallsign = rs.getString("CallSign");
|
||||
String airCountry = rs.getString("Country");
|
||||
String airActive = rs.getString("Active");
|
||||
Airline airlineToAdd = new Airline(airID, airName, airIATA, airICAO, airAlias, airCallsign, airCountry, airActive);
|
||||
Airline airlineToAdd = new Airline(airID, airName, airAlias, airIATA, airICAO, airCallsign, airCountry, airActive);
|
||||
//assuming that all names will be unique
|
||||
airlineDictionary.put(airName, airlineToAdd);
|
||||
airlines.add(airlineToAdd);
|
||||
@@ -239,6 +239,7 @@ public class Dataset {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
}
|
||||
createDataLinks();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -739,14 +740,18 @@ public class Dataset {
|
||||
|
||||
public void createDataLinks(){
|
||||
//this may be seperated into more sepearate function in the future for time optimisation
|
||||
HashMap<String, Airline> airlineByIATA= new HashMap<String, Airline>();
|
||||
//create Airline country link
|
||||
for (Airline airline: airlines){
|
||||
airlineByIATA.put(airline.getAlias(), airline);
|
||||
//System.out.println(airline.getAlias());
|
||||
airline.setCountry(countryDictionary.get(airline.getCountryName()));
|
||||
}
|
||||
//create Airport City and Country Link
|
||||
HashMap<String, Airport> airportsByIATA = new HashMap<String, Airport>(); //this is used later for connecting the routes
|
||||
HashMap<String, Airport> airportsByICAO = new HashMap<String, Airport>(); //this is used later for connecting the routes
|
||||
for (Airport airport: airports){
|
||||
//System.out.println(airport.getIATA_FFA());
|
||||
airportsByIATA.put(airport.getIATA_FFA(), airport);
|
||||
airportsByICAO.put(airport.getICAO(), airport);
|
||||
airport.setCountry(countryDictionary.get(airport.getCountryName()));
|
||||
@@ -766,7 +771,7 @@ public class Dataset {
|
||||
}else{
|
||||
route.setDestinationAirport(airportsByIATA.get(route.getArrivalAirport()));
|
||||
}
|
||||
route.setAirline(airlineDictionary.get(route.getAirlineName()));
|
||||
route.setAirline(airlineByIATA.get(route.getAirlineName()));
|
||||
}
|
||||
System.out.println("Links Made");
|
||||
}
|
||||
@@ -1081,9 +1086,6 @@ public class Dataset {
|
||||
stmt.close();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
} catch ( Exception e ) {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
@@ -1095,6 +1097,242 @@ public class Dataset {
|
||||
|
||||
|
||||
}
|
||||
/**
|
||||
* This is called in conjunction to the App deleteDataset DO NOT CALL UNLESS THROUGH APP.DELETEDATASET
|
||||
*/
|
||||
public void deleteDataset(){
|
||||
//drop the tables
|
||||
Connection c = null;
|
||||
Statement stmt = null;
|
||||
try {
|
||||
Class.forName("org.sqlite.JDBC");
|
||||
c = DriverManager.getConnection("jdbc:sqlite:res/userdb.db");
|
||||
String[] tablesToDrop = {"_Airline", "_Airport", "_City", "_Country", "_Routes", "_Flight_Path", "_Flight_Points"};
|
||||
for (int i = 0; i < tablesToDrop.length; i++){
|
||||
stmt = c.createStatement();
|
||||
String dropTableStatment = "DROP TABLE `"+this.name+tablesToDrop[i]+"`";
|
||||
stmt.execute(dropTableStatment);
|
||||
stmt.close();
|
||||
}
|
||||
stmt = c.createStatement();
|
||||
String deleteDatasetEntry = "DELETE FROM `Datasets` WHERE `Dataset_Name` = \""+this.name+"\"";
|
||||
stmt.execute(deleteDatasetEntry);
|
||||
stmt.close();
|
||||
c.close();
|
||||
} catch ( Exception e ) {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* deletes an airline from the dataset.
|
||||
* @param airline
|
||||
*/
|
||||
public void deleteAirline(Airline airline){
|
||||
//drop the entries
|
||||
Connection c = null;
|
||||
Statement stmt = null;
|
||||
try {
|
||||
Class.forName("org.sqlite.JDBC");
|
||||
c = DriverManager.getConnection("jdbc:sqlite:res/userdb.db");
|
||||
String deleteQuery = "DELETE FROM `"+this.name+"_Airline` WHERE `Airline_ID` = " + airline.getID() + ";";
|
||||
stmt = c.createStatement();
|
||||
stmt.execute(deleteQuery);
|
||||
stmt.close();
|
||||
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" +
|
||||
" `"+this.name+"_Country`.`Country_Name` = `"+this.name+"_Airline`.`Country`" +
|
||||
" WHERE `"+this.name+"_Airline`.`Country` = \""+airline.getCountry().getName().replace("\"", "\"\"")+"\"";
|
||||
ResultSet countCountryRes = stmt.executeQuery(countCountry);
|
||||
int countryCount = 0;
|
||||
while (countCountryRes.next()){
|
||||
countryCount += countCountryRes.getInt("COUNT(*)");
|
||||
}
|
||||
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`" +
|
||||
" WHERE `"+this.name+"_Airport`.`Country` = \""+airline.getCountry().getName().replace("\"", "\"\"")+"\"";
|
||||
countCountryRes = stmt.executeQuery(countCountryA);
|
||||
while (countCountryRes.next()){
|
||||
countryCount += countCountryRes.getInt("COUNT(*)");
|
||||
}
|
||||
countCountryRes.close();
|
||||
stmt.close();
|
||||
//delete country if there are no matches
|
||||
if (countryCount == 0){
|
||||
stmt = c.createStatement();
|
||||
String deleteCountry = "DELETE FROM `"+this.name+"_Country` WHERE `Country_Name` = \""+airline.getCountry().getName()+"\"";
|
||||
stmt.execute(deleteCountry);
|
||||
stmt.close();
|
||||
}
|
||||
c.close();
|
||||
} catch ( Exception e ) {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
}
|
||||
airlines.remove(airline);
|
||||
}
|
||||
|
||||
public void deleteAirline(int index){
|
||||
deleteAirline(airlines.get(index));
|
||||
}
|
||||
|
||||
/**
|
||||
* deletes an airport from the dataset.
|
||||
* @param airport
|
||||
*/
|
||||
public void deleteAirport(Airport airport){
|
||||
//drop the entries
|
||||
Connection c = null;
|
||||
Statement stmt = null;
|
||||
try {
|
||||
Class.forName("org.sqlite.JDBC");
|
||||
c = DriverManager.getConnection("jdbc:sqlite:res/userdb.db");
|
||||
String deleteQuery = "DELETE FROM `"+this.name+"_Airport` WHERE `Airport_ID` = " + airport.getID() + ";";
|
||||
stmt = c.createStatement();
|
||||
stmt.execute(deleteQuery);
|
||||
stmt.close();
|
||||
//check if number of countries that contain airports and airlines > 0 else delete the country
|
||||
String countCountry = "SELECT COUNT(*) FROM `"+this.name+"_Airport` JOIN `"+this.name+"_Country` ON" +
|
||||
" `"+this.name+"_Country`.`Country_Name` = `"+this.name+"_Airport`.`Country`" +
|
||||
" WHERE `"+this.name+"_Airport`.`Country` = \""+airport.getCountry().getName().replace("\"", "\"\"")+"\"";
|
||||
ResultSet countCountryRes = stmt.executeQuery(countCountry);
|
||||
int countryCount = 0;
|
||||
while (countCountryRes.next()){
|
||||
countryCount = countCountryRes.getInt("COUNT(*)");
|
||||
}
|
||||
countCountryRes.close();
|
||||
stmt.close();
|
||||
//check if number of countries that contain airlines > 0 else delete the country
|
||||
String countCountryA = "SELECT COUNT(*) FROM `"+this.name+"_Airline` JOIN `"+this.name+"_Country` ON" +
|
||||
" `"+this.name+"_Country`.`Country_Name` = `"+this.name+"_Airline`.`Country`" +
|
||||
" WHERE `"+this.name+"_Airline`.`Country` = \""+airport.getCountry().getName().replace("\"", "\"\"")+"\"";
|
||||
ResultSet countCountryResA = stmt.executeQuery(countCountry);
|
||||
while (countCountryResA.next()){
|
||||
countryCount += countCountryResA.getInt("COUNT(*)");
|
||||
}
|
||||
countCountryResA.close();
|
||||
stmt.close();
|
||||
//delete country if no matches
|
||||
if (countryCount == 0){
|
||||
stmt = c.createStatement();
|
||||
String deleteCountry = "DELETE FROM `"+this.name+"_Country` WHERE `Country_Name` = \""+airport.getCountry().getName()+"\"";
|
||||
stmt.execute(deleteCountry);
|
||||
stmt.close();
|
||||
}
|
||||
//cehck if number cities that contain airports > 0 else delete the city
|
||||
String countCity = "SELECT COUNT(*) FROM `"+this.name+"_Airport` JOIN `"+this.name+"_City` ON" +
|
||||
" `"+this.name+"_City`.`City_Name` = `"+this.name+"_Airport`.`City`" +
|
||||
" WHERE `"+this.name+"_Airport`.`City` = \""+airport.getCityName().replace("\"", "\"\"")+"\"";
|
||||
ResultSet countCityRes = stmt.executeQuery(countCity);
|
||||
int cityCount = 0;
|
||||
while (countCityRes.next()){
|
||||
cityCount = countCityRes.getInt("COUNT(*)");
|
||||
}
|
||||
countCountryRes.close();
|
||||
stmt.close();
|
||||
//delete country if no matches
|
||||
if (cityCount == 0){
|
||||
stmt = c.createStatement();
|
||||
String deleteCity = "DELETE FROM `"+this.name+"_City` WHERE `City_Name` = \""+airport.getCityName()+"\"";
|
||||
stmt.execute(deleteCity);
|
||||
stmt.close();
|
||||
}
|
||||
c.close();
|
||||
} catch ( Exception e ) {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
}
|
||||
airports.remove(airport);
|
||||
}
|
||||
|
||||
public void deleteAirport(int index){
|
||||
deleteAirport(airports.get(index));
|
||||
}
|
||||
/**
|
||||
* deletes an route from the dataset.
|
||||
* @param route
|
||||
*/
|
||||
public void deleteRoute(Route route){
|
||||
//drop the entries
|
||||
Connection c = null;
|
||||
Statement stmt = null;
|
||||
try {
|
||||
Class.forName("org.sqlite.JDBC");
|
||||
c = DriverManager.getConnection("jdbc:sqlite:res/userdb.db");
|
||||
String deleteQuery = "DELETE FROM `"+this.name+"_Routes` WHERE `Route_ID` = " + route.getID() + ";";
|
||||
stmt = c.createStatement();
|
||||
stmt.execute(deleteQuery);
|
||||
c.close();
|
||||
} catch ( Exception e ) {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
}
|
||||
routes.remove(route);
|
||||
}
|
||||
|
||||
public void deleteRoute(int index){
|
||||
deleteRoute(routes.get(index));
|
||||
}
|
||||
/**
|
||||
* deletes an airline from the dataset.
|
||||
* @param flightPath
|
||||
*/
|
||||
public void deleteFlightPath(FlightPath flightPath){
|
||||
//delete all flight points with the id
|
||||
while(flightPath.getFlightPoints().size() > 0){
|
||||
deleteFlightPoint(flightPath.getFlightPoints().get(0), flightPath);
|
||||
}
|
||||
//drop the entries
|
||||
Connection c = null;
|
||||
Statement stmt = null;
|
||||
try {
|
||||
Class.forName("org.sqlite.JDBC");
|
||||
c = DriverManager.getConnection("jdbc:sqlite:res/userdb.db");
|
||||
String deleteQuery = "DELETE FROM `"+this.name+"_Flight_Path` WHERE `Path_ID` = " + flightPath.getID() + ";";
|
||||
stmt = c.createStatement();
|
||||
stmt.execute(deleteQuery);
|
||||
c.close();
|
||||
} catch ( Exception e ) {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
}
|
||||
flightPaths.remove(flightPath);
|
||||
}
|
||||
|
||||
public void deleteFlightPath(int index){
|
||||
deleteFlightPath(flightPaths.get(index));
|
||||
}
|
||||
|
||||
/**
|
||||
* deletes an airline from the dataset.
|
||||
* @param flightPoint
|
||||
*/
|
||||
public void deleteFlightPoint(FlightPoint flightPoint, FlightPath flightPath){
|
||||
//drop the tables
|
||||
Connection c = null;
|
||||
Statement stmt = null;
|
||||
try {
|
||||
Class.forName("org.sqlite.JDBC");
|
||||
c = DriverManager.getConnection("jdbc:sqlite:res/userdb.db");
|
||||
String deleteQuery = "DELETE FROM `"+this.name+"_Flight_Points` WHERE `Point_ID` = " + flightPoint.getID() + ";";
|
||||
stmt = c.createStatement();
|
||||
stmt.execute(deleteQuery);
|
||||
c.close();
|
||||
} catch ( Exception e ) {
|
||||
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
|
||||
System.exit(0);
|
||||
}
|
||||
flightPath.getFlightPoints().remove(flightPoint);
|
||||
}
|
||||
|
||||
public void deleteFlightPoint(int pathIndex, int pointIndex){
|
||||
deleteFlightPoint(flightPaths.get(pathIndex).getFlightPoints().get(pointIndex), flightPaths.get(pathIndex));
|
||||
}
|
||||
|
||||
public ArrayList<Airline> getAirlines() {
|
||||
return airlines;
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
package seng202.group9.Controller;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* Created by fwy13 on 16/09/16.
|
||||
*/
|
||||
public abstract class Filter {
|
||||
abstract void reset();
|
||||
abstract ArrayList getFilteredData();
|
||||
}
|
||||
@@ -0,0 +1,119 @@
|
||||
package seng202.group9.Controller;
|
||||
|
||||
import seng202.group9.Core.Route;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* Created by fwy13 on 16/09/16.
|
||||
*/
|
||||
public class RouteFilter extends Filter{
|
||||
|
||||
private ArrayList<Route> baseArray;
|
||||
private ArrayList<Route> filteredList;
|
||||
|
||||
public RouteFilter(ArrayList<Route> baseList){
|
||||
filteredList = new ArrayList<Route>();
|
||||
baseArray = new ArrayList<Route>();
|
||||
for (Route route: baseList){
|
||||
baseArray.add(route);
|
||||
filteredList.add(route);
|
||||
}
|
||||
}
|
||||
|
||||
public void filterAirline(String airline){
|
||||
String regexCode = "(?i).*"+airline+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getAirlineName().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterSourceAirport(String airport){
|
||||
String regexCode = "(?i).*"+airport+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getDepartureAirport().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterDestinationAirport(String airport){
|
||||
String regexCode = "(?i).*"+airport+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getArrivalAirport().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterCodeshare(String code){
|
||||
String regexCode = "(?i).*"+code+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getCode().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterDestinationStops(String stops){
|
||||
String regexCode = "(?i).*"+stops+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getArrivalAirport().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void filterEquipment(String equipment){
|
||||
String regexCode = "(?i).*"+equipment+".*";
|
||||
int index = 0;
|
||||
while(index < filteredList.size()){
|
||||
if (!filteredList.get(index).getEquipment().matches(regexCode)){
|
||||
filteredList.remove(index);
|
||||
}else{
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void reset() {
|
||||
filteredList = new ArrayList<Route>();
|
||||
for (Route airline: filteredList){
|
||||
filteredList.add(airline);
|
||||
}
|
||||
}
|
||||
|
||||
public ArrayList getFilteredData() {
|
||||
return filteredList;
|
||||
}
|
||||
|
||||
public void setBaseList(ArrayList<Route> arrayList) {
|
||||
baseArray = new ArrayList<Route>();
|
||||
for (Route route: arrayList){
|
||||
baseArray.add(route);
|
||||
}
|
||||
}
|
||||
|
||||
public void printFilter(){
|
||||
for (Route route: filteredList){
|
||||
System.out.println(route);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -254,6 +254,31 @@ public class Airport {
|
||||
return country;
|
||||
}
|
||||
|
||||
//JavaDoc needed
|
||||
public Double getTimezone() {
|
||||
if (this.city != null) {
|
||||
return this.city.getTimezone();
|
||||
}else{
|
||||
return 0.0;
|
||||
}
|
||||
}
|
||||
//JavaDoc needed
|
||||
public String getDST() {
|
||||
if (this.country != null) {
|
||||
return this.country.getDST();
|
||||
}else{
|
||||
return "";
|
||||
}
|
||||
}
|
||||
//JavaDoc needed
|
||||
public String getTz() {
|
||||
if (this.city != null) {
|
||||
return this.city.getTimeOlson();
|
||||
}else{
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* set country class associated with this airport
|
||||
* @param country
|
||||
|
||||
@@ -18,6 +18,8 @@ public class FlightPoint {
|
||||
public FlightPoint(String type, String name, double altitude, double latitude, double longitude){
|
||||
//extra calculations will have to be used to find heading, legdistance and total distance. If necessary
|
||||
//Type 1 file the file the lecturers gave us
|
||||
//indexID = flight path ID
|
||||
//ID = unique Auto Increment value
|
||||
this.name = name;
|
||||
this.ID = -1;
|
||||
this.indexID = -1;
|
||||
|
||||
@@ -120,6 +120,31 @@ public class Route {
|
||||
return ID;
|
||||
}
|
||||
}
|
||||
//JavaDoc needed
|
||||
public int getAirlineID() throws DataException {
|
||||
if (this.airline != null) {
|
||||
return this.getAirline().getID();
|
||||
}else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
public int getSourceID() throws DataException {
|
||||
if (this.getSourceAirport() != null) {
|
||||
return this.getSourceAirport().getID();
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
public int getDestID() throws DataException {
|
||||
if (this.getDestinationAirport() != null) {
|
||||
return this.getDestinationAirport().getID();
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* returns the number of stops the route stops.
|
||||
* @return
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
package seng202.group9.GUI;
|
||||
|
||||
import javafx.collections.FXCollections;
|
||||
import javafx.collections.ObservableList;
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.scene.control.Alert;
|
||||
import javafx.scene.control.TableColumn;
|
||||
import javafx.scene.control.TableView;
|
||||
import javafx.scene.control.TextField;
|
||||
import javafx.scene.control.*;
|
||||
import javafx.scene.control.cell.PropertyValueFactory;
|
||||
import seng202.group9.Controller.App;
|
||||
import seng202.group9.Controller.Dataset;
|
||||
@@ -47,7 +45,8 @@ public class AirlineRDController extends MenuController {
|
||||
@FXML
|
||||
private TextField airlCountryBox;
|
||||
@FXML
|
||||
private TextField airlActiveBox;
|
||||
//private TextField airlActiveBox;
|
||||
private ComboBox<String> airlActiveCBox;
|
||||
|
||||
|
||||
App parent;
|
||||
@@ -66,11 +65,13 @@ public class AirlineRDController extends MenuController {
|
||||
airlIATAcol.setCellValueFactory(new PropertyValueFactory<Airline, String>("Alias"));
|
||||
airlICAOcol.setCellValueFactory(new PropertyValueFactory<Airline, String>("IATA"));
|
||||
airlCallsigncol.setCellValueFactory(new PropertyValueFactory<Airline, String>("CallSign"));
|
||||
airlCountrycol.setCellValueFactory(new PropertyValueFactory<Airline, String>("Country"));
|
||||
airlCountrycol.setCellValueFactory(new PropertyValueFactory<Airline, String>("CountryName"));
|
||||
airlActivecol.setCellValueFactory(new PropertyValueFactory<Airline, String>("Active"));
|
||||
|
||||
theDataSet = this.parent.getCurrentDataset();
|
||||
tableView.setItems(FXCollections.observableArrayList(theDataSet.getAirlines()));
|
||||
//ObservableList<String> activeOptions= FXCollections.observableArrayList("Y", "N");
|
||||
airlActiveCBox.getItems().addAll("Y", "N");
|
||||
}
|
||||
|
||||
//Dummy function to test the add button.
|
||||
@@ -84,14 +85,14 @@ public class AirlineRDController extends MenuController {
|
||||
airlICAOBox.getText(),
|
||||
airlCallsignBox.getText(),
|
||||
airlCountryBox.getText(),
|
||||
airlActiveBox.getText());
|
||||
airlActiveCBox.getSelectionModel().getSelectedItem().toString());
|
||||
airlNameBox.clear();
|
||||
airlAliasBox.clear();
|
||||
airlIATABox.clear();
|
||||
airlICAOBox.clear();
|
||||
airlCallsignBox.clear();
|
||||
airlCountryBox.clear();
|
||||
airlActiveBox.clear();
|
||||
airlActiveCBox.getSelectionModel().clearSelection();
|
||||
tableView.setItems(FXCollections.observableArrayList(theDataSet.getAirlines()));
|
||||
} catch ( Exception e ) {
|
||||
Alert alert = new Alert(Alert.AlertType.ERROR);
|
||||
|
||||
@@ -43,5 +43,48 @@ public class AirlineSummaryController extends MenuController{
|
||||
currentData = this.parent.getCurrentDataset();
|
||||
tableView.setItems(FXCollections.observableArrayList(currentData.getAirlines()));
|
||||
}
|
||||
|
||||
public void airlineRawDataButton() {
|
||||
try {
|
||||
AirlineRDController rawDataController = (AirlineRDController)
|
||||
parent.replaceSceneContent("airline_raw_data.fxml");
|
||||
rawDataController.setApp(parent);
|
||||
rawDataController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void flightSummaryButton() {
|
||||
try {
|
||||
FlightSummaryController summaryController = (FlightSummaryController)
|
||||
parent.replaceSceneContent("flight_data_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.flightPathListView();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void airportSummaryButton() {
|
||||
try {
|
||||
AirportSummaryController summaryController = (AirportSummaryController)
|
||||
parent.replaceSceneContent("airport_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void routeSummaryButton() {
|
||||
try {
|
||||
RouteSummaryController summaryController = (RouteSummaryController)
|
||||
parent.replaceSceneContent("routes_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
package seng202.group9.GUI;
|
||||
|
||||
import com.sun.javafx.collections.ObservableListWrapper;
|
||||
import javafx.beans.InvalidationListener;
|
||||
import javafx.beans.property.SimpleStringProperty;
|
||||
import javafx.beans.value.ObservableStringValue;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
import javafx.collections.FXCollections;
|
||||
import javafx.collections.ListChangeListener;
|
||||
import javafx.collections.ObservableList;
|
||||
@@ -41,11 +45,11 @@ public class AirportRDController extends MenuController{
|
||||
@FXML
|
||||
private TableColumn<Airport, String> airpAltitudecol;
|
||||
@FXML
|
||||
private TableColumn<Airport, City> airpTimezonecol;
|
||||
private TableColumn<Airport, String> airpTimezonecol;
|
||||
@FXML
|
||||
private TableColumn<Airport, Country> airpDSTcol;
|
||||
private TableColumn<Airport, String> airpDSTcol;
|
||||
@FXML
|
||||
private TableColumn<Airport, City> airpTzcol;
|
||||
private TableColumn<Airport, String> airpTzcol;
|
||||
|
||||
@FXML
|
||||
private TextField airpNameBox;
|
||||
@@ -66,7 +70,7 @@ public class AirportRDController extends MenuController{
|
||||
@FXML
|
||||
private TextField airpTimezoneBox;
|
||||
@FXML
|
||||
private TextField airpDSTBox;
|
||||
private ComboBox<String> airpDSTCBox;
|
||||
@FXML
|
||||
private TextField airpTzBox;
|
||||
|
||||
@@ -82,18 +86,18 @@ public class AirportRDController extends MenuController{
|
||||
public void loadTables() {
|
||||
airpIDcol.setCellValueFactory(new PropertyValueFactory<Airport, String>("ID"));
|
||||
airpNamecol.setCellValueFactory(new PropertyValueFactory<Airport, String>("Name"));
|
||||
airpCitycol.setCellValueFactory(new PropertyValueFactory<Airport, String>("City"));
|
||||
airpCountrycol.setCellValueFactory(new PropertyValueFactory<Airport, String>("Country"));
|
||||
airpCitycol.setCellValueFactory(new PropertyValueFactory<Airport, String>("CityName"));
|
||||
airpCountrycol.setCellValueFactory(new PropertyValueFactory<Airport, String>("CountryName"));
|
||||
airpIATAFFAcol.setCellValueFactory(new PropertyValueFactory<Airport, String>("IATA_FFA"));
|
||||
airpICAOcol.setCellValueFactory(new PropertyValueFactory<Airport, String>("ICAO"));
|
||||
airpLatitudecol.setCellValueFactory(new PropertyValueFactory<Airport, String>("Latitude"));
|
||||
airpLongitudecol.setCellValueFactory(new PropertyValueFactory<Airport, String>("Longitude"));
|
||||
airpAltitudecol.setCellValueFactory(new PropertyValueFactory<Airport, String> ("Altitude"));
|
||||
airpTimezonecol.setCellValueFactory(new PropertyValueFactory<Airport, City>("Timezone"));
|
||||
airpDSTcol.setCellValueFactory(new PropertyValueFactory<Airport, Country>("DST"));
|
||||
airpTzcol.setCellValueFactory(new PropertyValueFactory<Airport, City>("Tz"));
|
||||
airpTimezonecol.setCellValueFactory(new PropertyValueFactory<Airport, String>("Timezone"));
|
||||
airpDSTcol.setCellValueFactory(new PropertyValueFactory<Airport, String>("DST"));
|
||||
airpTzcol.setCellValueFactory(new PropertyValueFactory<Airport, String>("Tz"));
|
||||
|
||||
// airpTimezonecol.setCellFactory(new Callback<TableColumn<Airport, String>, TableCell<Airport, City>>() {
|
||||
// airpTimezonecol.setCellFactory(new Callback<TableColumn<Airport, String>, TableCell<Airport, String>>() {
|
||||
//
|
||||
// @Override
|
||||
// public TableCell<Airport, City> call(TableColumn<Airport, City> param) {
|
||||
@@ -112,6 +116,8 @@ public class AirportRDController extends MenuController{
|
||||
// });
|
||||
theDataSet = this.parent.getCurrentDataset();
|
||||
tableViewAirportRD.setItems(FXCollections.observableArrayList(theDataSet.getAirports()));
|
||||
|
||||
airpDSTCBox.getItems().addAll("E", "A", "S", "O", "Z", "N", "U");
|
||||
}
|
||||
|
||||
public void addAirportSingle() {
|
||||
@@ -126,7 +132,7 @@ public class AirportRDController extends MenuController{
|
||||
airpLongitudeBox.getText(),
|
||||
airpAltitudeBox.getText(),
|
||||
airpTimezoneBox.getText(),
|
||||
airpDSTBox.getText(),
|
||||
airpDSTCBox.getSelectionModel().getSelectedItem().toString(),
|
||||
airpTzBox.getText());
|
||||
airpCityBox.clear();
|
||||
airpCountryBox.clear();
|
||||
@@ -136,7 +142,7 @@ public class AirportRDController extends MenuController{
|
||||
airpLongitudeBox.clear();
|
||||
airpAltitudeBox.clear();
|
||||
airpTimezoneBox.clear();
|
||||
airpDSTBox.clear();
|
||||
airpDSTCBox.getSelectionModel().clearSelection();
|
||||
airpTzBox.clear();
|
||||
tableViewAirportRD.setItems(FXCollections.observableArrayList(theDataSet.getAirports()));
|
||||
} catch ( Exception e ) {
|
||||
|
||||
@@ -44,5 +44,48 @@ public class AirportSummaryController extends MenuController{
|
||||
currentData = this.parent.getCurrentDataset();
|
||||
tableView.setItems(FXCollections.observableArrayList(currentData.getAirports()));
|
||||
}
|
||||
|
||||
public void airportRawDataButton() {
|
||||
try {
|
||||
AirportRDController rawDataController = (AirportRDController)
|
||||
parent.replaceSceneContent("airport_raw_data.fxml");
|
||||
rawDataController.setApp(parent);
|
||||
rawDataController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void flightSummaryButton() {
|
||||
try {
|
||||
FlightSummaryController summaryController = (FlightSummaryController)
|
||||
parent.replaceSceneContent("flight_data_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.flightPathListView();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void routeSummaryButton() {
|
||||
try {
|
||||
RouteSummaryController summaryController = (RouteSummaryController)
|
||||
parent.replaceSceneContent("routes_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void airlineSummaryButton() {
|
||||
try {
|
||||
AirlineSummaryController summaryController = (AirlineSummaryController)
|
||||
parent.replaceSceneContent("airline_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -72,6 +72,40 @@ public class FlightSummaryController implements Initializable {
|
||||
}
|
||||
}
|
||||
|
||||
public void airportSummaryButton() {
|
||||
try {
|
||||
AirportSummaryController summaryController = (AirportSummaryController)
|
||||
parent.replaceSceneContent("airport_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void routeSummaryButton() {
|
||||
try {
|
||||
RouteSummaryController summaryController = (RouteSummaryController)
|
||||
parent.replaceSceneContent("routes_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void airlineSummaryButton() {
|
||||
try {
|
||||
AirlineSummaryController summaryController = (AirlineSummaryController)
|
||||
parent.replaceSceneContent("airline_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public void initialize(URL arg0, ResourceBundle arg1) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
|
||||
@@ -2,10 +2,7 @@ package seng202.group9.GUI;
|
||||
|
||||
import javafx.collections.FXCollections;
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.scene.control.Alert;
|
||||
import javafx.scene.control.TableColumn;
|
||||
import javafx.scene.control.TableView;
|
||||
import javafx.scene.control.TextField;
|
||||
import javafx.scene.control.*;
|
||||
import javafx.scene.control.cell.PropertyValueFactory;
|
||||
import seng202.group9.Controller.App;
|
||||
import seng202.group9.Controller.Dataset;
|
||||
@@ -40,17 +37,11 @@ public class RouteRDController extends MenuController {
|
||||
@FXML
|
||||
private TextField rAirlineBox;
|
||||
@FXML
|
||||
private TextField rAirlineIDBox;
|
||||
@FXML
|
||||
private TextField rSourceBox;
|
||||
@FXML
|
||||
private TextField rSourceIDBox;
|
||||
@FXML
|
||||
private TextField rDestBox;
|
||||
@FXML
|
||||
private TextField rDestIDBox;
|
||||
@FXML
|
||||
private TextField rCodeshareBox;
|
||||
private ComboBox<String> rCodeshareCBox;
|
||||
@FXML
|
||||
private TextField rStopsBox;
|
||||
@FXML
|
||||
@@ -66,18 +57,20 @@ public class RouteRDController extends MenuController {
|
||||
private Dataset theDataSet = null;
|
||||
|
||||
public void loadTables() {
|
||||
rAirlineCol.setCellValueFactory(new PropertyValueFactory<Route, String>("Airline"));
|
||||
//rAirlineIDCol.setCellValueFactory(new PropertyValueFactory<Route, String>("AirlineID"));
|
||||
rAirlineCol.setCellValueFactory(new PropertyValueFactory<Route, String>("AirlineName"));
|
||||
rAirlineIDCol.setCellValueFactory(new PropertyValueFactory<Route, String>("AirlineID"));
|
||||
rSourceCol.setCellValueFactory(new PropertyValueFactory<Route, String>("DepartureAirport"));
|
||||
//rSourceIDCol.setCellValueFactory(new PropertyValueFactory<Route, String>("SourceID"));
|
||||
rSourceIDCol.setCellValueFactory(new PropertyValueFactory<Route, String>("SourceID"));
|
||||
rDestCol.setCellValueFactory(new PropertyValueFactory<Route, String>("ArrivalAirport"));
|
||||
//rDestIDCol.setCellValueFactory(new PropertyValueFactory<Route, String>("DestID"));
|
||||
rDestIDCol.setCellValueFactory(new PropertyValueFactory<Route, String>("DestID"));
|
||||
rCodeshareCol.setCellValueFactory(new PropertyValueFactory<Route, String>("Code"));
|
||||
rStopsCol.setCellValueFactory(new PropertyValueFactory<Route, String>("Stops"));
|
||||
rEquipmentCol.setCellValueFactory(new PropertyValueFactory<Route, String>("Equipment"));
|
||||
|
||||
theDataSet = this.parent.getCurrentDataset();
|
||||
tableViewRouteRD.setItems(FXCollections.observableArrayList(theDataSet.getRoutes()));
|
||||
|
||||
rCodeshareCBox.getItems().addAll("Y", "");
|
||||
}
|
||||
|
||||
public void addRouteSingle() {
|
||||
@@ -86,14 +79,14 @@ public class RouteRDController extends MenuController {
|
||||
rAirlineBox.getText(),
|
||||
rSourceBox.getText(),
|
||||
rDestBox.getText(),
|
||||
rCodeshareBox.getText(),
|
||||
rCodeshareCBox.getSelectionModel().getSelectedItem().toString(),
|
||||
rStopsBox.getText(),
|
||||
rEquipmentBox.getText()
|
||||
);
|
||||
rAirlineBox.clear();
|
||||
rSourceBox.clear();
|
||||
rDestBox.clear();
|
||||
rCodeshareBox.clear();
|
||||
rCodeshareCBox.getSelectionModel().clearSelection();
|
||||
rStopsBox.clear();
|
||||
rEquipmentBox.clear();
|
||||
tableViewRouteRD.setItems(FXCollections.observableArrayList(theDataSet.getRoutes()));
|
||||
|
||||
@@ -43,5 +43,49 @@ public class RouteSummaryController extends MenuController{
|
||||
currentData = this.parent.getCurrentDataset();
|
||||
tableView.setItems(FXCollections.observableArrayList(currentData.getRoutes()));
|
||||
}
|
||||
public void routeRawDataButton() {
|
||||
try {
|
||||
RouteRDController rawDataController = (RouteRDController)
|
||||
parent.replaceSceneContent("route_raw_data.fxml");
|
||||
rawDataController.setApp(parent);
|
||||
rawDataController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void flightSummaryButton() {
|
||||
try {
|
||||
FlightSummaryController summaryController = (FlightSummaryController)
|
||||
parent.replaceSceneContent("flight_data_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.flightPathListView();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void airportSummaryButton() {
|
||||
try {
|
||||
AirportSummaryController summaryController = (AirportSummaryController)
|
||||
parent.replaceSceneContent("airport_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
public void airlineSummaryButton() {
|
||||
try {
|
||||
AirlineSummaryController summaryController = (AirlineSummaryController)
|
||||
parent.replaceSceneContent("airline_summary.fxml");
|
||||
summaryController.setApp(parent);
|
||||
summaryController.loadTables();
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
<?import javafx.geometry.Insets?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.scene.control.ComboBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.TableColumn?>
|
||||
<?import javafx.scene.control.TableView?>
|
||||
@@ -36,55 +37,51 @@
|
||||
<TableView fx:id="tableView" layoutX="1.0" prefHeight="403.0" prefWidth="765.0">
|
||||
<columns>
|
||||
<TableColumn fx:id="airlIDcol" prefWidth="83.0" text="Airline ID" />
|
||||
<TableColumn fx:id="airlNamecol" prefWidth="137.0" text="Name" />
|
||||
<TableColumn fx:id="airlAliascol" minWidth="0.0" prefWidth="129.0" text="Alias" />
|
||||
<TableColumn fx:id="airlIATAcol" minWidth="0.0" prefWidth="69.0" text="IATA" />
|
||||
<TableColumn fx:id="airlICAOcol" minWidth="0.0" prefWidth="67.0" text="ICAO" />
|
||||
<TableColumn fx:id="airlCallsigncol" minWidth="0.0" prefWidth="93.0" text="Callsign" />
|
||||
<TableColumn fx:id="airlCountrycol" minWidth="0.0" prefWidth="102.0" text="Country" />
|
||||
<TableColumn fx:id="airlActivecol" minWidth="8.0" prefWidth="84.0" text="Active" />
|
||||
<TableColumn fx:id="airlNamecol" prefWidth="450.0" text="Name" />
|
||||
<TableColumn fx:id="airlAliascol" minWidth="0.0" prefWidth="56.0" text="Alias" />
|
||||
<TableColumn fx:id="airlIATAcol" minWidth="0.0" prefWidth="59.0" text="IATA" />
|
||||
<TableColumn fx:id="airlICAOcol" minWidth="0.0" prefWidth="68.0" text="ICAO" />
|
||||
<TableColumn fx:id="airlCallsigncol" minWidth="0.0" prefWidth="400.0" text="Callsign" />
|
||||
<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>
|
||||
</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="2.0" prefHeight="25.0" prefWidth="137.0" promptText="Name">
|
||||
<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="2.0" prefHeight="25.0" prefWidth="125.0" promptText="Alias">
|
||||
<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="359.0" layoutY="2.0" prefHeight="25.0" prefWidth="67.0" promptText="IATA">
|
||||
<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="426.0" layoutY="2.0" prefHeight="25.0" prefWidth="69.0" promptText="ICAO">
|
||||
<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="495.0" layoutY="2.0" prefHeight="25.0" prefWidth="84.0" promptText="Callsign">
|
||||
<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="579.0" layoutY="2.0" prefHeight="25.0" prefWidth="102.0" promptText="Country">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airlActiveBox" layoutX="681.0" layoutY="2.0" prefHeight="25.0" prefWidth="84.0" promptText="Active">
|
||||
<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>
|
||||
</children>
|
||||
|
||||
@@ -34,16 +34,18 @@
|
||||
</Pane>
|
||||
<Pane layoutY="52.0" prefHeight="240.0" prefWidth="480.0" AnchorPane.bottomAnchor="0.0">
|
||||
<children>
|
||||
<Pane layoutX="25.0" layoutY="10.0" prefHeight="220.0" prefWidth="120.0" />
|
||||
<TableView fx:id="tableView" layoutX="10.0" layoutY="10.0" prefHeight="200.0" prefWidth="378.0">
|
||||
<Pane layoutX="25.0" layoutY="10.0" prefHeight="220.0" prefWidth="120.0">
|
||||
<children>
|
||||
<TableView fx:id="tableView" prefHeight="200.0" prefWidth="378.0">
|
||||
<columns>
|
||||
<TableColumn fx:id="columnName" text="Name" />
|
||||
<TableColumn fx:id="columnName" maxWidth="100.0" prefWidth="50.0" text="Name" />
|
||||
<TableColumn fx:id="columnAlias" prefWidth="77.0" text="Alias" />
|
||||
<TableColumn fx:id="columnCountry" prefWidth="86.0" text="Country" />
|
||||
<TableColumn fx:id="columnIATA" prefWidth="86.0" text="IATA/FAA" />
|
||||
<TableColumn fx:id="columnActive" prefWidth="46.0" text="Active" />
|
||||
</columns>
|
||||
</TableView>
|
||||
</children></Pane>
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0" />
|
||||
@@ -55,22 +57,22 @@
|
||||
<children>
|
||||
<Pane layoutY="200.0" prefHeight="100.0" prefWidth="253.0">
|
||||
<children>
|
||||
<Button layoutX="20.0" layoutY="14.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Airports">
|
||||
<Button layoutX="20.0" layoutY="14.0" mnemonicParsing="false" onAction="#airportSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Airports">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="94.0" layoutY="14.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Routes">
|
||||
<Button layoutX="94.0" layoutY="14.0" mnemonicParsing="false" onAction="#routeSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Routes">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="169.0" layoutY="14.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Flights">
|
||||
<Button layoutX="169.0" layoutY="14.0" mnemonicParsing="false" onAction="#flightSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Flights">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="20.0" layoutY="61.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="214.0" text="Airline Raw Data" />
|
||||
<Button layoutX="20.0" layoutY="61.0" mnemonicParsing="false" onAction="#airlineRawDataButton" prefHeight="25.0" prefWidth="214.0" text="Airline Raw Data" />
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0" />
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
<?import javafx.geometry.Insets?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.scene.control.ComboBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.ScrollPane?>
|
||||
<?import javafx.scene.control.TableColumn?>
|
||||
@@ -30,66 +31,62 @@
|
||||
<Font size="29.0" />
|
||||
</font>
|
||||
</Label>
|
||||
<ScrollPane hbarPolicy="ALWAYS" layoutX="14.0" layoutY="474.0" prefHeight="47.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="772.0" vbarPolicy="NEVER">
|
||||
<content>
|
||||
<Pane prefHeight="29.0" prefWidth="1219.0">
|
||||
<Pane prefHeight="39.0" prefWidth="1633.0">
|
||||
<children>
|
||||
<TextField fx:id="airpNameBox" layoutX="89.0" layoutY="2.0" prefHeight="25.0" prefWidth="137.0" promptText="Name">
|
||||
<TextField fx:id="airpNameBox" layoutX="89.0" layoutY="4.0" prefHeight="31.0" prefWidth="350.0" promptText="Name">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpCityBox" layoutX="226.0" layoutY="2.0" prefHeight="25.0" prefWidth="129.0" promptText="City">
|
||||
<TextField fx:id="airpCityBox" layoutX="439.0" layoutY="4.0" prefHeight="31.0" prefWidth="200.0" promptText="City">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpCountryBox" layoutX="355.0" layoutY="2.0" prefHeight="25.0" prefWidth="96.0" promptText="Country">
|
||||
<TextField fx:id="airpCountryBox" layoutX="639.0" layoutY="4.0" prefHeight="31.0" prefWidth="200.0" promptText="Country">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpIATAFFABox" layoutX="451.0" layoutY="2.0" prefHeight="25.0" prefWidth="87.0" promptText="IATA/FAA">
|
||||
<TextField fx:id="airpIATAFFABox" layoutX="839.0" layoutY="4.0" prefHeight="31.0" prefWidth="87.0" promptText="IATA/FAA">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpICAOBox" layoutX="538.0" layoutY="2.0" prefHeight="25.0" prefWidth="48.0" promptText="ICAO">
|
||||
<TextField fx:id="airpICAOBox" layoutX="926.0" layoutY="4.0" prefHeight="31.0" prefWidth="48.0" promptText="ICAO">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpLatitudeBox" layoutX="586.0" layoutY="2.0" prefHeight="25.0" prefWidth="82.0" promptText="Latitude">
|
||||
<TextField fx:id="airpLatitudeBox" layoutX="974.0" layoutY="4.0" prefHeight="31.0" prefWidth="100.0" promptText="Latitude">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="airpLongitudeBox" layoutX="668.0" layoutY="2.0" prefHeight="25.0" prefWidth="92.0" promptText="Longitude">
|
||||
<TextField fx:id="airpLongitudeBox" layoutX="1074.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="airpAltitudeBox" layoutX="760.0" layoutY="2.0" prefHeight="25.0" prefWidth="78.0" promptText="Altitude">
|
||||
<TextField fx:id="airpAltitudeBox" layoutX="1174.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="airpTimezoneBox" layoutX="838.0" layoutY="2.0" prefHeight="25.0" prefWidth="80.0" promptText="Timezone">
|
||||
<TextField fx:id="airpTimezoneBox" layoutX="1249.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="airpTzBox" layoutX="1023.0" layoutY="3.0" prefHeight="25.0" prefWidth="182.0" promptText="Tz database time zone">
|
||||
<TextField fx:id="airpTzBox" layoutX="1432.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="airpDSTBox" layoutX="918.0" layoutY="2.0" prefHeight="25.0" prefWidth="102.0" promptText="DST">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<Label layoutY="2.0" prefHeight="25.0" prefWidth="87.0" text="Enter Values:" />
|
||||
<Label layoutX="2.0" layoutY="7.0" prefHeight="25.0" prefWidth="87.0" text="Enter Values:" />
|
||||
<ComboBox fx:id="airpDSTCBox" layoutX="1349.0" layoutY="3.0" prefHeight="31.0" prefWidth="83.0" promptText="DST" />
|
||||
</children>
|
||||
</Pane>
|
||||
</content>
|
||||
@@ -100,18 +97,18 @@
|
||||
<children>
|
||||
<TableView fx:id="tableViewAirportRD" prefHeight="403.0" prefWidth="772.0">
|
||||
<columns>
|
||||
<TableColumn fx:id="airpIDcol" prefWidth="83.0" text="Airport ID" />
|
||||
<TableColumn fx:id="airpNamecol" prefWidth="137.0" text="Name" />
|
||||
<TableColumn fx:id="airpCitycol" minWidth="0.0" prefWidth="129.0" text="City" />
|
||||
<TableColumn fx:id="airpCountrycol" minWidth="0.0" prefWidth="96.0" text="Country" />
|
||||
<TableColumn fx:id="airpIATAFFAcol" minWidth="0.0" prefWidth="87.0" text="IATA/FAA" />
|
||||
<TableColumn fx:id="airpICAOcol" minWidth="0.0" prefWidth="48.0" text="ICAO" />
|
||||
<TableColumn fx:id="airpLatitudecol" minWidth="0.0" prefWidth="82.0" text="Latitude" />
|
||||
<TableColumn fx:id="airpLongitudecol" minWidth="8.0" prefWidth="92.0" text="Longitude" />
|
||||
<TableColumn fx:id="airpAltitudecol" minWidth="0.0" prefWidth="78.0" text="Altitude" />
|
||||
<TableColumn fx:id="airpTimezonecol" minWidth="0.0" text="Timezone" />
|
||||
<TableColumn fx:id="airpDSTcol" prefWidth="102.0" text="DST" />
|
||||
<TableColumn fx:id="airpTzcol" minWidth="0.0" prefWidth="182.0" text="Tz database time zone" />
|
||||
<TableColumn fx:id="airpIDcol" prefWidth="81.00003051757812" text="Airport ID" />
|
||||
<TableColumn fx:id="airpNamecol" prefWidth="350.0" text="Name" />
|
||||
<TableColumn fx:id="airpCitycol" minWidth="0.0" prefWidth="200.0" text="City" />
|
||||
<TableColumn fx:id="airpCountrycol" minWidth="0.0" prefWidth="200.0" text="Country" />
|
||||
<TableColumn fx:id="airpIATAFFAcol" minWidth="0.0" text="IATA/FAA" />
|
||||
<TableColumn fx:id="airpICAOcol" minWidth="0.0" prefWidth="58.0" text="ICAO" />
|
||||
<TableColumn fx:id="airpLatitudecol" minWidth="0.0" prefWidth="100.0" text="Latitude" />
|
||||
<TableColumn fx:id="airpLongitudecol" minWidth="8.0" prefWidth="100.0" text="Longitude" />
|
||||
<TableColumn fx:id="airpAltitudecol" minWidth="0.0" prefWidth="75.0" text="Altitude" />
|
||||
<TableColumn fx:id="airpTimezonecol" minWidth="0.0" prefWidth="100.0" text="Timezone" />
|
||||
<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>
|
||||
</TableView>
|
||||
</children></Pane>
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
<children>
|
||||
<TableView fx:id="tableView" layoutX="10.0" layoutY="10.0" prefHeight="200.0" prefWidth="378.0">
|
||||
<columns>
|
||||
<TableColumn fx:id="columnName" prefWidth="75.0" text="Name" />
|
||||
<TableColumn fx:id="columnName" maxWidth="150.0" prefWidth="75.0" text="Name" />
|
||||
<TableColumn fx:id="columnCity" prefWidth="75.0" text="City" />
|
||||
<TableColumn fx:id="columnCountry" prefWidth="75.0" text="Country" />
|
||||
<TableColumn fx:id="columnAltitude" prefWidth="75.0" text="Altitude" />
|
||||
@@ -58,22 +58,22 @@
|
||||
<children>
|
||||
<Pane layoutY="200.0" prefHeight="100.0" prefWidth="253.0">
|
||||
<children>
|
||||
<Button layoutX="20.0" layoutY="14.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Routes">
|
||||
<Button layoutX="20.0" layoutY="14.0" mnemonicParsing="false" onAction="#airlineSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Airline">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="94.0" layoutY="14.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Airlines">
|
||||
<Button layoutX="94.0" layoutY="14.0" mnemonicParsing="false" onAction="#routeSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Routes">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="169.0" layoutY="14.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Flights">
|
||||
<Button layoutX="169.0" layoutY="14.0" mnemonicParsing="false" onAction="#flightSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Flights">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="20.0" layoutY="61.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="214.0" text="Airport Raw Data" />
|
||||
<Button layoutX="20.0" layoutY="61.0" mnemonicParsing="false" onAction="#airportRawDataButton" prefHeight="25.0" prefWidth="214.0" text="Airport Raw Data" />
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0" />
|
||||
|
||||
@@ -84,22 +84,22 @@
|
||||
<children>
|
||||
<Pane prefHeight="160.0" prefWidth="295.0" GridPane.rowIndex="1">
|
||||
<children>
|
||||
<Button layoutX="33.0" layoutY="82.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Airports">
|
||||
<Button layoutX="20.0" layoutY="14.0" mnemonicParsing="false" onAction="#airportSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Airports">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="126.0" layoutY="81.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Routes">
|
||||
<Button layoutX="94.0" layoutY="14.0" mnemonicParsing="false" onAction="#airlineSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Airlines">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="218.0" layoutY="81.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Airlines">
|
||||
<Button layoutX="169.0" layoutY="14.0" mnemonicParsing="false" onAction="#routeSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Routes">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="33.0" layoutY="129.0" mnemonicParsing="false" onAction="#handleRawDataButton" prefHeight="25.0" prefWidth="250.0" text="Flight Raw Data" />
|
||||
<Button layoutX="20.0" layoutY="61.0" mnemonicParsing="false" onAction="#handleRawDataButton" prefHeight="25.0" prefWidth="214.0" text="Flights Raw Data" />
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0" />
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
<?import javafx.geometry.Insets?>
|
||||
<?import javafx.scene.control.Button?>
|
||||
<?import javafx.scene.control.ComboBox?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.control.TableColumn?>
|
||||
<?import javafx.scene.control.TableView?>
|
||||
@@ -50,37 +51,33 @@
|
||||
</Pane>
|
||||
<Pane layoutX="16.0" layoutY="479.0" prefHeight="32.0" prefWidth="765.0">
|
||||
<children>
|
||||
<TextField fx:id="rAirlineBox" layoutX="90.0" layoutY="2.0" prefHeight="25.0" prefWidth="100.0" promptText="Airline">
|
||||
<TextField fx:id="rAirlineBox" layoutX="90.0" layoutY="-1.0" prefHeight="31.0" prefWidth="100.0" promptText="Airline">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="rSourceBox" layoutX="190.0" layoutY="2.0" prefHeight="25.0" prefWidth="150.0" promptText="Source airport">
|
||||
<TextField fx:id="rSourceBox" layoutX="190.0" layoutY="-1.0" prefHeight="31.0" prefWidth="150.0" promptText="Source airport">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="rDestBox" layoutX="340.0" layoutY="2.0" prefHeight="25.0" prefWidth="150.0" promptText="Destination airport">
|
||||
<TextField fx:id="rDestBox" layoutX="340.0" layoutY="-1.0" prefHeight="31.0" prefWidth="150.0" promptText="Destination airport">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="rCodeshareBox" layoutX="490.0" layoutY="2.0" prefHeight="25.0" prefWidth="100.0" promptText="Codeshare">
|
||||
<TextField fx:id="rStopsBox" layoutX="590.0" layoutY="-1.0" prefHeight="31.0" prefWidth="75.0" promptText="Stops">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="rStopsBox" layoutX="590.0" layoutY="2.0" prefHeight="25.0" prefWidth="75.0" promptText="Stops">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<TextField fx:id="rEquipmentBox" layoutX="665.0" layoutY="2.0" prefHeight="25.0" prefWidth="100.0" promptText="Equipment">
|
||||
<TextField fx:id="rEquipmentBox" layoutX="665.0" layoutY="-1.0" prefHeight="31.0" prefWidth="100.0" promptText="Equipment">
|
||||
<padding>
|
||||
<Insets left="2.0" right="2.0" />
|
||||
</padding>
|
||||
</TextField>
|
||||
<Label layoutY="4.0" text="Enter Values:" />
|
||||
<ComboBox fx:id="rCodeshareCBox" layoutX="490.0" layoutY="-1.0" prefHeight="31.0" prefWidth="100.0" promptText="Codeshare" />
|
||||
</children>
|
||||
</Pane>
|
||||
</children>
|
||||
|
||||
@@ -38,11 +38,11 @@
|
||||
<children>
|
||||
<TableView fx:id="tableView" prefHeight="200.0" prefWidth="378.0">
|
||||
<columns>
|
||||
<TableColumn fx:id="columnAirline" prefWidth="75.0" text="Airline" />
|
||||
<TableColumn fx:id="columnDepart" prefWidth="75.0" text="Depart" />
|
||||
<TableColumn fx:id="columnArrive" prefWidth="75.0" text="Arrive" />
|
||||
<TableColumn fx:id="columnStops" prefWidth="75.0" text="Stops" />
|
||||
<TableColumn fx:id="columnEquipment" prefWidth="75.0" text="Equipment" />
|
||||
<TableColumn fx:id="columnAirline" prefWidth="89.0" text="Airline" />
|
||||
<TableColumn fx:id="columnDepart" prefWidth="80.99998474121094" text="Depart" />
|
||||
<TableColumn fx:id="columnArrive" prefWidth="67.0" text="Arrive" />
|
||||
<TableColumn fx:id="columnStops" prefWidth="72.0" text="Stops" />
|
||||
<TableColumn fx:id="columnEquipment" prefWidth="66.0" text="Equipment" />
|
||||
</columns>
|
||||
</TableView>
|
||||
</children>
|
||||
@@ -58,22 +58,22 @@
|
||||
<children>
|
||||
<Pane layoutY="200.0" prefHeight="100.0" prefWidth="253.0">
|
||||
<children>
|
||||
<Button layoutX="20.0" layoutY="14.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Airports">
|
||||
<Button layoutX="20.0" layoutY="14.0" mnemonicParsing="false" onAction="#airportSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Airports">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="94.0" layoutY="14.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Airlines">
|
||||
<Button layoutX="94.0" layoutY="14.0" mnemonicParsing="false" onAction="#airlineSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Airlines">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="169.0" layoutY="14.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="65.0" text="Flights">
|
||||
<Button layoutX="169.0" layoutY="14.0" mnemonicParsing="false" onAction="#flightSummaryButton" prefHeight="25.0" prefWidth="65.0" text="Flights">
|
||||
<font>
|
||||
<Font size="12.0" />
|
||||
</font>
|
||||
</Button>
|
||||
<Button layoutX="20.0" layoutY="61.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="214.0" text="Routes Raw Data" />
|
||||
<Button layoutX="20.0" layoutY="61.0" mnemonicParsing="false" onAction="#routeRawDataButton" prefHeight="25.0" prefWidth="214.0" text="Routes Raw Data" />
|
||||
</children>
|
||||
<padding>
|
||||
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0" />
|
||||
|
||||
Reference in New Issue
Block a user