Module java.desktop
Package javax.swing.plaf.metal

## Class MetalFileChooserUI.FilterComboBoxModel

- java.lang.Object
- - javax.swing.AbstractListModel<Object>
  - - javax.swing.plaf.metal.MetalFileChooserUI.FilterComboBoxModel

All Implemented Interfaces:
  PropertyChangeListener, Serializable, EventListener, ComboBoxModel<Object>, ListModel<Object>

Enclosing class:
  MetalFileChooserUI

    protected class MetalFileChooserUI.FilterComboBoxModel
    extends AbstractListModel<Object>
    implements ComboBoxModel<Object>, PropertyChangeListener

Data model for a type-face selection combo-box.

### Field Summary

Fields
`protected FileFilter[]` `filters` An array of file filters.

### Fields inherited from class javax.swing.AbstractListModel

`listenerList`

### Constructor Summary

Constructors
`protected` `FilterComboBoxModel()` Constructs an instance of `FilterComboBoxModel`.

### Method Summary

All Methods Instance Methods Concrete Methods
`Object` `getElementAt(int index)` Returns the value at the specified index.
`Object` `getSelectedItem()` Returns the selected item
`int` `getSize()` Returns the length of the list.
`void` `propertyChange(PropertyChangeEvent e)` This method gets called when a bound property is changed.
`void` `setSelectedItem(Object filter)` Set the selected item.

### Methods inherited from class javax.swing.AbstractListModel

`addListDataListener, fireContentsChanged, fireIntervalAdded, fireIntervalRemoved, getListDataListeners, getListeners, removeListDataListener`

### Methods inherited from interface javax.swing.ListModel

`addListDataListener, removeListDataListener`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### filters

    protected FileFilter[] filters

An array of file filters.

### Constructor Detail

#### FilterComboBoxModel

    protected FilterComboBoxModel()

Constructs an instance of `FilterComboBoxModel`.

### Method Detail

#### propertyChange

    public void propertyChange(PropertyChangeEvent e)

Description copied from interface: `PropertyChangeListener`
This method gets called when a bound property is changed.

Specified by:
  `propertyChange` in interface `PropertyChangeListener`
Parameters:
  `e` - A PropertyChangeEvent object describing the event source and the property that has changed.

#### setSelectedItem

    public void setSelectedItem(Object filter)

Description copied from interface: `ComboBoxModel`
Set the selected item. The implementation of this method should notify all registered `ListDataListener`s that the contents have changed.

Specified by:
  `setSelectedItem` in interface `ComboBoxModel<Object>`
Parameters:
  `filter` - the list object to select or `null` to clear the selection

#### getSelectedItem

    public Object getSelectedItem()

Description copied from interface: `ComboBoxModel`
Returns the selected item

Specified by:
  `getSelectedItem` in interface `ComboBoxModel<Object>`
Returns:
  The selected item or `null` if there is no selection

#### getSize

    public int getSize()

Description copied from interface: `ListModel`
Returns the length of the list.

Specified by:
  `getSize` in interface `ListModel<Object>`
Returns:
  the length of the list

#### getElementAt

    public Object getElementAt(int index)

Description copied from interface: `ListModel`
Returns the value at the specified index.

Specified by:
  `getElementAt` in interface `ListModel<Object>`
Parameters:
  `index` - the requested index
Returns:
  the value at `index`