Class RoundRectangleFigure
- java.lang.Object
-
- org.jhotdraw.beans.AbstractBean
-
- org.jhotdraw.draw.AbstractFigure
-
- org.jhotdraw.draw.AbstractAttributedFigure
-
- org.jhotdraw.draw.RoundRectangleFigure
-
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, Figure, DOMStorable
public class RoundRectangleFigure extends AbstractAttributedFigure
AFigurewith a rounded rectangular shape.This figure has two JavaBeans properties
arcWidthandarcHeightwhich specify the corner radius.This figure creates a
RoundRectangleRadiusHandlewhich allows to interactively change the corner radius.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field and Description static java.lang.StringARC_HEIGHT_PROPERTYIdentifies thearcHeightJavaBeans property.static java.lang.StringARC_WIDTH_PROPERTYIdentifies thearcWidthJavaBeans property.-
Fields inherited from interface org.jhotdraw.draw.Figure
CONNECTABLE_PROPERTY, REMOVABLE_PROPERTY, SELECTABLE_PROPERTY, TRANSFORMABLE_PROPERTY
-
-
Constructor Summary
Constructors Constructor and Description RoundRectangleFigure()Creates a new instance.RoundRectangleFigure(double x, double y, double width, double height)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description RoundRectangleFigureclone()Returns a clone of the figure, with clones of all aggregated figures, such as children and decorators.booleancontains(java.awt.geom.Point2D.Double p)Checks if a Point2D.Double is inside the figure.java.util.Collection<Handle>createHandles(int detailLevel)Creates handles used to manipulate the figure.ConnectorfindCompatibleConnector(Connector c, boolean isStartConnector)Gets a compatible connector.ConnectorfindConnector(java.awt.geom.Point2D.Double p, ConnectionFigure prototype)Returns the Figures connector for the specified location.doublegetArcHeight()Gets the arc height.doublegetArcWidth()Gets the arc width.java.awt.geom.Rectangle2D.DoublegetBounds()Returns the untransformed logical bounds of the figure as a Rectangle.java.awt.geom.Rectangle2D.DoublegetDrawingArea()Returns the drawing area of the figure as a Rectangle.java.lang.ObjectgetTransformRestoreData()Gets data which can be used to restore the transformation of the figure without loss of precision, after a transform has been applied to it.voidread(DOMInput in)voidrestoreTransformTo(java.lang.Object geometry)Restores the transform of the figure to a previously stored state.voidsetArc(double width, double height)Convenience method for setting both the arc width and the arc height.voidsetArcHeight(double newValue)Sets the arc height.voidsetArcWidth(double newValue)Sets the arc width.voidsetBounds(java.awt.geom.Point2D.Double anchor, java.awt.geom.Point2D.Double lead)Sets the logical and untransformed bounds of the figure.voidtransform(java.awt.geom.AffineTransform tx)Transforms the figure.voidwrite(DOMOutput out)-
Methods inherited from class org.jhotdraw.draw.AbstractAttributedFigure
draw, get, getAttributes, getAttributesRestoreData, getStroke, getStrokeMiterLimitFactor, hasAttribute, isAttributeEnabled, removeAttribute, restoreAttributesTo, set, setAttributeEnabled, setAttributes
-
Methods inherited from class org.jhotdraw.draw.AbstractFigure
addFigureListener, addNotify, changed, findFigureInside, fireAreaInvalidated, fireFigureChanged, getActions, getConnectors, getCursor, getDecomposition, getEndPoint, getLayer, getPreferredSize, getStartPoint, getTool, getToolTipText, handleDrop, handleMouseClick, includes, isConnectable, isRemovable, isSelectable, isTransformable, isVisible, remap, removeFigureListener, removeNotify, requestRemove, setBounds, setConnectable, setRemovable, setSelectable, setTransformable, setVisible, toString, willChange
-
Methods inherited from class org.jhotdraw.beans.AbstractBean
addPropertyChangeListener, addPropertyChangeListener, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.jhotdraw.draw.Figure
addPropertyChangeListener, removePropertyChangeListener
-
-
-
-
Field Detail
-
ARC_WIDTH_PROPERTY
public static final java.lang.String ARC_WIDTH_PROPERTY
Identifies thearcWidthJavaBeans property.- See Also:
- Constant Field Values
-
ARC_HEIGHT_PROPERTY
public static final java.lang.String ARC_HEIGHT_PROPERTY
Identifies thearcHeightJavaBeans property.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
RoundRectangleFigure
public RoundRectangleFigure()
Creates a new instance.
-
RoundRectangleFigure
public RoundRectangleFigure(double x, double y, double width, double height)
-
-
Method Detail
-
getBounds
public java.awt.geom.Rectangle2D.Double getBounds()
Description copied from interface:FigureReturns the untransformed logical bounds of the figure as a Rectangle.The bounds are used by Handle objects for adjusting the figure and for aligning the figure on a grid.
-
getDrawingArea
public java.awt.geom.Rectangle2D.Double getDrawingArea()
Description copied from interface:FigureReturns the drawing area of the figure as a Rectangle.The drawing area is used to inform
DrawingViewabout the area that is needed to draw this figure.The drawing area needs to be large enough, to take line width, line caps and other decorations into account that exceed the bounds of the Figure.
- Specified by:
getDrawingAreain interfaceFigure- Overrides:
getDrawingAreain classAbstractAttributedFigure
-
getArcWidth
public double getArcWidth()
Gets the arc width.
-
getArcHeight
public double getArcHeight()
Gets the arc height.
-
setArcWidth
public void setArcWidth(double newValue)
Sets the arc width.
-
setArcHeight
public void setArcHeight(double newValue)
Sets the arc height.
-
setArc
public void setArc(double width, double height)Convenience method for setting both the arc width and the arc height.
-
contains
public boolean contains(java.awt.geom.Point2D.Double p)
Checks if a Point2D.Double is inside the figure.
-
setBounds
public void setBounds(java.awt.geom.Point2D.Double anchor, java.awt.geom.Point2D.Double lead)Description copied from interface:FigureSets the logical and untransformed bounds of the figure.This is used by Tool's which create a new Figure and by Tool's which connect a Figure to another Figure.
This is a basic operation which does not fire events. Use the following code sequence, if you need event firing:
figure.willChange(); figure.setBounds(...); figure.changed();
- Specified by:
setBoundsin interfaceFigure- Overrides:
setBoundsin classAbstractFigure- Parameters:
anchor- the start point of the boundslead- the end point of the bounds- See Also:
Figure.getBounds()
-
transform
public void transform(java.awt.geom.AffineTransform tx)
Transforms the figure.- Parameters:
tx- The transformation.- See Also:
Figure.getTransformRestoreData(),Figure.restoreTransformTo(java.lang.Object)
-
createHandles
public java.util.Collection<Handle> createHandles(int detailLevel)
Description copied from interface:FigureCreates handles used to manipulate the figure.- Specified by:
createHandlesin interfaceFigure- Overrides:
createHandlesin classAbstractFigure- Parameters:
detailLevel- The detail level of the handles. Usually this is 0 for bounding box handles and 1 for point handles. The value -1 is used by the SelectAreaTracker and the HandleTracker to highlight figures, over which the mouse pointer is hovering.- Returns:
- a Collection of handles
- See Also:
Handle
-
restoreTransformTo
public void restoreTransformTo(java.lang.Object geometry)
Description copied from interface:FigureRestores the transform of the figure to a previously stored state.
-
getTransformRestoreData
public java.lang.Object getTransformRestoreData()
Description copied from interface:FigureGets data which can be used to restore the transformation of the figure without loss of precision, after a transform has been applied to it.- See Also:
Figure.transform(AffineTransform)
-
findConnector
public Connector findConnector(java.awt.geom.Point2D.Double p, ConnectionFigure prototype)
Description copied from class:AbstractFigureReturns the Figures connector for the specified location. By default a ChopBoxConnector is returned.- Specified by:
findConnectorin interfaceFigure- Overrides:
findConnectorin classAbstractFigure- Parameters:
p- the location of the connector.prototype- The prototype used to create a connection or null if unknown. This allows for specific connectors for different connection figures.- See Also:
ChopRectangleConnector
-
findCompatibleConnector
public Connector findCompatibleConnector(Connector c, boolean isStartConnector)
Description copied from interface:FigureGets a compatible connector. If the provided connector is part of this figure, return the connector. If the provided connector is part of another figure, return a connector with the same semantics for this figure. Returns null, if no compatible connector is available.- Specified by:
findCompatibleConnectorin interfaceFigure- Overrides:
findCompatibleConnectorin classAbstractFigure
-
clone
public RoundRectangleFigure clone()
Description copied from interface:FigureReturns a clone of the figure, with clones of all aggregated figures, such as children and decorators. The cloned figure does not clone the list of FigureListeners from its original.- Specified by:
clonein interfaceFigure- Overrides:
clonein classAbstractAttributedFigure
-
read
public void read(DOMInput in) throws java.io.IOException
- Specified by:
readin interfaceDOMStorable- Overrides:
readin classAbstractAttributedFigure- Throws:
java.io.IOException
-
write
public void write(DOMOutput out) throws java.io.IOException
- Specified by:
writein interfaceDOMStorable- Overrides:
writein classAbstractAttributedFigure- Throws:
java.io.IOException
-
-
DataMelt 3.0 © DataMelt by jWork.ORG