1 package org.columba.mail.gui.contact.list; 19 20 import java.util.List ; 21 import java.util.Vector ; 22 23 import javax.swing.AbstractListModel ; 24 25 import org.columba.addressbook.facade.IHeaderItem; 26 27 31 32 public class ContactListModel extends AbstractListModel { 33 private List <IHeaderItem> list; 34 35 private String patternString = ""; 36 37 public ContactListModel() { 38 super(); 39 40 list = new Vector <IHeaderItem>(); 41 42 } 43 44 public Object getElementAt(int index) { 45 return (IHeaderItem) list.get(index); 46 } 47 48 public int getSize() { 49 return list.size(); 50 } 51 52 public String getPatternString() { 53 return patternString; 54 } 55 56 public void setPatternString(String s) throws Exception { 57 patternString = s; 58 59 } 61 62 public void clear() { 63 list.clear(); 64 } 65 66 public void addElement(IHeaderItem item) { 67 list.add(item); 68 69 int index = list.indexOf(item); 70 71 fireIntervalAdded(this, index, index); 72 } 73 74 public void setHeaderItemList(List <IHeaderItem> l) { 75 76 this.list = l; 77 78 fireContentsChanged(this, 0, list.size() - 1); 79 } 80 81 public IHeaderItem get(int i) { 82 return (IHeaderItem) list.get(i); 83 } 84 85 public boolean addItem(IHeaderItem header) { 86 boolean result1 = false; 87 88 String o = header.getName(); 89 90 if (o != null) { 91 92 String item = (String ) o; 93 94 item = item.toLowerCase(); 96 97 String pattern = getPatternString().toLowerCase(); 98 99 if (item.indexOf(pattern) != -1) { 100 result1 = true; 101 } else { 102 result1 = false; 103 } 104 105 } 106 107 return result1; 108 } 109 110 public Object [] toArray() { 111 return list.toArray(); 112 } 113 114 public void remove(int index) { 115 list.remove(index); 116 fireIntervalRemoved(this, index, index); 117 } 118 119 public void removeElement(IHeaderItem item) { 120 int index = list.indexOf(item); 121 122 remove(index); 123 } 124 } 125 | Popular Tags |