java.awt

Class GraphicsEnvironment

Known Direct Subclasses:
ClasspathGraphicsEnvironment, HeadlessGraphicsEnvironment, QtGraphicsEnvironment, XGraphicsEnvironment, XGraphicsEnvironment

public abstract class GraphicsEnvironment
extends Object

This descibes the collection of GraphicsDevice and Font objects available on a given platform. The resources might be local or remote, and specify the valid configurations for displaying graphics.
Since:
1.4
See Also:
GraphicsDevice, GraphicsConfiguration

Constructor Summary

GraphicsEnvironment()
The environment must be obtained from a factory or query method, hence this constructor is protected.

Method Summary

abstract Graphics2D
createGraphics(BufferedImage image)
Return a Graphics2D object which will render into the specified image.
abstract Font[]
getAllFonts()
Returns an array of the one-point size fonts available in this environment.
abstract String[]
getAvailableFontFamilyNames()
Returns an array of the font family names available in this environment.
abstract String[]
getAvailableFontFamilyNames(Locale l)
Returns an array of the font family names available in this environment, localized to the current Locale if l is non-null.
Point
getCenterPoint()
Returns the point where a window should be centered.
abstract GraphicsDevice
getDefaultScreenDevice()
Get the default screen GraphicsDevice object.
static GraphicsEnvironment
getLocalGraphicsEnvironment()
Returns the local graphics environment.
Rectangle
getMaximumWindowBounds()
Returns the maximum bounds for a centered window object.
abstract GraphicsDevice[]
getScreenDevices()
Get an array of all the GraphicsDevice objects.
static boolean
isHeadless()
Check if the local environment is headless, meaning that it does not support a display, keyboard, or mouse.
boolean
isHeadlessInstance()
Check if the given environment is headless, meaning that it does not support a display, keyboard, or mouse.

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

GraphicsEnvironment

protected GraphicsEnvironment()
The environment must be obtained from a factory or query method, hence this constructor is protected.

Method Details

createGraphics

public abstract Graphics2D createGraphics(BufferedImage image)
Return a Graphics2D object which will render into the specified image.
Parameters:
image - the image to render into
Returns:
the object that renders into the image

getAllFonts

public abstract Font[] getAllFonts()
Returns an array of the one-point size fonts available in this environment. From there, the user can select the font and derive the correct one of proper size and attributes, using deriveFont. Only one master version of each font appears in this array; if a font can be derived from another, it must be created in that way.
Returns:
the array of available fonts
Since:
1.2

getAvailableFontFamilyNames

public abstract String[] getAvailableFontFamilyNames()
Returns an array of the font family names available in this environment. This allows flexibility in choosing the style of font, while still letting the Font class decide its best match.
Returns:
the array of available font families
Since:
1.2

getAvailableFontFamilyNames

public abstract String[] getAvailableFontFamilyNames(Locale l)
Returns an array of the font family names available in this environment, localized to the current Locale if l is non-null. This allows flexibility in choosing the style of font, while still letting the Font class decide its best match.
Parameters:
l - the locale to use
Returns:
the array of available font families, localized
Since:
1.2

getCenterPoint

public Point getCenterPoint()
Returns the point where a window should be centered. You should probably also check that the window fits within the screen bounds. The default simply returns the center of the maximum window bounds; subclasses should override this if native objects (like scrollbars) make that off-centered.
Returns:
the centering point
Throws:
HeadlessException - if the environment is headless
Since:
1.4

getDefaultScreenDevice

public abstract GraphicsDevice getDefaultScreenDevice()
Get the default screen GraphicsDevice object.
Returns:
the default screen device
Throws:
HeadlessException - if the environment is headless

getLocalGraphicsEnvironment

public static GraphicsEnvironment getLocalGraphicsEnvironment()
Returns the local graphics environment. If the java.awt.graphicsenv system property is set, it instantiates the specified class, otherwise it assume that the awt toolkit is a ClasspathToolkit and delegates to it to create the instance.
Returns:
the local environment

getMaximumWindowBounds

public Rectangle getMaximumWindowBounds()
Returns the maximum bounds for a centered window object. The default implementation simply returns the bounds of the default configuration of the default screen; subclasses should override this to if native objects (like scrollbars) reduce what is truly available. Also, subclasses should override this if the window should be centered across a multi-screen display.
Returns:
the maximum window bounds
Throws:
HeadlessException - if the environment is headless
Since:
1.4

getScreenDevices

public abstract GraphicsDevice[] getScreenDevices()
Get an array of all the GraphicsDevice objects.
Returns:
the available graphics devices, may be 0 length
Throws:
HeadlessException - if the environment is headless

isHeadless

public static boolean isHeadless()
Check if the local environment is headless, meaning that it does not support a display, keyboard, or mouse. Many methods in the Abstract Windows Toolkit (java.awt) throw a HeadlessException if this returns true. This method returns true if the java.awt.headless property is set to "true".
Returns:
true if the environment is headless, meaning that graphics are unsupported
Since:
1.4

isHeadlessInstance

public boolean isHeadlessInstance()
Check if the given environment is headless, meaning that it does not support a display, keyboard, or mouse. Many methods in the Abstract Windows Toolkit (java.awt) throw a HeadlessException if this returns true. This default implementation returns isHeadless(), so subclasses need only override it if they differ.
Returns:
true if the environment is headless, meaning that graphics are unsupported
Since:
1.4

GraphicsEnvironment.java -- information about the graphics environment Copyright (C) 2002, 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.