Habilitar / deshabilitar la selección de elementos en la vista de lista en el modo de opción múltiple

Tengo una vista de lista registrada para el menú contextual en modo de opción múltiple:

private void initListViewForContextMenu(){
    log.d("FilesFragment", "initListViewForContextMenu()");
    ListView listView = getListView();
    listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
    listView.setMultiChoiceModeListener(new MultiChoiceModeListener() { ...

El problema es que no todos los elementos de mi vista deben ser seleccionables, solo aquellos que muestran un ícono especial deben estar disponibles para su selección. No sé cómo implementar esto, he definido unOnItemLongClickListener:

getListView().setOnItemLongClickListener(new OnItemLongClickListener() {
    @Override
    public boolean onItemLongClick(AdapterView<?> adapter, View view, int position, long id) {
        Log.d("FilesFragment", "OnItemLongClickListener.onItemLongClick at pos " + position);
        PfmDocument doc = (PfmDocument)adapter.getItemAtPosition(position);
        if (doc.isOnBasket()){
            Log.d("FilesFragment", "OnItemLongClickListener.onItemLongClick detected in basket");
            ListView lv = (ListView) adapter;
            lv.setItemChecked(position, false);
        }
        return false;
        }
    }); 

pero este oyente nunca es llamado.

También he tratado de establecer unaOnLongClickListener a la vista de fila en el adaptador, pero al hacer este clic normal también se deshabilita incluso cuando el menú contextual está cerrado (no en el modo de selección).

if (doc.isOnBasket()){
    rowView.setOnLongClickListener(new OnLongClickListener() {
    @Override
    public boolean onLongClick(View v) {
        return false; // do nothing, already in basket
    }
});

//}

Respuestas a la pregunta(1)

Su respuesta a la pregunta