blob: eb84b6faeda0d3f49a971b5280d193e77682c55b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
package com.camilstaps.route66;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
/**
* Keyboard handler of views for controller.
*
* Pressing keys changes the controller.
*
* @author Pieter Koopman, Camil Staps
*/
public class KeyHandler extends KeyAdapter {
private final Controller controller;
public KeyHandler (Controller c) {
controller = c;
}
/**
* on key down 'q' stop program
* on key down 's' stop the cars
* on key down '<' decrease delay
* on key down '>' increase delay
* on any other key activate the cars
* @param e the key event
*/
@Override
public void keyPressed(KeyEvent e) {
switch (e.getKeyChar()) {
case 'q': System.exit(0);
case 's': controller.stopCars(); break;
case '<': controller.setDelay(controller.getDelay() - 50); break;
case '>': controller.setDelay(controller.getDelay() + 50); break;
default : controller.resumeCars();
}
}
}
|