java.awt
public abstract class Toolkit extends Object
getDefaultToolkit
. This method
determines the system toolkit by examining the system property
awt.toolkit
. That property is set to the name of the
Toolkit
subclass for the specified peer set. If the
awt.toolkit
property is not set, then the default
toolkit gnu.java.awt.peer.gtk.GtkToolkit
is used. This
toolkit creates its peers using the GTK+ toolkit.Modifier and Type | Field and Description |
---|---|
protected Map<String,Object> |
desktopProperties |
protected PropertyChangeSupport |
desktopPropsSupport |
Constructor and Description |
---|
Toolkit()
Default constructor for subclasses.
|
Modifier and Type | Method and Description |
---|---|
void |
addAWTEventListener(AWTEventListener listener,
long eventMask)
Adds an AWTEventListener to this toolkit.
|
void |
addPropertyChangeListener(String name,
PropertyChangeListener pcl) |
abstract void |
beep()
Causes a "beep" tone to be generated.
|
abstract int |
checkImage(Image image,
int width,
int height,
ImageObserver observer)
Checks the status of specified image as it is being readied for
rendering.
|
protected abstract ButtonPeer |
createButton(Button target)
Creates a peer object for the specified
Button . |
protected abstract CanvasPeer |
createCanvas(Canvas target)
Creates a peer object for the specified
Canvas . |
protected abstract CheckboxPeer |
createCheckbox(Checkbox target)
Creates a peer object for the specified
Checkbox . |
protected abstract CheckboxMenuItemPeer |
createCheckboxMenuItem(CheckboxMenuItem target)
Creates a peer object for the specified
CheckboxMenuItem . |
protected abstract ChoicePeer |
createChoice(Choice target)
Creates a peer object for the specified
Choice . |
protected LightweightPeer |
createComponent(Component target)
Creates a peer object for the specified
Component . |
Cursor |
createCustomCursor(Image cursor,
Point hotSpot,
String name)
Creates a new custom cursor object.
|
protected abstract DesktopPeer |
createDesktopPeer(Desktop target) |
protected abstract DialogPeer |
createDialog(Dialog target)
Creates a peer object for the specified
Dialog . |
<T extends DragGestureRecognizer> |
createDragGestureRecognizer(Class<T> recognizer,
DragSource ds,
Component comp,
int actions,
DragGestureListener l) |
abstract DragSourceContextPeer |
createDragSourceContextPeer(DragGestureEvent e) |
protected abstract FileDialogPeer |
createFileDialog(FileDialog target)
Creates a peer object for the specified
FileDialog . |
protected abstract FramePeer |
createFrame(Frame target)
Creates a peer object for the specified
Frame . |
Image |
createImage(byte[] data)
Creates an image from the specified byte array.
|
abstract Image |
createImage(byte[] data,
int offset,
int len)
Creates an image from the specified portion of the byte array passed.
|
abstract Image |
createImage(ImageProducer producer)
Creates an image using the specified
ImageProducer |
abstract Image |
createImage(String filename) |
abstract Image |
createImage(URL url) |
protected abstract LabelPeer |
createLabel(Label target)
Creates a peer object for the specified
Label . |
protected abstract ListPeer |
createList(List target)
Creates a peer object for the specified
List . |
protected abstract MenuPeer |
createMenu(Menu target)
Creates a peer object for the specified
Menu . |
protected abstract MenuBarPeer |
createMenuBar(MenuBar target)
Creates a peer object for the specified
MenuBar . |
protected abstract MenuItemPeer |
createMenuItem(MenuItem target)
Creates a peer object for the specified
MenuItem . |
protected abstract PanelPeer |
createPanel(Panel target)
Creates a peer object for the specified
Panel . |
protected abstract PopupMenuPeer |
createPopupMenu(PopupMenu target)
Creates a peer object for the specified
PopupMenu . |
protected abstract ScrollbarPeer |
createScrollbar(Scrollbar target)
Creates a peer object for the specified
Scrollbar . |
protected abstract ScrollPanePeer |
createScrollPane(ScrollPane target)
Creates a peer object for the specified
ScrollPane . |
protected abstract TextAreaPeer |
createTextArea(TextArea target)
Creates a peer object for the specified
TextArea . |
protected abstract TextFieldPeer |
createTextField(TextField target)
Creates a peer object for the specified
TextField . |
protected abstract WindowPeer |
createWindow(Window target)
Creates a peer object for the specified
Window . |
AWTEventListener[] |
getAWTEventListeners()
Returns all registered AWT event listeners.
|
AWTEventListener[] |
getAWTEventListeners(long mask)
Returns all registered AWT event listeners that listen for events with
the specified
eventMask . |
Dimension |
getBestCursorSize(int preferredWidth,
int preferredHeight)
Returns the supported cursor dimension which is closest to the
desired sizes.
|
abstract ColorModel |
getColorModel()
Returns the color model of the screen.
|
static Toolkit |
getDefaultToolkit()
Returns an instance of the default toolkit.
|
Object |
getDesktopProperty(String propertyName) |
abstract String[] |
getFontList()
Deprecated.
|
abstract FontMetrics |
getFontMetrics(Font name)
Deprecated.
|
protected abstract FontPeer |
getFontPeer(String name,
int style)
Deprecated.
|
abstract Image |
getImage(String name)
Returns an image from the specified file, which must be in a
recognized format.
|
abstract Image |
getImage(URL url)
Returns an image from the specified URL, which must be in a
recognized format.
|
boolean |
getLockingKeyState(int keyCode)
Returns whether the given locking key on the keyboard is currently in its
"on" state.
|
int |
getMaximumCursorColors()
Returns the maximum number of colors the Toolkit supports in a custom
cursor palette.
|
int |
getMenuShortcutKeyMask()
Returns the accelerator key mask for menu shortcuts.
|
protected MouseInfoPeer |
getMouseInfoPeer()
Returns a MouseInfoPeer.
|
protected static Container |
getNativeContainer(Component component)
Returns the native container object of the specified component.
|
PrintJob |
getPrintJob(Frame frame,
String title,
JobAttributes jobAttr,
PageAttributes pageAttr)
Returns a instance of
PrintJob for the specified
arguments. |
abstract PrintJob |
getPrintJob(Frame frame,
String title,
Properties props)
Returns a instance of
PrintJob for the specified
arguments. |
static String |
getProperty(String key,
String def)
Returns the value of the property with the specified name, or the
default value if the property does not exist.
|
PropertyChangeListener[] |
getPropertyChangeListeners() |
PropertyChangeListener[] |
getPropertyChangeListeners(String name) |
Insets |
getScreenInsets(GraphicsConfiguration gc) |
abstract int |
getScreenResolution()
Returns the screen resolution in dots per square inch.
|
abstract Dimension |
getScreenSize()
Returns the dimensions of the screen in pixels.
|
abstract Clipboard |
getSystemClipboard()
Returns the system clipboard.
|
EventQueue |
getSystemEventQueue()
Returns the event queue that is suitable for the calling context.
|
protected abstract EventQueue |
getSystemEventQueueImpl()
Returns the event queue that is suitable for the calling context.
|
Clipboard |
getSystemSelection()
Gets the singleton instance of the system selection as a
Clipboard object.
|
protected void |
initializeDesktopProperties() |
boolean |
isDynamicLayoutActive() |
protected boolean |
isDynamicLayoutSet() |
boolean |
isFrameStateSupported(int state)
Returns whether Toolkit supports this state for Frames.
|
abstract boolean |
isModalExclusionTypeSupported(Dialog.ModalExclusionType modalExclusionType) |
abstract boolean |
isModalityTypeSupported(Dialog.ModalityType modalityType) |
protected Object |
lazilyLoadDesktopProperty(String name) |
protected void |
loadSystemColors(int[] systemColors)
Copies the current system colors into the specified array.
|
abstract Map<TextAttribute,?> |
mapInputMethodHighlight(InputMethodHighlight highlight) |
abstract boolean |
prepareImage(Image image,
int width,
int height,
ImageObserver observer)
Readies an image to be rendered on the screen.
|
void |
removeAWTEventListener(AWTEventListener listener)
Removes an AWT event listener from this toolkit.
|
void |
removePropertyChangeListener(String name,
PropertyChangeListener pcl) |
protected void |
setDesktopProperty(String name,
Object newValue) |
void |
setDynamicLayout(boolean dynamic) |
void |
setLockingKeyState(int keyCode,
boolean on)
Sets the state of the given locking key on the keyboard.
|
abstract void |
sync()
Flushes any buffered data to the screen so that it is in sync with
what the AWT system has drawn to it.
|
protected final Map<String,Object> desktopProperties
protected final PropertyChangeSupport desktopPropsSupport
public Toolkit()
protected abstract DesktopPeer createDesktopPeer(Desktop target) throws HeadlessException
target
- HeadlessException
protected abstract ButtonPeer createButton(Button target)
Button
.target
- The Button
to create the peer for.Button
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract TextFieldPeer createTextField(TextField target)
TextField
.target
- The TextField
to create the peer for.TextField
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract LabelPeer createLabel(Label target)
Label
.target
- The Label
to create the peer for.Label
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract ListPeer createList(List target)
List
.target
- The List
to create the peer for.List
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract CheckboxPeer createCheckbox(Checkbox target)
Checkbox
.target
- The Checkbox
to create the peer for.Checkbox
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract ScrollbarPeer createScrollbar(Scrollbar target)
Scrollbar
.target
- The Scrollbar
to create the peer for.Scrollbar
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract ScrollPanePeer createScrollPane(ScrollPane target)
ScrollPane
.target
- The ScrollPane
to create the peer for.ScrollPane
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract TextAreaPeer createTextArea(TextArea target)
TextArea
.target
- The TextArea
to create the peer for.TextArea
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract ChoicePeer createChoice(Choice target)
Choice
.target
- The Choice
to create the peer for.Choice
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract FramePeer createFrame(Frame target)
Frame
.target
- The Frame
to create the peer for.Frame
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract CanvasPeer createCanvas(Canvas target)
Canvas
.target
- The Canvas
to create the peer for.Canvas
object.protected abstract PanelPeer createPanel(Panel target)
Panel
.target
- The Panel
to create the peer for.Panel
object.protected abstract WindowPeer createWindow(Window target)
Window
.target
- The Window
to create the peer for.Window
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract DialogPeer createDialog(Dialog target)
Dialog
.target
- The dialog to create the peer forHeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract MenuBarPeer createMenuBar(MenuBar target)
MenuBar
.target
- The MenuBar
to create the peer for.MenuBar
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract MenuPeer createMenu(Menu target)
Menu
.target
- The Menu
to create the peer for.Menu
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract PopupMenuPeer createPopupMenu(PopupMenu target)
PopupMenu
.target
- The PopupMenu
to create the peer for.PopupMenu
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract MenuItemPeer createMenuItem(MenuItem target)
MenuItem
.target
- The MenuItem
to create the peer for.MenuItem
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected MouseInfoPeer getMouseInfoPeer()
protected abstract FileDialogPeer createFileDialog(FileDialog target)
FileDialog
.target
- The FileDialog
to create the peer for.FileDialog
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected abstract CheckboxMenuItemPeer createCheckboxMenuItem(CheckboxMenuItem target)
CheckboxMenuItem
.target
- The CheckboxMenuItem
to create the peer for.CheckboxMenuItem
object.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected LightweightPeer createComponent(Component target)
Component
. The
peer returned by this method is not a native windowing system peer
with its own native window. Instead, this method allows the component
to draw on its parent window as a "lightweight" widget.target
- The Component
to create the peer for.Component
object.protected abstract FontPeer getFontPeer(String name, int style)
name
- The font to create the peer for.style
- The font style to create the peer for.protected void loadSystemColors(int[] systemColors)
SystemColor
class. Although
this method fills in the array with some default colors a real Toolkit
should override this method and provide real system colors for the
native GUI platform.systemColors
- The array to copy the system colors into.
It must be at least 26 elements.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.SystemColor
public void setDynamicLayout(boolean dynamic)
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.protected boolean isDynamicLayoutSet()
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public boolean isDynamicLayoutActive()
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public abstract Dimension getScreenSize()
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public abstract int getScreenResolution()
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public Insets getScreenInsets(GraphicsConfiguration gc)
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public abstract ColorModel getColorModel()
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public abstract String[] getFontList()
public abstract FontMetrics getFontMetrics(Font name)
name
- The name of the font to return metrics for.public abstract void sync()
public static Toolkit getDefaultToolkit()
Toolkit
specified in the system property
awt.toolkit
, or gnu.java.awt.peer.gtk.GtkToolkit
if the property is not set.AWTError
- If the toolkit cannot be loaded.public abstract Image getImage(String name)
public abstract Image getImage(URL url)
public abstract Image createImage(String filename)
public abstract Image createImage(URL url)
public abstract boolean prepareImage(Image image, int width, int height, ImageObserver observer)
image
- The image to prepare for rendering.width
- The width of the image.height
- The height of the image.observer
- The observer to receive events about the preparation
process.true
if the image is already prepared for rendering,
false
otherwise.public abstract int checkImage(Image image, int width, int height, ImageObserver observer)
image
- The image to prepare for rendering.width
- The width of the image.height
- The height of the image.observer
- The observer to receive events about the preparation
process.java.awt.image.ImageObserver
that indicates the current
state of the imaging readying process.public abstract Image createImage(ImageProducer producer)
ImageProducer
producer
- The ImageProducer
to create the image from.public Image createImage(byte[] data)
data
- The raw image data.public abstract Image createImage(byte[] data, int offset, int len)
data
- The raw image data.offset
- The offset into the data where the image data starts.len
- The length of the image data.public abstract PrintJob getPrintJob(Frame frame, String title, Properties props)
PrintJob
for the specified
arguments.frame
- The window initiating the print job.title
- The print job title.props
- The print job properties.null
if the job
was cancelled.NullPointerException
- If frame is null,
or GraphicsEnvironment.isHeadless() returns true.SecurityException
- If this thread is not allowed to initiate
a print job request.public PrintJob getPrintJob(Frame frame, String title, JobAttributes jobAttr, PageAttributes pageAttr)
PrintJob
for the specified
arguments.frame
- The window initiating the print job.title
- The print job title.jobAttr
- A set of job attributes which will control the print job.pageAttr
- A set of page attributes which will control the print job.NullPointerException
- If frame is null, and either jobAttr is null
or jobAttr.getDialog() returns JobAttributes.DialogType.NATIVE.IllegalArgumentException
- If pageAttrspecifies differing cross
feed and feed resolutions, or when GraphicsEnvironment.isHeadless() returns
true.SecurityException
- If this thread is not allowed to initiate
a print job request.public abstract void beep()
public abstract Clipboard getSystemClipboard()
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public Clipboard getSystemSelection()
HeadlessException
- If GraphicsEnvironment.isHeadless()
is true.SecurityException
- If the current security manager
checkSystemClipboardAccess() doesn't allow access.public int getMenuShortcutKeyMask()
Event.CTRL_MASK
. A toolkit must override this method
to change the default.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public boolean getLockingKeyState(int keyCode)
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.IllegalArgumentException
- If keyCode is not one of the valid keys.UnsupportedOperationException
- If the host system doesn't allow
getting the state of this key programmatically, or if the keyboard doesn't
have this key.public void setLockingKeyState(int keyCode, boolean on)
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.IllegalArgumentException
- If keyCode is not one of the valid keys.UnsupportedOperationException
- If the host system doesn't allow
getting the state of this key programmatically, or if the keyboard doesn't
have this key.protected static Container getNativeContainer(Component component)
component
- The component to fetch the native container for.public Cursor createCustomCursor(Image cursor, Point hotSpot, String name)
IndexOutOfBoundsException
- If the hotSpot values are outside
the bounds of the cursor.HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public Dimension getBestCursorSize(int preferredWidth, int preferredHeight)
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public int getMaximumCursorColors()
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public boolean isFrameStateSupported(int state)
HeadlessException
- If GraphicsEnvironment.isHeadless() is true.public static String getProperty(String key, String def)
key
- The name of the property to retrieve.def
- The default value of the property.public final EventQueue getSystemEventQueue()
Despite the word “System” in the name of this method, a toolkit may provide different event queues for each applet. There is no guarantee that the same queue is shared system-wide.
The implementation first checks whether a
SecurityManager has been installed. If so, its SecurityManager.checkAwtEventQueueAccess()
method gets
called. The security manager will throw a SecurityException if it
does not grant the permission to access the event queue.
Next, the call is delegated to getSystemEventQueueImpl()
.
SecurityException
- if a security manager has been
installed, and it does not grant the permission to access the
event queue.protected abstract EventQueue getSystemEventQueueImpl()
Despite the word “System” in the name of this method, a toolkit may provide different event queues for each applet. There is no guarantee that the same queue is shared system-wide.
No security checks are performed, which is why this method may only be called by Toolkits.
getSystemEventQueue()
public abstract DragSourceContextPeer createDragSourceContextPeer(DragGestureEvent e)
public <T extends DragGestureRecognizer> T createDragGestureRecognizer(Class<T> recognizer, DragSource ds, Component comp, int actions, DragGestureListener l)
public final Object getDesktopProperty(String propertyName)
protected final void setDesktopProperty(String name, Object newValue)
protected Object lazilyLoadDesktopProperty(String name)
protected void initializeDesktopProperties()
public void addPropertyChangeListener(String name, PropertyChangeListener pcl)
public void removePropertyChangeListener(String name, PropertyChangeListener pcl)
public PropertyChangeListener[] getPropertyChangeListeners()
public PropertyChangeListener[] getPropertyChangeListeners(String name)
public void addAWTEventListener(AWTEventListener listener, long eventMask)
evenMask
. The eventMask
is an ORed combination
of event masks as defined in AWTEvent
.
If a security manager is installed, it is asked first if an
AWTPermission("listenToAllAWTEvents")
is allowed.
This may result in a SecurityException
beeing thrown.
It is not recommended to use this kind of notification for normal
applications. It is intended solely for the purpose of debugging and to
support special facilities.listener
- the listener to addeventMask
- the event mask of event types which the listener is
interested inSecurityException
- if there is a SecurityManager
that
doesn't grant
AWTPermission("listenToAllAWTEvents")
getAWTEventListeners()
,
getAWTEventListeners(long)
,
removeAWTEventListener(AWTEventListener)
public void removeAWTEventListener(AWTEventListener listener)
AWTPermission("listenToAllAWTEvents")
is allowed.
This may result in a SecurityException
beeing thrown.
It is not recommended to use this kind of notification for normal
applications. It is intended solely for the purpose of debugging and to
support special facilities.listener
- the listener to removeSecurityException
- if there is a SecurityManager
that
doesn't grant
AWTPermission("listenToAllAWTEvents")
addAWTEventListener(AWTEventListener, long)
,
getAWTEventListeners()
,
getAWTEventListeners(long)
public AWTEventListener[] getAWTEventListeners()
AWTPermission("listenToAllAWTEvents")
is allowed.
This may result in a SecurityException
beeing thrown.
It is not recommended to use this kind of notification for normal
applications. It is intended solely for the purpose of debugging and to
support special facilities.SecurityException
- if there is a SecurityManager
that
doesn't grant
AWTPermission("listenToAllAWTEvents")
addAWTEventListener(AWTEventListener, long)
,
removeAWTEventListener(AWTEventListener)
,
getAWTEventListeners(long)
public AWTEventListener[] getAWTEventListeners(long mask)
eventMask
. This method returns a copy of
the listener array, so that application cannot trash the listener list.
If a security manager is installed, it is asked first if an
AWTPermission("listenToAllAWTEvents")
is allowed.
This may result in a SecurityException
beeing thrown.
It is not recommended to use this kind of notification for normal
applications. It is intended solely for the purpose of debugging and to
support special facilities.mask
- the event maskSecurityException
- if there is a SecurityManager
that
doesn't grant
AWTPermission("listenToAllAWTEvents")
addAWTEventListener(AWTEventListener, long)
,
removeAWTEventListener(AWTEventListener)
,
getAWTEventListeners()
public abstract Map<TextAttribute,?> mapInputMethodHighlight(InputMethodHighlight highlight)
public abstract boolean isModalExclusionTypeSupported(Dialog.ModalExclusionType modalExclusionType)
public abstract boolean isModalityTypeSupported(Dialog.ModalityType modalityType)