Class Font
- java.lang.Object
-
- org.eclipse.swt.graphics.Resource
-
- org.eclipse.swt.graphics.Font
-
public final class Font extends Resource
Instances of this class manage operating system resources that define how text looks when it is displayed. Fonts may be constructed by providing a device and either name, size and style information or aFontData
object which encapsulates this data.Application code must explicitly invoke the
Font.dispose()
method to release the operating system resources managed by each instance when those instances are no longer required.
-
-
Field Summary
Fields Modifier and Type Field Description long
handle
the handle to the OS font resource (Warning: This field is platform dependent)
-
Constructor Summary
Constructors Constructor Description Font(Device device, String name, int height, int style)
Constructs a new font given a device, a font name, the height of the desired font in points, and a font style.Font(Device device, FontData fd)
Constructs a new font given a device and font data which describes the desired font's appearance.Font(Device device, FontData[] fds)
Constructs a new font given a device and an array of font data which describes the desired font's appearance.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object object)
Compares the argument to the receiver, and returns true if they represent the same object using a class specific comparison.FontData[]
getFontData()
Returns an array ofFontData
s representing the receiver.int
hashCode()
Returns an integer hash code for the receiver.boolean
isDisposed()
Returnstrue
if the font has been disposed, andfalse
otherwise.String
toString()
Returns a string containing a concise, human-readable description of the receiver.static Font
win32_new(Device device, long handle)
Invokes platform specific functionality to allocate a new font.-
Methods inherited from class org.eclipse.swt.graphics.Resource
dispose, getDevice, setNonDisposeHandler
-
-
-
-
Field Detail
-
handle
public long handle
the handle to the OS font resource (Warning: This field is platform dependent)IMPORTANT: This field is not part of the SWT public API. It is marked public only so that it can be shared within the packages provided by SWT. It is not available on all platforms and should never be accessed from application code.
- Restriction:
- This field is not intended to be referenced by clients.
-
-
Constructor Detail
-
Font
public Font(Device device, FontData fd)
Constructs a new font given a device and font data which describes the desired font's appearance.You must dispose the font when it is no longer required.
- Parameters:
device
- the device to create the font onfd
- the FontData that describes the desired font (must not be null)- Throws:
IllegalArgumentException
-- ERROR_NULL_ARGUMENT - if device is null and there is no current device
- ERROR_NULL_ARGUMENT - if the fd argument is null
SWTError
-- ERROR_NO_HANDLES - if a font could not be created from the given font data
- See Also:
Resource.dispose()
-
Font
public Font(Device device, FontData[] fds)
Constructs a new font given a device and an array of font data which describes the desired font's appearance.You must dispose the font when it is no longer required.
- Parameters:
device
- the device to create the font onfds
- the array of FontData that describes the desired font (must not be null)- Throws:
IllegalArgumentException
-- ERROR_NULL_ARGUMENT - if device is null and there is no current device
- ERROR_NULL_ARGUMENT - if the fds argument is null
- ERROR_INVALID_ARGUMENT - if the length of fds is zero
- ERROR_NULL_ARGUMENT - if any fd in the array is null
SWTError
-- ERROR_NO_HANDLES - if a font could not be created from the given font data
- Since:
- 2.1
- See Also:
Resource.dispose()
-
Font
public Font(Device device, String name, int height, int style)
Constructs a new font given a device, a font name, the height of the desired font in points, and a font style.You must dispose the font when it is no longer required.
- Parameters:
device
- the device to create the font onname
- the name of the font (must not be null)height
- the font height in pointsstyle
- a bit or combination of NORMAL, BOLD, ITALIC- Throws:
IllegalArgumentException
-- ERROR_NULL_ARGUMENT - if device is null and there is no current device
- ERROR_NULL_ARGUMENT - if the name argument is null
- ERROR_INVALID_ARGUMENT - if the height is negative
SWTError
-- ERROR_NO_HANDLES - if a font could not be created from the given arguments
- See Also:
Resource.dispose()
-
-
Method Detail
-
equals
public boolean equals(Object object)
Compares the argument to the receiver, and returns true if they represent the same object using a class specific comparison.- Overrides:
equals
in classObject
- Parameters:
object
- the object to compare with this object- Returns:
true
if the object is the same as this object andfalse
otherwise- See Also:
hashCode()
-
getFontData
public FontData[] getFontData()
Returns an array ofFontData
s representing the receiver. On Windows, only one FontData will be returned per font. On X however, aFont
object may be composed of multiple X fonts. To support this case, we return an array of font data objects.- Returns:
- an array of font data objects describing the receiver
- Throws:
SWTException
-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
-
hashCode
public int hashCode()
Returns an integer hash code for the receiver. Any two objects that returntrue
when passed toequals
must return the same value for this method.- Overrides:
hashCode
in classObject
- Returns:
- the receiver's hash
- See Also:
equals(java.lang.Object)
-
isDisposed
public boolean isDisposed()
Returnstrue
if the font has been disposed, andfalse
otherwise.This method gets the dispose state for the font. When a font has been disposed, it is an error to invoke any other method (except
Resource.dispose()
) using the font.- Specified by:
isDisposed
in classResource
- Returns:
true
when the font is disposed andfalse
otherwise
-
toString
public String toString()
Returns a string containing a concise, human-readable description of the receiver.
-
win32_new
public static Font win32_new(Device device, long handle)
Invokes platform specific functionality to allocate a new font.IMPORTANT: This method is not part of the public API for
Font
. It is marked public only so that it can be shared within the packages provided by SWT. It is not available on all platforms, and should never be called from application code.- Parameters:
device
- the device on which to allocate the colorhandle
- the handle for the font- Returns:
- a new font object containing the specified device and handle
- Restriction:
- This method is not intended to be referenced by clients.
-
-