public void mouseClicked(MouseEvent e) { Object source = e.getSource(); if (!(source instanceof JLabel)) return; if (tokenMode) { if (tokenLabels.contains(source)) { orUIManager.tokenSelected((LayToken) ((ActionLabel) source).getPossibleActions().get(0)); setDoneEnabled(true); } else { orUIManager.tokenSelected(null); } setSelectedToken(); } else if (correctionTokenMode) { int id = correctionTokenLabels.indexOf(source); selectedTokenIndex = id; log.info("Correction Token index = " + selectedTokenIndex + " selected"); } else { int id = ((HexLabel) e.getSource()).getInternalId(); orUIManager.tileSelected(id); } }