The AWT system uses a set of native peer objects to implement its
widgets. These peers are provided by a peer toolkit, that is accessed
via a subclass of this superclass. The system toolkit is retrieved
by the static methods 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.
beep
public abstract void beep()
Causes a "beep" tone to be generated.
checkImage
public abstract int checkImage(Image image,
int width,
int height,
ImageObserver observer)
Checks the status of specified image as it is being readied for
rendering.
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.
- A union of the bitmasks from
java.awt.image.ImageObserver
that indicates the current
state of the imaging readying process.
createButton
protected abstract ButtonPeer createButton(Button target)
Creates a peer object for the specified Button
.
target
- The Button
to create the peer for.
- The peer for the specified
Button
object.
createCanvas
protected abstract CanvasPeer createCanvas(Canvas target)
Creates a peer object for the specified Canvas
.
target
- The Canvas
to create the peer for.
- The peer for the specified
Canvas
object.
createCheckbox
protected abstract CheckboxPeer createCheckbox(Checkbox target)
Creates a peer object for the specified Checkbox
.
target
- The Checkbox
to create the peer for.
- The peer for the specified
Checkbox
object.
createChoice
protected abstract ChoicePeer createChoice(Choice target)
Creates a peer object for the specified Choice
.
target
- The Choice
to create the peer for.
- The peer for the specified
Choice
object.
createComponent
protected LightweightPeer createComponent(Component target)
Creates a peer object for the specified 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.
- The peer for the specified
Component
object.
createDialog
protected abstract DialogPeer createDialog(Dialog target)
Creates a peer object for the specified Dialog
.
target
- The dialog to create the peer for
- The peer for the specified font name.
createFileDialog
protected abstract FileDialogPeer createFileDialog(FileDialog target)
Creates a peer object for the specified FileDialog
.
target
- The FileDialog
to create the peer for.
- The peer for the specified
FileDialog
object.
createFrame
protected abstract FramePeer createFrame(Frame target)
Creates a peer object for the specified Frame
.
target
- The Frame
to create the peer for.
- The peer for the specified
Frame
object.
createImage
public Image createImage(byte[] data)
Creates an image from the specified byte array. The array must be in
a recognized format. Supported formats vary from toolkit to toolkit.
data
- The raw image data.
createImage
public abstract Image createImage(byte[] data,
int offset,
int len)
Creates an image from the specified portion of the byte array passed.
The array must be in a recognized format. Supported formats vary from
toolkit to toolkit.
data
- The raw image data.offset
- The offset into the data where the image data starts.len
- The length of the image data.
createImage
public abstract Image createImage(ImageProducer producer)
Creates an image using the specified ImageProducer
producer
- The ImageProducer
to create the image from.
createLabel
protected abstract LabelPeer createLabel(Label target)
Creates a peer object for the specified Label
.
target
- The Label
to create the peer for.
- The peer for the specified
Label
object.
createList
protected abstract ListPeer createList(List target)
Creates a peer object for the specified List
.
target
- The List
to create the peer for.
- The peer for the specified
List
object.
createMenu
protected abstract MenuPeer createMenu(Menu target)
Creates a peer object for the specified Menu
.
target
- The Menu
to create the peer for.
- The peer for the specified
Menu
object.
createMenuBar
protected abstract MenuBarPeer createMenuBar(MenuBar target)
Creates a peer object for the specified MenuBar
.
target
- The MenuBar
to create the peer for.
- The peer for the specified
MenuBar
object.
createMenuItem
protected abstract MenuItemPeer createMenuItem(MenuItem target)
Creates a peer object for the specified MenuItem
.
target
- The MenuItem
to create the peer for.
- The peer for the specified
MenuItem
object.
createPanel
protected abstract PanelPeer createPanel(Panel target)
Creates a peer object for the specified Panel
.
target
- The Panel
to create the peer for.
- The peer for the specified
Panel
object.
createPopupMenu
protected abstract PopupMenuPeer createPopupMenu(PopupMenu target)
Creates a peer object for the specified PopupMenu
.
target
- The PopupMenu
to create the peer for.
- The peer for the specified
PopupMenu
object.
createScrollPane
protected abstract ScrollPanePeer createScrollPane(ScrollPane target)
Creates a peer object for the specified ScrollPane
.
target
- The ScrollPane
to create the peer for.
- The peer for the specified
ScrollPane
object.
createScrollbar
protected abstract ScrollbarPeer createScrollbar(Scrollbar target)
Creates a peer object for the specified Scrollbar
.
target
- The Scrollbar
to create the peer for.
- The peer for the specified
Scrollbar
object.
createTextArea
protected abstract TextAreaPeer createTextArea(TextArea target)
Creates a peer object for the specified TextArea
.
target
- The TextArea
to create the peer for.
- The peer for the specified
TextArea
object.
createTextField
protected abstract TextFieldPeer createTextField(TextField target)
Creates a peer object for the specified TextField
.
target
- The TextField
to create the peer for.
- The peer for the specified
TextField
object.
createWindow
protected abstract WindowPeer createWindow(Window target)
Creates a peer object for the specified Window
.
target
- The Window
to create the peer for.
- The peer for the specified
Window
object.
getBestCursorSize
public Dimension getBestCursorSize(int preferredWidth,
int preferredHeight)
Returns the supported cursor dimension which is closest to the
desired sizes.
getColorModel
public abstract ColorModel getColorModel()
Returns the color model of the screen.
- The color model of the screen.
getDefaultToolkit
public static Toolkit getDefaultToolkit()
Returns an instance of the default toolkit. The default toolkit is
the subclass of Toolkit
specified in the system property
awt.toolkit
, or gnu.java.awt.peer.gtk.GtkToolkit
if the property is not set.
- An instance of the system default toolkit.
getFontList
public abstract String[] getFontList()
Returns the names of the available fonts.
- The names of the available fonts.
getFontMetrics
public abstract FontMetrics getFontMetrics(Font name)
Return the font metrics for the specified font
name
- The name of the font to return metrics for.
- The requested font metrics.
getFontPeer
protected abstract FontPeer getFontPeer(String name,
int style)
Creates a peer object for the specified font name.
name
- The font to create the peer for.style
- The font style to create the peer for.
- The peer for the specified font name.
getImage
public abstract Image getImage(String name)
Returns an image from the specified file, which must be in a
recognized format. Supported formats vary from toolkit to toolkit.
- name The name of the file to read the image from.
getImage
public abstract Image getImage(URL url)
Returns an image from the specified URL, which must be in a
recognized format. Supported formats vary from toolkit to toolkit.
- url The URl to read the image from.
getLockingKeyState
public boolean getLockingKeyState(int keyCode)
Returns whether the given locking key on the keyboard is currently in its
"on" state.
getMaximumCursorColors
public int getMaximumCursorColors()
Returns the maximum number of colors the Toolkit supports in a custom
cursor palette.
getMenuShortcutKeyMask
public int getMenuShortcutKeyMask()
Returns the accelerator key mask for menu shortcuts. The default is
Event.CTRL_MASK
. A toolkit must override this method
to change the default.
- The key mask for the menu accelerator key.
getNativeContainer
protected static Container getNativeContainer(Component component)
Returns the native container object of the specified component. This
method is necessary because the parent component might be a lightweight
component.
component
- The component to fetch the native container for.
- The native container object for this component.
getPrintJob
public PrintJob getPrintJob(Frame frame,
String title,
JobAttributes jobAttr,
PageAttributes pageAttr)
Returns a instance of 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.
getPrintJob
public abstract PrintJob getPrintJob(Frame frame,
String title,
Properties props)
Returns a instance of PrintJob
for the specified
arguments.
frame
- The window initiating the print job.title
- The print job title.props
- The print job properties.
- The requested print job, or
null
if the job
was cancelled.
getProperty
public 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.
key
- The name of the property to retrieve.def
- The default value of the property.
getScreenResolution
public abstract int getScreenResolution()
Returns the screen resolution in dots per square inch.
- The screen resolution in dots per square inch.
getScreenSize
public abstract Dimension getScreenSize()
Returns the dimensions of the screen in pixels.
- The dimensions of the screen in pixels.
getSystemEventQueue
public final EventQueue getSystemEventQueue()
Returns the event queue that is suitable for the calling context.
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()
.
- The event queue for this applet (or application).
SecurityException
- if a security manager has been
installed, and it does not grant the permission to access the
event queue.
getSystemEventQueueImpl
protected abstract EventQueue getSystemEventQueueImpl()
Returns the event queue that is suitable for the calling context.
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.
isFrameStateSupported
public boolean isFrameStateSupported(int state)
Returns whether Toolkit supports this state for Frames.
loadSystemColors
protected void loadSystemColors(systemColors[] )
Copies the current system colors into the specified array. This is
the interface used by the 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.
prepareImage
public abstract boolean prepareImage(Image image,
int width,
int height,
ImageObserver observer)
Readies an image to be rendered on the screen. The width and height
values can be set to the default sizes for the image by passing -1
in those parameters.
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.
setLockingKeyState
public void setLockingKeyState(int keyCode,
boolean on)
Sets the state of the given locking key on the keyboard.
sync
public 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.
Toolkit.java -- AWT Toolkit superclass
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version.