Class ODGPathFigure
- java.lang.Object
-
- org.jhotdraw.beans.AbstractBean
-
- org.jhotdraw.draw.AbstractFigure
-
- org.jhotdraw.draw.AbstractCompositeFigure
-
- org.jhotdraw.draw.AbstractAttributedCompositeFigure
-
- org.jhotdraw.samples.odg.figures.ODGPathFigure
-
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, CompositeFigure, Figure, ODGFigure, DOMStorable
public class ODGPathFigure extends AbstractAttributedCompositeFigure implements ODGFigure
ODGPath is a composite Figure which contains one or more ODGBezierFigures as its children.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from interface org.jhotdraw.draw.Figure
CONNECTABLE_PROPERTY, REMOVABLE_PROPERTY, SELECTABLE_PROPERTY, TRANSFORMABLE_PROPERTY
-
Fields inherited from interface org.jhotdraw.draw.CompositeFigure
LAYOUT_INSETS
-
-
Constructor Summary
Constructors Constructor and Description ODGPathFigure()Creates a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidadd(int index, Figure figure)Adds a child to the figure at the specified index.ODGPathFigureclone()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 point is contained by the figure.java.util.Collection<Handle>createHandles(int detailLevel)Creates handles used to manipulate the figure.voiddraw(java.awt.Graphics2D g)Draws the figure.voiddrawFigure(java.awt.Graphics2D g)voiddrawFill(java.awt.Graphics2D g)This method is called by method draw() to draw the fill area of the figure.voiddrawStroke(java.awt.Graphics2D g)This method is called by method draw() to draw the text of 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.voidflattenTransform()java.util.Collection<javax.swing.Action>getActions(java.awt.geom.Point2D.Double p)Returns a collection of actions which are presented to the user in a popup menu.ODGBezierFiguregetChild(int index)Returns the child figure at the specified index.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.booleanhandleMouseClick(java.awt.geom.Point2D.Double p, java.awt.event.MouseEvent evt, DrawingView view)Handles a mouse click.voidinvalidate()Invalidates cached data of the Figure.booleanisEmpty()Returns true, if this figure is empty for one of the following reasons: A group has no children A path has less than two points An ellipse or a rectangle has a width or a height of 0 A text has no charactersvoidrestoreTransformTo(java.lang.Object geometry)Restores the transform of the figure to a previously stored state.<T> voidset(AttributeKey<T> key, T newValue)Sets an attribute of the figure.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.-
Methods inherited from class org.jhotdraw.draw.AbstractAttributedCompositeFigure
get, getAttributes, getAttributesRestoreData, getFigureDrawBounds, getStroke, getStrokeMiterLimitFactor, hasAttribute, isAttributeEnabled, read, removeAttribute, restoreAttributesTo, setAttributeEnabled, setAttributes, write
-
Methods inherited from class org.jhotdraw.draw.AbstractCompositeFigure
add, addAll, addAll, addCompositeFigureListener, addNotify, basicAdd, basicAdd, basicAddAll, basicRemove, basicRemoveAll, basicRemoveAllChildren, basicRemoveChild, bringToFront, changed, contains, findChild, findChildIndex, findFigureInside, getBounds, getChildCount, getChildren, getChildrenFrontToBack, getDecomposition, getLayouter, getPreferredSize, indexOf, layout, remove, removeAll, removeAllChildren, removeChild, removeCompositeFigureListener, removeNotify, sendToBack, setLayouter, willChange
-
Methods inherited from class org.jhotdraw.draw.AbstractFigure
addFigureListener, fireAreaInvalidated, fireFigureChanged, getConnectors, getCursor, getEndPoint, getLayer, getStartPoint, getTool, getToolTipText, handleDrop, includes, isConnectable, isRemovable, isSelectable, isTransformable, isVisible, remap, removeFigureListener, requestRemove, setBounds, setConnectable, setRemovable, setSelectable, setTransformable, setVisible, toString
-
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
addFigureListener, addNotify, addPropertyChangeListener, changed, findFigureInside, get, getAttributes, getAttributesRestoreData, getBounds, getConnectors, getCursor, getDecomposition, getEndPoint, getLayer, getPreferredSize, getStartPoint, getTool, getToolTipText, handleDrop, includes, isConnectable, isRemovable, isSelectable, isTransformable, isVisible, remap, removeFigureListener, removeNotify, removePropertyChangeListener, requestRemove, restoreAttributesTo, willChange
-
-
-
-
Method Detail
-
draw
public void draw(java.awt.Graphics2D g)
Description copied from interface:FigureDraws the figure.- Specified by:
drawin interfaceFigure- Overrides:
drawin classAbstractCompositeFigure- Parameters:
g- The Graphics2D to draw to.
-
drawFigure
public void drawFigure(java.awt.Graphics2D g)
- Overrides:
drawFigurein classAbstractAttributedCompositeFigure
-
drawFill
public void drawFill(java.awt.Graphics2D g)
Description copied from class:AbstractAttributedCompositeFigureThis method is called by method draw() to draw the fill area of the figure. AttributedFigure configures the Graphics2D object with the FILL_COLOR attribute before calling this method. If the FILL_COLOR attribute is null, this method is not called.
-
drawStroke
public void drawStroke(java.awt.Graphics2D g)
Description copied from class:AbstractAttributedCompositeFigureThis method is called by method draw() to draw the text of the figure . AttributedFigure configures the Graphics2D object with the TEXT_COLOR attribute before calling this method. If the TEXT_COLOR attribute is null, this method is not called.
-
invalidate
public void invalidate()
Description copied from class:AbstractFigureInvalidates cached data of the Figure. This method must execute fast, because it can be called very often.
-
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 classAbstractCompositeFigure
-
contains
public boolean contains(java.awt.geom.Point2D.Double p)
Description copied from interface:FigureChecks if a point is contained by the figure.This is used for hit testing by Tool's.
- Specified by:
containsin interfaceFigure- Overrides:
containsin classAbstractCompositeFigure
-
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 classAbstractCompositeFigure- 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)
Description copied from class:AbstractCompositeFigureTransforms the figure.- Specified by:
transformin interfaceFigure- Overrides:
transformin classAbstractCompositeFigure- Parameters:
tx- The transformation.- See Also:
Figure.getTransformRestoreData(),Figure.restoreTransformTo(java.lang.Object)
-
restoreTransformTo
public void restoreTransformTo(java.lang.Object geometry)
Description copied from interface:FigureRestores the transform of the figure to a previously stored state.- Specified by:
restoreTransformToin interfaceFigure- Overrides:
restoreTransformToin classAbstractCompositeFigure
-
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.- Specified by:
getTransformRestoreDatain interfaceFigure- Overrides:
getTransformRestoreDatain classAbstractCompositeFigure- See Also:
Figure.transform(AffineTransform)
-
set
public <T> void set(AttributeKey<T> key, T newValue)
Description copied from class:AbstractAttributedCompositeFigureSets an attribute of the figure. AttributeKey name and semantics are defined by the class implementing the figure interface.- Specified by:
setin interfaceFigure- Overrides:
setin classAbstractAttributedCompositeFigure- See Also:
AttributeKey.set(org.jhotdraw.draw.Figure, T)
-
isEmpty
public boolean isEmpty()
Description copied from interface:ODGFigureReturns true, if this figure is empty for one of the following reasons:- A group has no children
- A path has less than two points
- An ellipse or a rectangle has a width or a height of 0
- A text has no characters
-
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 classAbstractCompositeFigure- 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
-
getActions
public java.util.Collection<javax.swing.Action> getActions(java.awt.geom.Point2D.Double p)
Description copied from class:AbstractFigureReturns a collection of actions which are presented to the user in a popup menu.The collection may contain null entries. These entries are used interpreted as separators in the popup menu.
- Specified by:
getActionsin interfaceFigure- Overrides:
getActionsin classAbstractFigure
-
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
-
handleMouseClick
public boolean handleMouseClick(java.awt.geom.Point2D.Double p, java.awt.event.MouseEvent evt, DrawingView view)Handles a mouse click.- Specified by:
handleMouseClickin interfaceFigure- Overrides:
handleMouseClickin classAbstractFigure- Parameters:
p- The location of the mouse event.evt- The mouse event.view- The drawing view which is the source of the mouse event.- Returns:
- Returns true, if the event was consumed.
-
add
public void add(int index, Figure figure)Description copied from interface:CompositeFigureAdds a child to the figure at the specified index.This method calls
figureAddedon all registeredCompositeFigureListeners.- Specified by:
addin interfaceCompositeFigure- Overrides:
addin classAbstractCompositeFigure
-
getChild
public ODGBezierFigure getChild(int index)
Description copied from interface:CompositeFigureReturns the child figure at the specified index.This is a convenience method for calling
getChildren().get(index);.- Specified by:
getChildin interfaceCompositeFigure- Overrides:
getChildin classAbstractCompositeFigure
-
clone
public ODGPathFigure 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 classAbstractAttributedCompositeFigure
-
flattenTransform
public void flattenTransform()
-
-
DataMelt 3.0 © DataMelt by jWork.ORG