diff --git a/src/main/java/controllers/SharedTripsController.java b/src/main/java/controllers/SharedTripsController.java index 34d5f8d..296304d 100644 --- a/src/main/java/controllers/SharedTripsController.java +++ b/src/main/java/controllers/SharedTripsController.java @@ -4,10 +4,15 @@ import javafx.beans.property.SimpleStringProperty; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.fxml.FXML; -import javafx.scene.control.ComboBox; -import javafx.scene.control.TableColumn; -import javafx.scene.control.TableView; -import javafx.scene.control.TextField; +import javafx.geometry.Pos; +import javafx.scene.Scene; +import javafx.scene.control.*; +import javafx.scene.layout.AnchorPane; +import javafx.scene.layout.ColumnConstraints; +import javafx.scene.layout.GridPane; +import javafx.scene.layout.RowConstraints; +import javafx.stage.Popup; +import javafx.stage.Stage; import model.SharedTrip; import model.Stop; import model.Trip; @@ -41,7 +46,92 @@ public class SharedTripsController extends Controller{ private ComboBox directionBox; public void showDetails(){ + SharedTrip trip = sharedTripsTable.getSelectionModel().getSelectedItem(); + Stage tripDetails = new Stage(); + tripDetails.setWidth(600); + tripDetails.setHeight(400); + tripDetails.setTitle(String.format("%1s Details", trip.name)); + AnchorPane wrapper = new AnchorPane(); + + GridPane popUpGrid = new GridPane(); + ColumnConstraints columnConstraints = new ColumnConstraints(); + columnConstraints.setPercentWidth(50); + popUpGrid.getColumnConstraints().add(columnConstraints); + popUpGrid.getColumnConstraints().add(columnConstraints); + + popUpGrid.addColumn(0); + popUpGrid.addColumn(0); + popUpGrid.addRow(0);//title + popUpGrid.addRow(0);//driver title + popUpGrid.addRow(0);//driver name + popUpGrid.addRow(0);//driver photo + popUpGrid.addRow(0);// + popUpGrid.addRow(0);//Car title + popUpGrid.addRow(0);//car model + popUpGrid.addRow(0);//car color + popUpGrid.addRow(0);//car year + popUpGrid.addRow(0);//car performance + + //information + Label tripTitle = new Label(trip.name); + tripTitle.setAlignment(Pos.CENTER); + popUpGrid.add(tripTitle, 0, 0, 2, 1); + + Label driverTitle = new Label("Driver"); + driverTitle.setAlignment(Pos.CENTER); + popUpGrid.add(driverTitle, 0, 1); + + Label driverName = new Label("Driver Name"); + popUpGrid.add(driverName, 0, 2); + + Label driverPhoto = new Label("Driver Photo"); + popUpGrid.add(driverPhoto, 0, 3); + + Label carTitle = new Label("Car"); + popUpGrid.add(carTitle, 0, 5); + + Label carModel = new Label(trip.ride.getModel()); + popUpGrid.add(carModel, 0, 6); + + Label carPlate = new Label(trip.ride.getLicensePlate()); + popUpGrid.add(carPlate, 0, 7); + + Label carColour = new Label(trip.ride.getColour()); + popUpGrid.add(carColour, 0, 8); + + Label carYear = new Label(String.valueOf(trip.ride.getYear())); + popUpGrid.add(carYear, 0, 9); + + //stops + TableView stopTableView = new TableView<>(); + + TableColumn addressColumn = new TableColumn<>(); + addressColumn.setText("Address"); + addressColumn.setCellValueFactory(p->new SimpleStringProperty(p.getValue().getName())); + stopTableView.getColumns().add(addressColumn); + + TableColumn timeColumn = new TableColumn<>(); + timeColumn.setText("Time"); + timeColumn.setCellValueFactory(p->new SimpleStringProperty(p.getValue().getTime())); + stopTableView.getColumns().add(timeColumn); + + stopTableView.setItems(trip.route); + + popUpGrid.add(stopTableView, 1, 1, 1, 8); + + AnchorPane.setTopAnchor(popUpGrid, 0.0); + AnchorPane.setBottomAnchor(popUpGrid, 0.0); + AnchorPane.setRightAnchor(popUpGrid, 0.0); + AnchorPane.setLeftAnchor(popUpGrid, 0.0); + + wrapper.getChildren().add(popUpGrid); + + Scene detailsScene = new Scene(wrapper); + + tripDetails.setScene(detailsScene); + + tripDetails.showAndWait(); } public void resetSearch(){ diff --git a/target/classes/controllers/SharedTripsController.class b/target/classes/controllers/SharedTripsController.class index 3ddb608..d4a45bf 100644 Binary files a/target/classes/controllers/SharedTripsController.class and b/target/classes/controllers/SharedTripsController.class differ