Package diva.canvas.toolbox
Class SwingWrapper
- java.lang.Object
-
- diva.canvas.AbstractFigure
-
- diva.canvas.toolbox.SwingWrapper
-
- All Implemented Interfaces:
CanvasComponent,Figure,VisibleComponent,UserObjectContainer
public class SwingWrapper extends AbstractFigure
A figure that embeds swing components in canvas drawings.- Version:
- $Id$
- Author:
- Michael Shilman, John Reekie
-
-
Constructor Summary
Constructors Constructor Description SwingWrapper(javax.swing.JComponent c)Construct a new swing wrapper instance to wrap the given component.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.awt.geom.Rectangle2DgetBounds()Get the bounding box of this figure.javax.swing.JComponentgetComponent()Return the component that this is wrapping.java.awt.ShapegetShape()Get the shape of this figure.voidpaint(java.awt.Graphics2D g)Ask the wrapped component to paint itself.voidsetComponent(javax.swing.JComponent c)Replace the currently wrapped component with the given component and reshape/repaint the figure.voidsetParent(CanvasComponent fc)Set the parent of this figure.voidtransform(java.awt.geom.AffineTransform at)Transform the figure with the supplied transform.voidtranslate(double x, double y)Translate the figure by the given distance.-
Methods inherited from class diva.canvas.AbstractFigure
contains, getInteractor, getLayer, getOrigin, getParent, getToolTipText, getTransformContext, getUserObject, hit, intersects, isVisible, paint, repaint, repaint, setInteractor, setToolTipText, setUserObject, setVisible
-
-
-
-
Method Detail
-
getBounds
public java.awt.geom.Rectangle2D getBounds()
Get the bounding box of this figure. This method overrides the inherited method to take account of the thickness of the stroke, if there is one.- Specified by:
getBoundsin interfaceFigure- Overrides:
getBoundsin classAbstractFigure- Returns:
- the bounding box of this figure.
-
getComponent
public javax.swing.JComponent getComponent()
Return the component that this is wrapping.
-
getShape
public java.awt.Shape getShape()
Get the shape of this figure.- Specified by:
getShapein interfaceFigure- Specified by:
getShapein classAbstractFigure- Returns:
- the outline shape of this figure
-
paint
public void paint(java.awt.Graphics2D g)
Ask the wrapped component to paint itself.- Specified by:
paintin interfaceVisibleComponent- Specified by:
paintin classAbstractFigure- Parameters:
g- The 2D graphics object that this object it to be painted upon.
-
setComponent
public void setComponent(javax.swing.JComponent c)
Replace the currently wrapped component with the given component and reshape/repaint the figure.
-
setParent
public void setParent(CanvasComponent fc)
Set the parent of this figure. This method overrides the inherited method to deal with the Swing component hierarchy.- Specified by:
setParentin interfaceFigure- Overrides:
setParentin classAbstractFigure- Parameters:
fc- The parent of the figure.- See Also:
Figure.getParent()
-
transform
public void transform(java.awt.geom.AffineTransform at)
Transform the figure with the supplied transform. For now this throws an UnsupportedOperationException because it is unclear how we want to deal with transformations that are not shape-preserving, such as shears and rotations.- Specified by:
transformin interfaceFigure- Specified by:
transformin classAbstractFigure- Parameters:
at- The transform to be used.
-
translate
public void translate(double x, double y)Translate the figure by the given distance.- Specified by:
translatein interfaceFigure- Overrides:
translatein classAbstractFigure- Parameters:
x- The x value to be moved.y- The y value to be moved.
-
-