package org.javabuilders.swing.plugins.glazedlists.test.resource; import java.util.List; import java.util.ResourceBundle; import javax.swing.JComboBox; import javax.swing.JList; import javax.swing.JPanel; import javax.swing.JTable; import org.javabuilders.BuildResult; import org.javabuilders.swing.SwingJavaBuilder; import ca.odell.glazedlists.BasicEventList; import ca.odell.glazedlists.EventList; import ca.odell.glazedlists.swing.EventComboBoxModel; import ca.odell.glazedlists.swing.EventListModel; import ca.odell.glazedlists.swing.EventTableModel; //tests GlazedLists models public class GlazedListPanel extends JPanel { private EventList<String> values = new BasicEventList<String>(); private EventList<Book> books = new BasicEventList<Book>(); private BuildResult result; public GlazedListPanel() { values.add("1"); result = SwingJavaBuilder.build(this,ResourceBundle.getBundle("GlazedListsTestResources")); Book book = new Book("Charles Darwin","Origin of Species",9.99); addBook(book); } public void addBook(Book book) { books.getReadWriteLock().readLock().lock(); try { books.add(book); } finally { books.getReadWriteLock().readLock().unlock(); } } public void removeBook(Book book) { books.getReadWriteLock().readLock().lock(); try { books.remove(book); } finally { books.getReadWriteLock().readLock().unlock(); } } public void removeBook(int index) { removeBook(books.get(index)); } public List<String> getValues() { return values; } private List<Book> getBooks() { return books; } public JList getJList() { return (JList) result.get("list"); } public EventListModel<String> getModel() { return (EventListModel<String>) result.get("model"); } public JComboBox getJComboBox() { return (JComboBox) result.get("box"); } public EventComboBoxModel<String> getComboBoxModel() { return (EventComboBoxModel<String>) result.get("boxmodel"); } public JTable getJTable() { return (JTable) result.get("table"); } public EventTableModel<Book> getTableModel() { return (EventTableModel<Book>) result.get("tablemodel"); } public JTable getJTable2() { return (JTable) result.get("table2"); } public EventTableModel<Book> getTableModel2() { return (EventTableModel<Book>) result.get("tablemodel2"); } }