gnu.java.awt.peer.swing

Class SwingContainerPeer

Implemented Interfaces:
ComponentPeer, ContainerPeer
Known Direct Subclasses:
SwingPanelPeer, SwingWindowPeer

public class SwingContainerPeer
extends SwingComponentPeer
implements ContainerPeer

A peer for Container to be used with the Swing based AWT peers.

Field Summary

Fields inherited from class gnu.java.awt.peer.swing.SwingComponentPeer

awtComponent, paintArea, peerFont, swingComponent

Constructor Summary

SwingContainerPeer(Container awtCont)
Creates a new SwingContainerPeer.

Method Summary

protected void
addHeavyweightDescendent(Component comp)
Registers a heavyweight descendent.
void
beginLayout()
Called before the layout of this containers begins.
void
beginValidate()
Called before the validation of this containers begins.
void
cancelPendingPaint(int x, int y, int width, int height)
This method is not used at the moment.
void
endLayout()
Called after the layout of this containers ended.
void
endValidate()
Called after the validation of this containers ended.
protected Component[]
getHeavyweightDescendents()
Returns an array of all registered heavyweight descendents.
Insets
getInsets()
Returns the insets of the container.
protected void
handleKeyEvent(KeyEvent e)
Handles key events on the component.
protected void
handleMouseEvent(MouseEvent ev)
Handles mouse events by dispatching it to the correct component.
protected void
handleMouseMotionEvent(MouseEvent ev)
Handles mouse events by dispatching it to the correct component.
Insets
insets()
Returns the insets of the container.
boolean
isPaintPending()
Returns false unconditionally.
boolean
isRestackSupported()
Returns false unconditionally.
protected void
peerPaint(Graphics g, boolean update)
Performs the super behaviour (call peerPaintComponent() and awtComponent.paint()), and forwards the paint request to the heavyweight descendents of the container.
protected void
peerPaintChildren(Graphics g)
Paints any heavyweight child components.
protected void
removeHeavyweightDescendent(Component comp)
Unregisters a heavyweight descendent.
void
restack()
This method is not used at the moment.

Methods inherited from class gnu.java.awt.peer.swing.SwingComponentPeer

canDetermineObscurity, checkImage, coalescePaintEvent, createBuffers, createImage, createImage, createVolatileImage, destroyBuffers, disable, dispose, enable, flip, getBackBuffer, getBounds, getColorModel, getComponent, getFontMetrics, getGraphics, getGraphicsConfiguration, getLocationOnScreen, getMinimumSize, getPreferredSize, getToolkit, handleEvent, handleFocusEvent, handleKeyEvent, handleMouseEvent, handleMouseMotionEvent, handlesWheelScrolling, hide, init, isFocusTraversable, isFocusable, isObscured, isReparentSupported, layout, minimumSize, paint, peerPaint, peerPaintComponent, preferredSize, prepareImage, print, repaint, reparent, requestFocus, requestFocus, requestFocus, reshape, setBackground, setBounds, setBounds, setCursor, setEnabled, setEventMask, setFont, setForeground, setVisible, show, updateCursorImmediately

Methods inherited from class java.lang.Object

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

Constructor Details

SwingContainerPeer

public SwingContainerPeer(Container awtCont)
Creates a new SwingContainerPeer.
Parameters:
awtCont -

Method Details

addHeavyweightDescendent

protected void addHeavyweightDescendent(Component comp)
Registers a heavyweight descendent. This is then painted by peerPaintChildren(Graphics).
Parameters:
comp - the descendent to register

beginLayout

public void beginLayout()
Called before the layout of this containers begins.
Specified by:
beginLayout in interface ContainerPeer

beginValidate

public void beginValidate()
Called before the validation of this containers begins.
Specified by:
beginValidate in interface ContainerPeer

cancelPendingPaint

public void cancelPendingPaint(int x,
                               int y,
                               int width,
                               int height)
This method is not used at the moment.
Specified by:
cancelPendingPaint in interface ContainerPeer

endLayout

public void endLayout()
Called after the layout of this containers ended.
Specified by:
endLayout in interface ContainerPeer

endValidate

public void endValidate()
Called after the validation of this containers ended.
Specified by:
endValidate in interface ContainerPeer

getHeavyweightDescendents

protected Component[] getHeavyweightDescendents()
Returns an array of all registered heavyweight descendents.
Returns:
all registered heavyweight descendents

getInsets

public Insets getInsets()
Returns the insets of the container. This is implemented to return the insets of the Swing container.
Specified by:
getInsets in interface ContainerPeer
Returns:
the insets of the container

handleKeyEvent

protected void handleKeyEvent(KeyEvent e)
Handles key events on the component. This is usually forwarded to the SwingComponent's processKeyEvent() method.
Overrides:
handleKeyEvent in interface SwingComponentPeer
Parameters:
e - the key event

handleMouseEvent

protected void handleMouseEvent(MouseEvent ev)
Handles mouse events by dispatching it to the correct component.
Overrides:
handleMouseEvent in interface SwingComponentPeer
Parameters:
ev - the mouse event

handleMouseMotionEvent

protected void handleMouseMotionEvent(MouseEvent ev)
Handles mouse events by dispatching it to the correct component.
Overrides:
handleMouseMotionEvent in interface SwingComponentPeer
Parameters:
ev - the mouse event

insets

public Insets insets()
Returns the insets of the container. This is implemented to return the insets of the Swing container.
Specified by:
insets in interface ContainerPeer
Returns:
the insets of the container

isPaintPending

public boolean isPaintPending()
Returns false unconditionally. This method is not used at the moment.
Specified by:
isPaintPending in interface ContainerPeer
Returns:
false

isRestackSupported

public boolean isRestackSupported()
Returns false unconditionally. This method is not used at the moment.
Specified by:
isRestackSupported in interface ContainerPeer
Returns:
false

peerPaint

protected void peerPaint(Graphics g,
                         boolean update)
Performs the super behaviour (call peerPaintComponent() and awtComponent.paint()), and forwards the paint request to the heavyweight descendents of the container.
Overrides:
peerPaint in interface SwingComponentPeer

peerPaintChildren

protected void peerPaintChildren(Graphics g)
Paints any heavyweight child components.
Parameters:
g - the graphics to use for painting

removeHeavyweightDescendent

protected void removeHeavyweightDescendent(Component comp)
Unregisters a heavyweight descendent.
Parameters:
comp - the descendent to unregister

restack

public void restack()
This method is not used at the moment.
Specified by:
restack in interface ContainerPeer

SwingContainerPeer.java -- A Swing based peer for AWT containers Copyright (C) 2006, 2007 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.