Swing requires that all user interface access be performed by the
      event dispatch thread. You won't have to worry when you're using Glazed
      Lists, however. The model adapter classes automatically use a special
      EventList that copies your list changes to the
      Swing event dispatch thread. You can create instances of this proxy
      using the factory method
      GlazedListsSwing.swingThreadProxyList(EventList).
When your code accesses EventTableModel and
      other Swing classes it must do so only from the Swing event dispatch
      thread. For this you can use the
      SwingUtilities.invokeLater()
      method.