You might be interested in the [Grid PRO]
(https://vaadin.com/components/vaadin-grid-pro/java-examples) component (Vaadin Pro, Prime or Enterprise subscription required), where you can just doubleclick any cell to directly edit that cell. There is no need to edit a whole row.
If you don’t have access to PRO components, or if this is not what you wanted, it might be beneficial to analyze why you need this and find a different solution to your problem altogether. Because it doesn’t sound like a standard use-case to me. Why do you want to edit all items together? Could this also be done differently?
But:
It’s slower than a grid in edit mode (because every line of this column is a component instead of text).
It’s not row editing (so you can edit the entire row and cancel/save it).
Edit: Jean-Christophes idea would be even better for your situation, as there isn’t even an editor involved. You will need to handle setting the changed score value on the item upon a ValueChangeEvent, and maybe even save the changed item to the DB, if there is not some cascading set up for merge/persist. here an example since I fear it might not be clear what we mean:
// this will allow direct changing of scores, without ever opening a grid editor.
grid.addComponentColumn(item -> {
NumberField score = new NumberField();
score.setHasControls(true);
score.setValue(item.getScore());
score.addValueChangeListener(event -> {
item.setScore(event.getValue();
// save item in DB if it will not be cascaded somehow
});
return score;
});
used grid-editor approach with click. I have defined editor with buffered binder and set column with component like grid-editor example.
In that on row click , item is edited and set it in to the global edited list (items not saved in db yet). on main update click, called db update for the edited list.