@Override protected boolean keyPressed(KeyCode code) { if (code.isDigitKey() && code.ordinal() > KeyCode.DIGIT0.ordinal() && code.ordinal() <= KeyCode.DIGIT9.ordinal()) { int value = code.ordinal() - KeyCode.DIGIT0.ordinal(); if (value > 0 && sudoku.isValidAssignment(selectedX, selectedY, value)) { sudoku.placeDigit(selectedX, selectedY, value); } } else if (code.equals(KeyCode.BACK_SPACE) || code.equals(KeyCode.DELETE)) { if (sudoku.isValidAssignment(selectedX, selectedY, null)) { sudoku.placeDigit(selectedX, selectedY, null); } } updateState(true); return true; }