package org.pentaho.reporting.designer.extensions.connectioneditor;
import javax.swing.*;
import javax.swing.event.ListDataListener;
import java.util.Vector;
public class EditorComboBoxModel extends AbstractListModel {
private DefaultComboBoxModel model;
private Vector<Object> data;
public EditorComboBoxModel() {
data = new Vector<Object>();
model = new DefaultComboBoxModel( data );
}
public void setSelectedItem( final Object anObject ) {
model.setSelectedItem( anObject );
}
public Object getSelectedItem() {
return model.getSelectedItem();
}
public int getSize() {
return model.getSize();
}
public Object getElementAt( final int index ) {
return model.getElementAt( index );
}
public int getIndexOf( final Object anObject ) {
return model.getIndexOf( anObject );
}
public void addElement( final Object anObject ) {
model.addElement( anObject );
}
public void updateElementAt( final Object anObject, final int index ) {
data.set( index, anObject );
fireContentsChanged( this, index, index );
}
public void insertElementAt( final Object anObject, final int index ) {
model.insertElementAt( anObject, index );
}
public void removeElementAt( final int index ) {
model.removeElementAt( index );
}
public void removeElement( final Object anObject ) {
model.removeElement( anObject );
}
public void removeAllElements() {
model.removeAllElements();
}
public void addListDataListener( final ListDataListener l ) {
model.addListDataListener( l );
super.addListDataListener( l );
}
public void removeListDataListener( final ListDataListener l ) {
model.removeListDataListener( l );
super.removeListDataListener( l );
}
}