Package org.eclipse.swt.widgets

# Class FontDialog

java.lang.Object
org.eclipse.swt.widgets.Dialog
org.eclipse.swt.widgets.FontDialog

All Implemented Interfaces:
  `Adaptable`

public class FontDialog extends Dialog
Instances of this class allow the user to select a font from all available fonts in the system.

Styles:
  (none)
Events:
  (none)

IMPORTANT: This class is intended to be subclassed only within the SWT implementation.

Since:
  1.3

## Field Summary

### Fields inherited from class org.eclipse.swt.widgets.Dialog

`returnCode, shell`

## Constructor Summary

Constructors
Constructor
Description
`FontDialog(Shell parent)`
Constructs a new instance of this class given only its parent.
`FontDialog(Shell parent, int style)`
Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.

## Method Summary

Modifier and Type
Method
Description
`FontData[]`
`getFontList()`
Returns a FontData set describing the font that was selected in the dialog, or null if none is available.
`RGB`
`getRGB()`
Returns an RGB describing the color that was selected in the dialog, or null if none is available.
`FontData`
`open()`
Makes the dialog visible and brings it to the front of the display.
`protected void`
`prepareOpen()`
`void`
`setFontList(FontData[] fontData)`
Sets the set of FontData objects describing the font to be selected by default in the dialog, or null to let the platform choose one.
`void`
`setRGB(RGB rgb)`
Sets the RGB describing the color to be selected by default in the dialog, or null to let the platform choose one.

### Methods inherited from class org.eclipse.swt.widgets.Dialog

`checkOperationMode, checkSubclass, getAdapter, getParent, getStyle, getText, open, runEventLoop, setText`

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

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

## Constructor Details

### FontDialog

public FontDialog(Shell parent)
Constructs a new instance of this class given only its parent.

Parameters:
  `parent` - a shell which will be the parent of the new instance
Throws:
  `IllegalArgumentException` -
  - ERROR_NULL_ARGUMENT - if the parent is null
  `SWTException` -
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent
  - ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass

### FontDialog

public FontDialog(Shell parent, int style)
Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.

The style value is either one of the style constants defined in class `SWT` which is applicable to instances of this class, or must be built by bitwise OR'ing together (that is, using the `int` "|" operator) two or more of those `SWT` style constants. The class description lists the style constants that are applicable to the class. Style bits are also inherited from superclasses.

Parameters:
  `parent` - a shell which will be the parent of the new instance
  `style` - the style of dialog to construct
Throws:
  `IllegalArgumentException` -
  - ERROR_NULL_ARGUMENT - if the parent is null
  `SWTException` -
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent
  - ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass

## Method Details

### getFontList

public FontData[] getFontList()
Returns a FontData set describing the font that was selected in the dialog, or null if none is available.

Returns:
  the FontData for the selected font, or null

### setFontList

public void setFontList(FontData[] fontData)
Sets the set of FontData objects describing the font to be selected by default in the dialog, or null to let the platform choose one.

Parameters:
  `fontData` - the set of FontData objects to use initially, or null to let the platform select a default when open() is called
See Also:
  - `Font.getFontData()`

### getRGB

public RGB getRGB()
Returns an RGB describing the color that was selected in the dialog, or null if none is available.

Returns:
  the RGB value for the selected color, or null
See Also:
  - `PaletteData.getRGBs()`

### setRGB

public void setRGB(RGB rgb)
Sets the RGB describing the color to be selected by default in the dialog, or null to let the platform choose one.

Parameters:
  `rgb` - the RGB value to use initially, or null to let the platform select a default when open() is called
See Also:
  - `PaletteData.getRGBs()`

### open

public FontData open()
Makes the dialog visible and brings it to the front of the display.

RAP Note: This method is not supported when running the application in JEE_COMPATIBILITY mode. Use `Dialog#open(DialogCallback)` instead.

Returns:
  a FontData object describing the font that was selected, or null if the dialog was cancelled or an error occurred
Throws:
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the dialog has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the dialog
  `UnsupportedOperationException` - when running the application in JEE_COMPATIBILITY mode
See Also:
  - `Application.OperationMode`
  - `Dialog.open(DialogCallback)`

### prepareOpen

protected void prepareOpen()

Overrides:
  `prepareOpen` in class `Dialog`