changed tokens into a JComponent, added listeners