code: @Override
    public void setupEventHandlers() {
      node.getSelectionModel().getSelectedIndices().addListener((ListChangeListener<Integer>) c -> {
        if (preventUpdate) {
          return;
        }
  
        preventUpdate = true;
  
        for (int i = 0; i < node.getItems().size(); i++) {
          if (node.getSelectionModel().getSelectedIndices().contains(i)) {
            field.select(i);
          } else {
            field.deselect(i);
          }
        }
  
        preventUpdate = false;
      });
    }
docs: {@inheritDoc}