I had accidentally broken the raceXML construction - fixed it.
Fixed a few issues where boat didn't have nextMark/previousMark times under certain circumstances. LatestMessages wasn't actually notifying properly - fixed. The various XML readers now treat a string constructor as containing file contents, not file name - this was how it was mostly already used. Fixed some issues in RaceXMLReader, including where element.getChildNodes() was used instead of element.getElementsByName(...). Boat: changes speed to a doubleProperty. Changed leg to a Property<Leg>. Race.lastFps is now an IntegerProperty. Added breaks to the case statements in VisualiserInput. Whoops. ResizableRaceCanvas now handles drawing the race boundary. Tidied up code a bit. Removed ResizableRaceMap. Started refactoring Sparkline. Currently doesn't work.
This commit is contained in:
@@ -7,14 +7,14 @@ import javafx.scene.control.Label;
|
||||
import javafx.scene.control.TableColumn;
|
||||
import javafx.scene.control.TableView;
|
||||
import javafx.scene.layout.AnchorPane;
|
||||
import seng302.Model.Boat;
|
||||
import visualiser.model.VisualiserBoat;
|
||||
|
||||
import java.net.URL;
|
||||
import java.util.ResourceBundle;
|
||||
|
||||
|
||||
/**
|
||||
* Finish Screen for when the race finishs.
|
||||
* Finish Screen for when the race finishes.
|
||||
*/
|
||||
public class FinishController extends Controller {
|
||||
|
||||
@@ -22,29 +22,28 @@ public class FinishController extends Controller {
|
||||
AnchorPane finishWrapper;
|
||||
|
||||
@FXML
|
||||
TableView<Boat> boatInfoTable;
|
||||
TableView<VisualiserBoat> boatInfoTable;
|
||||
|
||||
@FXML
|
||||
TableColumn<Boat, String> boatRankColumn;
|
||||
TableColumn<VisualiserBoat, String> boatRankColumn;
|
||||
|
||||
@FXML
|
||||
TableColumn<Boat, String> boatNameColumn;
|
||||
TableColumn<VisualiserBoat, String> boatNameColumn;
|
||||
|
||||
@FXML
|
||||
Label raceWinnerLabel;
|
||||
|
||||
|
||||
/**
|
||||
* Sets up the finish table
|
||||
* @param boats Boats to display
|
||||
* The boats to display on the table.
|
||||
*/
|
||||
private void setFinishTable(ObservableList<Boat> boats){
|
||||
boatInfoTable.setItems(boats);
|
||||
boatNameColumn.setCellValueFactory(cellData -> cellData.getValue().getName());
|
||||
boatRankColumn.setCellValueFactory(cellData -> cellData.getValue().positionProperty());
|
||||
private ObservableList<VisualiserBoat> boats;
|
||||
|
||||
raceWinnerLabel.setText("Winner: "+ boatNameColumn.getCellObservableValue(0).getValue());
|
||||
raceWinnerLabel.setWrapText(true);
|
||||
|
||||
/**
|
||||
* Ctor.
|
||||
*/
|
||||
public FinishController() {
|
||||
}
|
||||
|
||||
|
||||
@@ -52,11 +51,38 @@ public class FinishController extends Controller {
|
||||
public void initialize(URL location, ResourceBundle resources){
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Sets up the finish table
|
||||
* @param boats Boats to display
|
||||
*/
|
||||
private void setFinishTable(ObservableList<VisualiserBoat> boats) {
|
||||
this.boats = boats;
|
||||
|
||||
//Set contents.
|
||||
boatInfoTable.setItems(boats);
|
||||
|
||||
//Name.
|
||||
boatNameColumn.setCellValueFactory(cellData -> cellData.getValue().nameProperty());
|
||||
|
||||
//Rank/position.
|
||||
boatRankColumn.setCellValueFactory(cellData -> cellData.getValue().positionProperty());
|
||||
|
||||
|
||||
//Winner label.
|
||||
raceWinnerLabel.setText("Winner: "+ boatNameColumn.getCellObservableValue(0).getValue());
|
||||
raceWinnerLabel.setWrapText(true);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Display the table
|
||||
* @param boats boats to display on the table.
|
||||
*/
|
||||
public void enterFinish(ObservableList<Boat> boats){
|
||||
public void enterFinish(ObservableList<VisualiserBoat> boats){
|
||||
finishWrapper.setVisible(true);
|
||||
setFinishTable(boats);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user