Bug 25458 [Font] DBCS support: new SWT API
Last Friday we have included a new API in Font: public Font(Device device, FontData[] fds) { In order to have a more appropriate behavior on DBCS platforms Eclipse/UI should start using this API. Anyway, the best police still is never change the default font in the widget if you don't need to. (this new API is going to make difference in Eclipse/Motif only)
bundles/org.eclipse.jface/src/org/eclipse/jface/preference/FontFieldEditor.java
*/
protected void doStore() {
	PreferenceConverter.setValue(getPreferenceStore(), getPreferenceName(), chosenFont);
}
/**
 * Returns the change button for this field editor.
 *
 * @return the change button
 */
protected Button getChangeControl(Composite parent) {
	if (changeFontButton == null) {
		changeFontButton= new Button(parent, SWT.PUSH);
		if(changeButtonText != null)
			changeFontButton.setText(changeButtonText);
		changeFontButton.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(SelectionEvent event) {
				FontDialog fontDialog= new FontDialog(changeFontButton.getShell());
				fontDialog.setFontData(chosenFont);
				FontData font= fontDialog.open();
				if (font != null) {
					FontData oldFont= chosenFont;
					setPresentsDefaultValue(false);
					FontData[] newData = new FontData[1];
					newData[0] = font;
					updateFont(newData);
					fireValueChanged(VALUE, oldFont, font);
				}
				
			}
		});