CH.ifa.draw.framework
Interface ConnectionFigure
-
- All Superinterfaces:
- java.lang.Cloneable, java.util.EventListener, Figure, FigureChangeListener, java.io.Serializable, Storable
- All Known Implementing Classes:
- ChartHandleConnection, DesiredLayerConnection, ElbowConnection, ErrorLayerConnection, InputLayerConnection, InputPluginConnection, LayerConnection, LineConnection, OutputPluginConnection, PertDependency, ValidationLayerConnection
public interface ConnectionFigure extends Figure, FigureChangeListener
Figures to connect Connectors provided by Figures. A ConnectionFigure knows its start and end Connector. It uses the Connectors to locate its connection points.A ConnectionFigure can have multiple segments. It provides operations to split and join segments.
Design Patterns
Strategy
Strategy is used encapsulate the algorithm to locate the connection point. ConnectionFigure is the Strategy context and Connector is the Strategy.
Observer
Observer is used to track changes of the connected figures. A connection figure registers itself as listeners or observers of the source and target connector.- See Also:
Connector
-
-
Field Summary
-
Fields inherited from interface CH.ifa.draw.framework.Figure
POPUP_MENU
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description booleancanConnect(Figure start, Figure end)Checks if two figures can be connected.voidconnectEnd(Connector end)Sets the end Connector of the connection.booleanconnectsSame(ConnectionFigure other)Checks if the ConnectionFigure connects the same figures.voidconnectStart(Connector start)Sets the start Connector of the connection.voiddisconnectEnd()Disconnects the end figure from the dependent figurevoiddisconnectStart()Disconnects the start figure from the dependent figureConnectorend()Gets the end Connector.java.awt.PointendPoint()Gets the end point.voidendPoint(int x, int y)Sets the end point.booleanjoinSegments(int x, int y)Joins the hit segments.java.awt.PointpointAt(int index)Gets the Point at the given positionintpointCount()Gets the number of points or nodes of the connectionvoidsetPointAt(java.awt.Point p, int index)Sets the position of the point at the given positionintsplitSegment(int x, int y)Splits the hit segment.Connectorstart()Gets the start Connectorjava.awt.PointstartPoint()Gets the start point.voidstartPoint(int x, int y)Sets the start point.voidupdateConnection()Updates the connection-
Methods inherited from interface CH.ifa.draw.framework.Figure
addFigureChangeListener, addToContainer, basicDisplayBox, canConnect, center, changed, clone, connectedTextLocator, connectionInsets, connectorAt, connectorVisibility, containsPoint, decompose, displayBox, displayBox, displayBox, draw, figures, findFigureInside, getAttribute, handles, includes, invalidate, isEmpty, listener, moveBy, release, removeFigureChangeListener, removeFromContainer, setAttribute, size, willChange
-
Methods inherited from interface CH.ifa.draw.framework.FigureChangeListener
figureChanged, figureInvalidated, figureRemoved, figureRequestRemove, figureRequestUpdate
-
-
-
-
Method Detail
-
connectStart
void connectStart(Connector start)
Sets the start Connector of the connection.- Parameters:
figure- the start figure of the connection
-
connectEnd
void connectEnd(Connector end)
Sets the end Connector of the connection.- Parameters:
figure- the end figure of the connection
-
updateConnection
void updateConnection()
Updates the connection
-
disconnectStart
void disconnectStart()
Disconnects the start figure from the dependent figure
-
disconnectEnd
void disconnectEnd()
Disconnects the end figure from the dependent figure
-
start
Connector start()
Gets the start Connector
-
end
Connector end()
Gets the end Connector.
-
canConnect
boolean canConnect(Figure start, Figure end)
Checks if two figures can be connected. Implement this method to constrain the allowed connections between figures.
-
connectsSame
boolean connectsSame(ConnectionFigure other)
Checks if the ConnectionFigure connects the same figures.
-
startPoint
void startPoint(int x, int y)Sets the start point.
-
endPoint
void endPoint(int x, int y)Sets the end point.
-
startPoint
java.awt.Point startPoint()
Gets the start point.
-
endPoint
java.awt.Point endPoint()
Gets the end point.
-
setPointAt
void setPointAt(java.awt.Point p, int index)Sets the position of the point at the given position
-
pointAt
java.awt.Point pointAt(int index)
Gets the Point at the given position
-
pointCount
int pointCount()
Gets the number of points or nodes of the connection
-
splitSegment
int splitSegment(int x, int y)Splits the hit segment.- Parameters:
x,- y the position where the figure should be split- Returns:
- the index of the splitting point
-
joinSegments
boolean joinSegments(int x, int y)Joins the hit segments.- Parameters:
x,- y the position where the figure should be joined.- Returns:
- whether the segment was joined
-
-
DataMelt 3.0 © DataMelt by jWork.ORG