diff --git a/src/de/katho/kBorrow/models/UserListModel.java b/src/de/katho/kBorrow/models/UserListModel.java index 8641eff..f411de7 100644 --- a/src/de/katho/kBorrow/models/UserListModel.java +++ b/src/de/katho/kBorrow/models/UserListModel.java @@ -1,21 +1,21 @@ package de.katho.kBorrow.models; import java.util.ArrayList; -import java.util.Vector; -import javax.swing.DefaultComboBoxModel; +import javax.swing.AbstractListModel; +import javax.swing.ComboBoxModel; import de.katho.kBorrow.data.KUser; import de.katho.kBorrow.db.DbConnector; -public class UserListModel extends DefaultComboBoxModel { +public class UserListModel extends AbstractListModel implements ComboBoxModel { /** * */ private static final long serialVersionUID = -8653066929273274524L; private DbConnector dbCon; - private Vector list; + private ArrayList data; private KUser selectedItem = null; public UserListModel(DbConnector pDbCon){ @@ -26,23 +26,19 @@ public class UserListModel extends DefaultComboBoxModel { public void updateModel() { - list = new Vector(); - ArrayList data = dbCon.getUserList(); + data = dbCon.getUserList(); - for(KUser elem : data){ - list.add(elem); - } + if(data.size() > 0) setSelectedItem(data.get(0)); - setSelectedItem(list.firstElement()); - fireIntervalAdded(this, 0, list.size()-1); + fireIntervalAdded(this, 0, data.size()-1); } - public void setSelectedItem(KUser object) { + public void setSelectedItem(Object object) { if(selectedItem == null && object == null) return; if(selectedItem != null && selectedItem.equals(object)) return; - if(object!= null && getIndexOf(object) == -1) return; + if(object!= null && data.indexOf((KUser)object) == -1) return; - selectedItem = object; + selectedItem = (KUser)object; fireContentsChanged(this, -1, -1); } @@ -52,27 +48,14 @@ public class UserListModel extends DefaultComboBoxModel { } public String getElementAt(int index){ - if(index < 0 || index >= list.size()) return null; + if(index < 0 || index >= data.size()) return null; - KUser obj = list.elementAt(index); + KUser obj = data.get(index); return obj.getName()+" "+obj.getSurname(); } - - public int getSize(){ - return list.size(); - } - public void addElement(KUser object) { - list.addElement(object); - int index = list.size() - 1; - fireIntervalAdded(this, index, index); - - if (list.size() == 1 && selectedItem == null) - setSelectedItem(object); - } - - public int getIndexOf(KUser obj){ - return list.indexOf(obj); + public int getSize() { + return data.size(); } }