// Selection (Model of a filtered list of students) // Modified: Carsten Schuermann // Date: Sat Mar 25 22:02:34 2006 import java.util.ArrayList; import java.util.Iterator; import javax.swing.AbstractListModel; class Selection extends AbstractListModel { // Model of a selection private final OOPStudent[] rawData; private ArrayList filteredData = new ArrayList(); private String filter; private OOPStudent selectedStudent; public void setSelected (OOPStudent student) { selectedStudent = student; } public OOPStudent getSelected () { return selectedStudent; } Selection(OOPStudent[] raw){ rawData = raw; updateFilter(""); } private boolean checkAgainstFilter(Object o){ String data = o.toString().toLowerCase(); String filter = this.filter.toLowerCase(); return data.indexOf(filter) >=0; } void updateFilter(String newFilter){ filter = newFilter; filteredData.clear(); for (int i = 0; i