agile2d
Class AgileJFrame

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame
                          |
                          +--javax.swing.JFrame
                                |
                                +--agile2d.AgileJFrame
All Implemented Interfaces:
Accessible, ImageObserver, MenuContainer, RootPaneContainer, Serializable, WindowConstants

public class AgileJFrame
extends JFrame

An implementation of JFrame that uses a "pluggable renderer" mechanism to manage rendering the contents of the frame.

Each AgileJFrame has a PluggableRenderer associated with it. The PluggableRenderer is responsible for rendering performed in the frame. It also provides additional methods for controlling the renderer at a high level.

Currently, two renderers are implemented: One using the standard Java2D classes built into the Java runtime, and one using an experimental OpenGL implementation. OpenGL may accelerate rendering for certain applications.

PluggableRenderers are obtained using the PluggableRendererSpi class. The provider is configured using the System property "agile.provider". If this System property is "java2d", then the frame paints graphics using the standard Java2D rendering engine provided with the JVM. If the property is unspecified, or is "opengl", the AgileJFrame attempts to use the Agile2D OpenGL Renderer to perform rendering within the frame, falling back on the standard Java2D rendering engine if the Agile2D OpenGL Renderer is unavailable.

See Also:
PluggableRenderer, Serialized Form

Field Summary
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
AgileJFrame()
          Create a new AgileJFrame object.
AgileJFrame(GraphicsConfiguration config)
          Create a new AgileJFrame object.
AgileJFrame(String name)
          Create a new AgileJFrame object.
AgileJFrame(String name, GraphicsConfiguration config)
          Create a new AgileJFrame object.
 
Method Summary
 void addAWTEventListener(AWTEventListener evt)
          Adds an event listener that is called for all events that are dispatched to the frame by the underlying rendering surface.
 void dispose()
           
 BufferedImage getImage()
           
 PluggableRenderer getPluggableRenderer()
           
 String getPluggableRendererName()
           
 void paint(Graphics g)
           
 void removeAWTEventListener(AWTEventListener evt)
          Removes event listeners added by addAWTEventListener.
 void repaint(long tm, int x, int y, int width, int height)
           
 void setCursor(Cursor cursor)
           
 void setDoubleBuffered(boolean b)
           
protected  void setRootPane(JRootPane root)
           
 void update(Graphics g)
           
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPaneCheckingEnabled
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setFocusableWindowState, setFocusCycleRoot, setLocationRelativeTo, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Constructor Detail

AgileJFrame

public AgileJFrame()
Create a new AgileJFrame object.


AgileJFrame

public AgileJFrame(String name)
Create a new AgileJFrame object.


AgileJFrame

public AgileJFrame(GraphicsConfiguration config)
Create a new AgileJFrame object.


AgileJFrame

public AgileJFrame(String name,
                   GraphicsConfiguration config)
Create a new AgileJFrame object.

Method Detail

getPluggableRenderer

public PluggableRenderer getPluggableRenderer()

getPluggableRendererName

public String getPluggableRendererName()

setDoubleBuffered

public void setDoubleBuffered(boolean b)

addAWTEventListener

public void addAWTEventListener(AWTEventListener evt)
Adds an event listener that is called for all events that are dispatched to the frame by the underlying rendering surface.

Parameters:
evt - the AWTEventListener.

removeAWTEventListener

public void removeAWTEventListener(AWTEventListener evt)
Removes event listeners added by addAWTEventListener.

Parameters:
evt - the AWTEventListener.

setRootPane

protected void setRootPane(JRootPane root)
Overrides:
setRootPane in class JFrame

dispose

public void dispose()
Overrides:
dispose in class Window

repaint

public void repaint(long tm,
                    int x,
                    int y,
                    int width,
                    int height)
Overrides:
repaint in class Component

paint

public void paint(Graphics g)
Overrides:
paint in class Container

update

public void update(Graphics g)
Overrides:
update in class JFrame

setCursor

public void setCursor(Cursor cursor)
Overrides:
setCursor in class Window
See Also:
Window.setCursor(Cursor)

getImage

public BufferedImage getImage()


Copyright © 2002 by University of Maryland, USA All rights reserved.