summaryrefslogtreecommitdiff
path: root/src/tetris/gui/events
diff options
context:
space:
mode:
authorJesse Morgan <jesse@jesterpm.net>2012-12-13 22:14:24 -0800
committerJesse Morgan <jesse@jesterpm.net>2012-12-13 22:14:24 -0800
commit87e98e00e0ca5ac4229091aa9bb0e5c09093f50f (patch)
treeb3e73ba3a22d1e04a6dd87111db27ac7d698d5f3 /src/tetris/gui/events
Tetris project from TCSS305 class.
Original project was in SVN on the school servers, so the versioning history is gone.
Diffstat (limited to 'src/tetris/gui/events')
-rw-r--r--src/tetris/gui/events/TetrisKeyListener.java69
1 files changed, 69 insertions, 0 deletions
diff --git a/src/tetris/gui/events/TetrisKeyListener.java b/src/tetris/gui/events/TetrisKeyListener.java
new file mode 100644
index 0000000..10b999e
--- /dev/null
+++ b/src/tetris/gui/events/TetrisKeyListener.java
@@ -0,0 +1,69 @@
+/*
+ * Jesse Morgan <jesterpm@u.washington.edu>
+ *
+ * TCSS 305 � Autumn 2009
+ * Tetris Project
+ * 17 November 2009
+ */
+
+package tetris.gui.events;
+
+import java.awt.event.KeyAdapter;
+import java.awt.event.KeyEvent;
+
+import tetris.board.TetrisBoard;
+
+/**
+ * Keyboard Input handler for Tetris board.
+ *
+ * @author Jesse Morgan <jesterpm@u.washington.edu>
+ * @version 1.0 30 Nov 2009
+ */
+public class TetrisKeyListener extends KeyAdapter {
+ /**
+ * The tetris board we update.
+ */
+
+ private final TetrisBoard my_board;
+
+ /**
+ * Constructor.
+ *
+ * @param the_board The board to update.
+ */
+ public TetrisKeyListener(final TetrisBoard the_board) {
+ super();
+
+ my_board = the_board;
+ }
+
+ @Override
+ public void keyPressed(final KeyEvent the_event) {
+ super.keyPressed(the_event);
+
+ switch (the_event.getKeyCode()) {
+ case KeyEvent.VK_LEFT:
+ my_board.moveLeft();
+ break;
+
+ case KeyEvent.VK_RIGHT:
+ my_board.moveRight();
+ break;
+
+ case KeyEvent.VK_UP:
+ my_board.rotateRight();
+ break;
+
+ case KeyEvent.VK_DOWN:
+ my_board.moveDown();
+ break;
+
+ case KeyEvent.VK_SPACE:
+ my_board.dropPiece();
+ break;
+
+ default:
+ }
+ }
+
+}