JList, JComboBox and JTable: Components with models

Swing uses Model-View-Controller throughout. This means you get to separate code for the data from code for the display.

EventListModel is Glazed Lists' implementation of ListModel, which provides the data for a JList. The EventListModel gets all of its data from an EventList, which you supply when the EventListModel is constructed.

As you call add() and remove() on your EventList, the EventListModel updates automatically, and in turn your JList updates automatically! Similarly, EventTableModel will update your for a JTable and EventComboBoxModel takes care of JComboBox.