if (printerSpecification == null)
{
throw new NullPointerException(EncodingSelector.MESSAGES.getErrorString(
"EncodingSelector.ERROR_0002_NULL_SPECIFICATION")); //$NON-NLS-1$
}
final EncodingComboBoxModel defaultEncodingModel = EncodingComboBoxModel.createDefaultModel(locale);
final EncodingComboBoxModel retval = new EncodingComboBoxModel(locale);
for (int i = 0; i < defaultEncodingModel.getSize(); i++)
{
final String encoding = defaultEncodingModel.getEncoding(i);
if (printerSpecification.isEncodingSupported(encoding))
{
final String description = defaultEncodingModel.getDescription(i);
retval.addEncoding(encoding, description);
}
}
retval.sort();
final Object oldSelectedValue = encodingComboBox.getSelectedItem();
encodingComboBox.setModel(retval);
encodingComboBoxModel = retval;
encodingComboBoxModel.setSelectedItem(oldSelectedValue);
}