Added keyboard handling to RaceController

- Capture each KeyEvent with EventFilter over SplitPane race container

#story[1010]
main
Connor Taylor-Brown 9 years ago
parent 7e3e865563
commit 9a76fa592c

@ -97,7 +97,6 @@ public class ConnectionController extends Controller {
}catch(NumberFormatException e){
System.err.println("Port number entered is not a number");
}
}
/**

@ -5,9 +5,12 @@ import javafx.animation.AnimationTimer;
import javafx.application.Platform;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.EventHandler;
import javafx.fxml.FXML;
import javafx.scene.chart.LineChart;
import javafx.scene.control.*;
import javafx.scene.control.Label;
import javafx.scene.input.KeyEvent;
import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.Pane;
@ -16,8 +19,11 @@ import javafx.util.Callback;
import network.Messages.Enums.RaceStatusEnum;
import shared.model.Leg;
import visualiser.app.VisualiserInput;
import visualiser.gameController.Keys.ControlKey;
import visualiser.gameController.Keys.KeyFactory;
import visualiser.model.*;
import java.awt.*;
import java.net.URL;
import java.text.DecimalFormat;
import java.util.ResourceBundle;
@ -79,6 +85,14 @@ public class RaceController extends Controller {
@Override
public void initialize(URL location, ResourceBundle resources) {
// Initialise keyboard handler
race.addEventFilter(KeyEvent.KEY_PRESSED, event -> {
String codeString = event.getCode().toString();
ControlKey controlKey = KeyFactory.getKey(codeString);
if(controlKey != null) {
System.out.println(controlKey.toString() + " is Pressed.");
}
});
}
@ -278,8 +292,6 @@ public class RaceController extends Controller {
//Add to scene.
canvasBase.getChildren().add(0, raceCanvas);
}
@ -345,7 +357,6 @@ public class RaceController extends Controller {
}
/**
* Timer which monitors the race.
*/

Loading…
Cancel
Save