|
|
|
|
@ -1,10 +1,15 @@
|
|
|
|
|
package controllers;
|
|
|
|
|
|
|
|
|
|
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 model.SharedTrip;
|
|
|
|
|
import model.Stop;
|
|
|
|
|
import model.TripStop;
|
|
|
|
|
|
|
|
|
|
import java.net.URL;
|
|
|
|
|
import java.util.ResourceBundle;
|
|
|
|
|
@ -22,13 +27,41 @@ public class SharedTripsController extends Controller{
|
|
|
|
|
private TableColumn<SharedTrip, String> directionColumn;
|
|
|
|
|
@FXML
|
|
|
|
|
private TableColumn<SharedTrip, String> daysColumn;
|
|
|
|
|
@FXML
|
|
|
|
|
private ComboBox<Stop> stopsFilter;
|
|
|
|
|
@FXML
|
|
|
|
|
private ObservableList<SharedTrip> sharedTrips;
|
|
|
|
|
|
|
|
|
|
public void search(){
|
|
|
|
|
sharedTrips.removeAll();
|
|
|
|
|
sharedTrips.remove(0, sharedTrips.size());
|
|
|
|
|
for(SharedTrip sharedTrip: parent.getSession().getDataManager().getSharedTrips()){
|
|
|
|
|
//stops are equal
|
|
|
|
|
boolean added = false;
|
|
|
|
|
for (TripStop stop: sharedTrip.route){
|
|
|
|
|
if (stop.equals(stopsFilter.getValue())){
|
|
|
|
|
sharedTrips.add(sharedTrip);
|
|
|
|
|
added = true;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (added){
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void runLater(){
|
|
|
|
|
sharedTripsTable.setItems(parent.getSession().getDataManager().getSharedTrips());
|
|
|
|
|
sharedTrips = FXCollections.observableArrayList(parent.getSession().getDataManager().getSharedTrips());
|
|
|
|
|
sharedTripsTable.setItems(sharedTrips);
|
|
|
|
|
tripNameColumn.setCellValueFactory(p -> new SimpleStringProperty(p.getValue().name));
|
|
|
|
|
directionColumn.setCellValueFactory(p -> new SimpleStringProperty(p.getValue().direction));
|
|
|
|
|
daysColumn.setCellValueFactory(p -> new SimpleStringProperty(p.getValue().getDays()));
|
|
|
|
|
stopsFilter.setItems(parent.getSession().getDataManager().getStops());
|
|
|
|
|
stopsFilter.valueProperty().addListener( e ->{
|
|
|
|
|
search();
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
|