diff options
| author | Stefan Suhren <suhren.stefan@fh-swf.de> | 2015-12-16 13:04:59 +0100 |
|---|---|---|
| committer | Stefan Suhren <suhren.stefan@fh-swf.de> | 2015-12-16 13:04:59 +0100 |
| commit | 23e28615373b2b5b3c12766aaa49cbc9c4c3d7d8 (patch) | |
| tree | ffacc4ebf8406f7328b3789a202b87e6f70b2b9c /src/de/fhswf/in/inf/se/projektthemenvergabe/view/ProjektthemenverwaltungsController.java | |
| parent | 4212a6f91b1a5298e1ad935bbc91b8af3084e49e (diff) | |
| download | Projektthemenvergabe-23e28615373b2b5b3c12766aaa49cbc9c4c3d7d8.tar.gz Projektthemenvergabe-23e28615373b2b5b3c12766aaa49cbc9c4c3d7d8.zip | |
Add filter to the ProjektTableView
Diffstat (limited to 'src/de/fhswf/in/inf/se/projektthemenvergabe/view/ProjektthemenverwaltungsController.java')
| -rw-r--r-- | src/de/fhswf/in/inf/se/projektthemenvergabe/view/ProjektthemenverwaltungsController.java | 54 |
1 files changed, 53 insertions, 1 deletions
diff --git a/src/de/fhswf/in/inf/se/projektthemenvergabe/view/ProjektthemenverwaltungsController.java b/src/de/fhswf/in/inf/se/projektthemenvergabe/view/ProjektthemenverwaltungsController.java index 2731d7c..179ad98 100644 --- a/src/de/fhswf/in/inf/se/projektthemenvergabe/view/ProjektthemenverwaltungsController.java +++ b/src/de/fhswf/in/inf/se/projektthemenvergabe/view/ProjektthemenverwaltungsController.java @@ -3,6 +3,8 @@ package de.fhswf.in.inf.se.projektthemenvergabe.view; import de.fhswf.in.inf.se.projektthemenvergabe.Main; import de.fhswf.in.inf.se.projektthemenvergabe.model.Projekt; import javafx.application.Platform; +import javafx.collections.transformation.FilteredList; +import javafx.collections.transformation.SortedList; import javafx.fxml.FXML; import javafx.scene.control.Button; import javafx.scene.control.MenuItem; @@ -47,6 +49,8 @@ public class ProjektthemenverwaltungsController private Main main; + private FilteredList<Projekt> filterList; + @FXML private void initialize() { @@ -79,7 +83,55 @@ public class ProjektthemenverwaltungsController public void setMain(Main main) { this.main = main; - projektTableView.setItems(main.getProjekte()); + + filterList = new FilteredList<>(main.getProjekte()); + + SortedList<Projekt> sortedList = new SortedList<>(filterList); + sortedList.comparatorProperty() + .bind(projektTableView.comparatorProperty()); + + projektTableView.setItems(sortedList); + } + + @FXML + private void handleShowAll() + { + filterList.setPredicate(null); + } + + @FXML + private void handleShowInBearbeitung() + { + filterList.setPredicate((projekt) -> projekt.getStatus() + .equals(Projekt.getStatusList().get(0))); + } + + @FXML + private void handleShowEingereicht() + { + filterList.setPredicate((projekt) -> projekt.getStatus() + .equals(Projekt.getStatusList().get(1))); + } + + @FXML + private void handleShowInUeberabeitung() + { + filterList.setPredicate((projekt) -> projekt.getStatus() + .equals(Projekt.getStatusList().get(2))); + } + + @FXML + private void handleShowAngenommen() + { + filterList.setPredicate((projekt) -> projekt.getStatus() + .equals(Projekt.getStatusList().get(3))); + } + + @FXML + private void handleShowAbgelehnt() + { + filterList.setPredicate((projekt) -> projekt.getStatus() + .equals(Projekt.getStatusList().get(4))); } @FXML |
