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
/* (non-Javadoc)
 * Method declared on FieldEditor.
 */
protected void adjustForNumColumns(int numColumns) {
	((GridData)valueControl.getLayoutData()).horizontalSpan = numColumns - 2;
	Control control = getPreviewControl();
	if (control != null) {
		((GridData)control.getLayoutData()).horizontalSpan = numColumns;
	}
}
/* (non-Javadoc)
 * Method declared on FieldEditor.
 */
protected void applyFont() {
	if (chosenFont != null && previewer != null)
		previewer.setFont(chosenFont);
}
/* (non-Javadoc)
 * Method declared on FieldEditor.
 */
protected void doFillIntoGrid(Composite parent, int numColumns) {
	Control control = getLabelControl(parent);
	valueControl = getValueControl(parent);
	GridData gd = new GridData(GridData.FILL_HORIZONTAL);
	gd.horizontalSpan = numColumns - 2;
	valueControl.setLayoutData(gd);
	changeFontButton = getChangeControl(parent);
	gd = new GridData();
	gd.horizontalAlignment = GridData.FILL;
	gd.heightHint = convertVerticalDLUsToPixels(changeFontButton, IDialogConstants.BUTTON_HEIGHT);