home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 144 / DPCS0200.iso / Internet / Supanet / system / swing.jar / javax / swing / DefaultComboBoxModel.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-11-05  |  2.0 KB  |  101 lines

  1. package javax.swing;
  2.  
  3. import java.io.Serializable;
  4. import java.util.Vector;
  5.  
  6. public class DefaultComboBoxModel extends AbstractListModel implements MutableComboBoxModel, Serializable {
  7.    Vector objects;
  8.    Object selectedObject;
  9.  
  10.    public DefaultComboBoxModel() {
  11.       this.objects = new Vector();
  12.    }
  13.  
  14.    public DefaultComboBoxModel(Vector var1) {
  15.       this.objects = var1;
  16.       if (this.getSize() > 0) {
  17.          this.selectedObject = this.getElementAt(0);
  18.       }
  19.  
  20.    }
  21.  
  22.    public DefaultComboBoxModel(Object[] var1) {
  23.       this.objects = new Vector();
  24.       this.objects.ensureCapacity(var1.length);
  25.       int var2 = 0;
  26.  
  27.       for(int var3 = var1.length; var2 < var3; ++var2) {
  28.          this.objects.addElement(var1[var2]);
  29.       }
  30.  
  31.       if (this.getSize() > 0) {
  32.          this.selectedObject = this.getElementAt(0);
  33.       }
  34.  
  35.    }
  36.  
  37.    public void addElement(Object var1) {
  38.       this.objects.addElement(var1);
  39.       ((AbstractListModel)this).fireIntervalAdded(this, this.objects.size() - 1, this.objects.size() - 1);
  40.       if (this.objects.size() == 1 && this.selectedObject == null && var1 != null) {
  41.          this.setSelectedItem(var1);
  42.       }
  43.  
  44.    }
  45.  
  46.    public Object getElementAt(int var1) {
  47.       return var1 >= 0 && var1 < this.objects.size() ? this.objects.elementAt(var1) : null;
  48.    }
  49.  
  50.    public int getIndexOf(Object var1) {
  51.       return this.objects.indexOf(var1);
  52.    }
  53.  
  54.    public Object getSelectedItem() {
  55.       return this.selectedObject;
  56.    }
  57.  
  58.    public int getSize() {
  59.       return this.objects.size();
  60.    }
  61.  
  62.    public void insertElementAt(Object var1, int var2) {
  63.       this.objects.insertElementAt(var1, var2);
  64.       ((AbstractListModel)this).fireIntervalAdded(this, var2, var2);
  65.    }
  66.  
  67.    public void removeAllElements() {
  68.       byte var1 = 0;
  69.       int var2 = this.objects.size() - 1;
  70.       this.objects.removeAllElements();
  71.       this.selectedObject = null;
  72.       ((AbstractListModel)this).fireIntervalRemoved(this, var1, var2);
  73.    }
  74.  
  75.    public void removeElement(Object var1) {
  76.       int var2 = this.objects.indexOf(var1);
  77.       if (var2 != -1) {
  78.          this.removeElementAt(var2);
  79.       }
  80.  
  81.    }
  82.  
  83.    public void removeElementAt(int var1) {
  84.       if (this.getElementAt(var1) == this.selectedObject) {
  85.          if (var1 == 0) {
  86.             this.setSelectedItem(this.getSize() == 1 ? null : this.getElementAt(var1 + 1));
  87.          } else {
  88.             this.setSelectedItem(this.getElementAt(var1 - 1));
  89.          }
  90.       }
  91.  
  92.       this.objects.removeElementAt(var1);
  93.       ((AbstractListModel)this).fireIntervalRemoved(this, var1, var1);
  94.    }
  95.  
  96.    public void setSelectedItem(Object var1) {
  97.       this.selectedObject = var1;
  98.       ((AbstractListModel)this).fireContentsChanged(this, -1, -1);
  99.    }
  100. }
  101.