@Override
public void valueChanged(final ListSelectionEvent e) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
final int index = matchesTable.convertRowIndexToModel(matchesTable.getSelectedRow());
final Optional<IWVWMatch> matchOptional = MainWindow.this.matchesTableModel.getMatch(index);
if (matchOptional.isPresent()) {
LOGGER.debug("Incoming selection event [" + index + "] -> match=" + matchOptional.get().getId());
if (!selectedMatch.equals(matchOptional)) {
selectedMatch = matchOptional;