Package org.jfree.report.modules.gui.swing.common

# Class EncodingComboBoxModel

java.lang.Object
org.jfree.report.modules.gui.swing.common.EncodingComboBoxModel

All Implemented Interfaces:
  `ComboBoxModel`, `ListModel`

public class EncodingComboBoxModel extends Object implements ComboBoxModel
A model for the 'encoding' combo box. This combobox model presents a selection for all available string encodings.

Author:
  Thomas Morgner.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`AVAILABLE_ENCODINGS`
The property that defines which encodings are available in the export dialogs.
`static final String`
`AVAILABLE_ENCODINGS_ALL`
The encodings available properties value for all properties.
`static final String`
`AVAILABLE_ENCODINGS_FILE`
The encodings available properties value for properties defined in the properties file.
`static final String`
`AVAILABLE_ENCODINGS_NONE`
The encodings available properties value for no properties defined.
`static final String`
`BUNDLE_NAME`
`static final String`
`ENCODINGS_DEFINITION_FILE`
The name of the properties file used to define the available encodings.
`static final String`
`ENCODINGS_DEFINITION_FILE_DEFAULT`
The default name for the encoding properties file.

## Constructor Summary

Constructors
Constructor
Description
`EncodingComboBoxModel(Locale locale)`
Creates a new model.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`addEncoding(String name, String description)`
Adds an encoding.
`void`
`addEncodingUnchecked(String name, String description)`
Adds an encoding to the model without checking its validity.
`void`
`addListDataListener(ListDataListener l)`
Adds a listener to the list that's notified each time a change to the data model occurs.
`static EncodingComboBoxModel`
`createDefaultModel(Locale locale)`
Creates a default model containing a selection of encodings.
`void`
`ensureEncodingAvailable(String encoding)`
Make sure, that this encoding is defined and selectable in the combobox model.
`protected void`
`fireContentsChanged()`
Notifies all registered listeners that the content of the model has changed.
`protected void`
`fireContentsChanged(int start, int length)`
Notifies all registered listeners that the content of the model has changed.
`static String`
`getAvailableEncodings()`
Defines the loader settings for the available encodings shown to the user.
`String`
`getDescription(int index)`
Returns a description.
`Object`
`getElementAt(int index)`
Returns the value at the specified index.
`String`
`getEncoding(int index)`
Returns an encoding.
`protected String`
`getEncodingDescription(String encoding)`
`static String`
`getEncodingsDefinitionFile()`
Defines the loader settings for the available encodings shown to the user.
`String`
`getSelectedEncoding()`
Returns the selected encoding.
`int`
`getSelectedIndex()`
Returns the selected index.
`Object`
`getSelectedItem()`
Returns the selected item.
`int`
`getSize()`
Returns the length of the list.
`int`
`indexOf(String encoding)`
Returns the index of an encoding.
`void`
`removeEncoding(String name)`
`void`
`removeListDataListener(ListDataListener l)`
Removes a listener from the list that's notified each time a change to the data model occurs.
`void`
`setSelectedEncoding(String encoding)`
`void`
`setSelectedIndex(int index)`
Defines the selected index for this encoding model.
`void`
`setSelectedItem(Object anItem)`
Set the selected item.
`void`
`sort()`
Sorts the encodings.

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

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

## Field Details

### AVAILABLE_ENCODINGS

public static final String AVAILABLE_ENCODINGS
The property that defines which encodings are available in the export dialogs.

See Also:
  - Constant Field Values

### AVAILABLE_ENCODINGS_ALL

public static final String AVAILABLE_ENCODINGS_ALL
The encodings available properties value for all properties.

See Also:
  - Constant Field Values

### AVAILABLE_ENCODINGS_FILE

public static final String AVAILABLE_ENCODINGS_FILE
The encodings available properties value for properties defined in the properties file.

See Also:
  - Constant Field Values

### AVAILABLE_ENCODINGS_NONE

public static final String AVAILABLE_ENCODINGS_NONE
The encodings available properties value for no properties defined. The encoding selection will be disabled.

See Also:
  - Constant Field Values

### ENCODINGS_DEFINITION_FILE

public static final String ENCODINGS_DEFINITION_FILE
The name of the properties file used to define the available encodings. The property points to a resources in the classpath, not to a real file!

See Also:
  - Constant Field Values

### ENCODINGS_DEFINITION_FILE_DEFAULT

public static final String ENCODINGS_DEFINITION_FILE_DEFAULT
The default name for the encoding properties file. This property defaults to "/org/jfree/report/jfreereport-encodings.properties".

See Also:
  - Constant Field Values

### BUNDLE_NAME

public static final String BUNDLE_NAME

See Also:
  - Constant Field Values

## Constructor Details

### EncodingComboBoxModel

public EncodingComboBoxModel(Locale locale)
Creates a new model.

Parameters:
  `locale` -

## Method Details

### addEncoding

public boolean addEncoding(String name, String description)
Adds an encoding.

Parameters:
  `name` - the name.
  `description` - the description.
Returns:
  `true` if the encoding is valid and added to the model, `false` otherwise.

### addEncodingUnchecked

public void addEncodingUnchecked(String name, String description)
Adds an encoding to the model without checking its validity.

Parameters:
  `name` - the name.
  `description` - the description.

### removeEncoding

public void removeEncoding(String name)

### ensureEncodingAvailable

public void ensureEncodingAvailable(String encoding)
Make sure, that this encoding is defined and selectable in the combobox model.

Parameters:
  `encoding` - the encoding that should be verified.

### getEncodingDescription

protected String getEncodingDescription(String encoding)

### sort

public void sort()
Sorts the encodings. Keep the selected object ...

### fireContentsChanged

protected void fireContentsChanged()
Notifies all registered listeners that the content of the model has changed.

### fireContentsChanged

protected void fireContentsChanged(int start, int length)
Notifies all registered listeners that the content of the model has changed.

### setSelectedItem

public void setSelectedItem(Object anItem)
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`
Parameters:
  `anItem` - the list object to select or `null` to clear the selection

### getSelectedIndex

public int getSelectedIndex()
Returns the selected index.

Returns:
  The index.

### setSelectedIndex

public void setSelectedIndex(int index)
Defines the selected index for this encoding model.

Parameters:
  `index` - the selected index or -1 to clear the selection.
Throws:
  `IllegalArgumentException` - if the given index is invalid.

### getSelectedEncoding

public String getSelectedEncoding()
Returns the selected encoding.

Returns:
  The encoding (name).

### getSelectedItem

public Object getSelectedItem()
Returns the selected item.

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

### getSize

public int getSize()
Returns the length of the list.

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

### getElementAt

public Object getElementAt(int index)
Returns the value at the specified index.

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

### addListDataListener

public void addListDataListener(ListDataListener l)
Adds a listener to the list that's notified each time a change to the data model occurs.

Specified by:
  `addListDataListener` in interface `ListModel`
Parameters:
  `l` - the `ListDataListener` to be added

### removeListDataListener

public void removeListDataListener(ListDataListener l)
Removes a listener from the list that's notified each time a change to the data model occurs.

Specified by:
  `removeListDataListener` in interface `ListModel`
Parameters:
  `l` - the `ListDataListener` to be removed

### createDefaultModel

public static EncodingComboBoxModel createDefaultModel(Locale locale)
Creates a default model containing a selection of encodings.

Returns:
  The default model.

### indexOf

public int indexOf(String encoding)
Returns the index of an encoding.

Parameters:
  `encoding` - the encoding (name).
Returns:
  The index.

### getEncoding

public String getEncoding(int index)
Returns an encoding.

Parameters:
  `index` - the index.
Returns:
  The index.

### getDescription

public String getDescription(int index)
Returns a description.

Parameters:
  `index` - the index.
Returns:
  The description.

### getEncodingsDefinitionFile

public static String getEncodingsDefinitionFile()
Defines the loader settings for the available encodings shown to the user. The property defaults to AVAILABLE_ENCODINGS_ALL.

Returns:
  either AVAILABLE_ENCODINGS_ALL, AVAILABLE_ENCODINGS_FILE or AVAILABLE_ENCODINGS_NONE.

### getAvailableEncodings

public static String getAvailableEncodings()
Defines the loader settings for the available encodings shown to the user. The property defaults to AVAILABLE_ENCODINGS_ALL.

Returns:
  either AVAILABLE_ENCODINGS_ALL, AVAILABLE_ENCODINGS_FILE or AVAILABLE_ENCODINGS_NONE.

### setSelectedEncoding

public void setSelectedEncoding(String encoding)