public void navigate(int keyCode) {
        switch (keyCode) {
            case KeyCodes.KEY_UP: {
                if (keyboardSelectionIndex >= 7) {
                    setKeyboardSelectedCell(keyboardSelectionIndex - 7);
                }
                break;
            }
            case KeyCodes.KEY_DOWN: {
                if (keyboardSelectionIndex < cellList.size() - 7) {
                    setKeyboardSelectedCell(keyboardSelectionIndex + 7);
                }
                break;
            }
            case KeyCodes.KEY_LEFT: {
                int index = keyboardSelectionIndex;
                index = Math.max(0, index - 1);
                setKeyboardSelectedCell(index);
                break;
            }
            case KeyCodes.KEY_RIGHT: {
                int index = keyboardSelectionIndex;
                index = Math.min(cellList.size() - 1, index + 1);
                setKeyboardSelectedCell(index);
                break;
            }
            case KeyCodes.KEY_ENTER: {
                setSelected(keyboardSelectedCell);
                break;
            }
        }
    }
Highlighting, selectable cell grid. Used to help construct the default
calendar view.
stroom-core-client-widget/src/main/java/stroom/widget/datepicker/client/DateGrid.java