public void fillSelected(int number) {
        if (grid.value(selectedRow, selectedColumn) == number) {
            return;
        }
        containsValue[selectedRow][selectedColumn] = true;
        grid.fill(selectedRow, selectedColumn, number);
        label[selectedRow][selectedColumn].setText(
                "" + grid.value(selectedRow, selectedColumn));
        label[selectedRow][selectedColumn].setForeground(COLOR_NORMAL);
        label[selectedRow][selectedColumn].setFont(FONT_NORMAL);
        for (int i = 0; i < size*size; i++) {
            for (int j = 0; j < size*size; j++) {
                if (grid.value(i, j) != 0) {
                    if (!containsValue[i][j]) {
                        containsValue[i][j] = true;
                        label[i][j].setText("" + grid.value(i, j));
                        label[i][j].setForeground(COLOR_AUTOFILL);
                        label[i][j].setFont(FONT_NORMAL);
                    } 
                } else {
                    label[i][j].setText(getPossibilities(grid.poss(i, j)));
                }
            }
        }
    }