private CellType getTypeForCell(int x, int y) {
        // unpaired cols in paired rows are grey
        if ((x + y) % 2 != 0) {
            return CellType.WHITE_CELL;
        }

        Cell cell = chessBoardModel.getCellAt(x, y);
        if (cell.isEmpty()) {
            return CellType.GREY_CELL;
        }

        if (cell.hasOpponentChecker()) {
            return cell.hasQueen() ? CellType.OPPONENT_QUEEN : CellType.OPPONENT_CHECKER;
        }

        if (cell == activeCell) {
            return cell.hasQueen() ? CellType.ACTIVE_QUEEN: CellType.ACTIVE;
        }
        else {
            return cell.hasQueen() ? CellType.USER_QUEEN : CellType.USER_CHECKER;
        }
    }