public boolean isAllowed(int number) {
        if (!grid.isEditable(selectedRow, selectedColumn)) {
            Toolkit.getDefaultToolkit().beep();
            return false;
        }
        Point p = grid.isAllowed(selectedRow, selectedColumn, number);
        if (p == null) {
            return true;
        } else {
            if (grid.value(errorRow, errorColumn) != 0
                    && grid.isEditable(errorRow, errorColumn)) {
                label[errorRow][errorColumn].setForeground(COLOR_NORMAL);
            }
            label[errorRow = p.x][errorColumn = p.y].setForeground(COLOR_ERROR);
            Toolkit.getDefaultToolkit().beep();
            return false;
        }
    }