Module com.flexganttfx.view
Class LinkRenderer<T extends ActivityLink<?>>
- java.lang.Object
-
- com.flexganttfx.view.graphics.renderer.RendererBase
-
- com.flexganttfx.view.graphics.renderer.LinkRenderer<T>
-
- Direct Known Subclasses:
CurvedLinkRenderer
,StraightLinkRenderer
public abstract class LinkRenderer<T extends ActivityLink<?>> extends RendererBase
The base class for all link renderers. It is only used by theLinksCanvas
.- Since:
- 1.0
- See Also:
CurvedLinkRenderer
,StraightLinkRenderer
,GraphicsBase.setLinkRenderer(Class, LinkRenderer)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
LinkRenderer.ArrowDirection
An enum listing the various directions the arrow can be painted.static class
LinkRenderer.TargetLocation
An enumerator of possible locations that the target object can have relative to the source object.
-
Constructor Summary
Constructors Modifier Constructor Description protected
LinkRenderer(GraphicsBase<?> graphics, String name)
Constructs a new link renderer.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description ObjectProperty<Color>
arrowHeadColorProperty()
IntegerProperty
arrowSizeProperty()
The arrow size determines how big the arrow head will be drawn.protected LinkRenderer.TargetLocation
calculateTargetLocation(double sx, double sy, double tx, double ty)
void
draw(T link, GraphicsContext gc, Rectangle2D sourceBounds, Rectangle2D targetBounds)
Draws the given link between the two activity bounds into the given graphics context.protected void
drawArrowHead(LinkRenderer.ArrowDirection direction, GraphicsContext gc, double x, double y)
protected abstract void
drawEndToEnd(GraphicsContext gc, Rectangle2D sourceRect, Rectangle2D targetRect)
Draws a path in the given graphics context from the end of the source rectangle to the end of the target rectangle.protected abstract void
drawEndToStart(GraphicsContext gc, Rectangle2D sourceRect, Rectangle2D targetRect)
Draws a path in the given graphics context from the end of the source rectangle to the start of the target rectangle.protected abstract void
drawStartToEnd(GraphicsContext gc, Rectangle2D sourceRect, Rectangle2D targetRect)
Draws a path in the given graphics context from the start of the source rectangle to the end of the target rectangle.protected abstract void
drawStartToStart(GraphicsContext gc, Rectangle2D sourceRect, Rectangle2D targetRect)
Draws a path in the given graphics context from the start of the source rectangle to the start of the target rectangle.DoubleProperty
gapProperty()
The gap determines how far the line is drawn away from the bounds of the source or target timeline object.Color
getArrowHeadColor()
int
getArrowSize()
double
getGap()
The gap determines how far the line is drawn away from the bounds of the source or target timeline object.double
getOffset()
The offset determines the end location of the first segment of the calculated path.Color
getStrokeColor()
double
getStrokeWidth()
DoubleProperty
offsetProperty()
The offset determines the end location of the first segment of the calculated path.void
setArrowHeadColor(Color arrowHeadColor)
void
setArrowSize(int arrowSize)
void
setGap(double gap)
The gap determines how far the line is drawn away from the bounds of the source or target timeline object.void
setOffset(double offset)
The offset determines the end location of the first segment of the calculated path.void
setStrokeColor(Color strokeColor)
void
setStrokeWidth(double strokeWidth)
ObjectProperty<Color>
strokeColorProperty()
DoubleProperty
strokeWidthProperty()
-
Methods inherited from class com.flexganttfx.view.graphics.renderer.RendererBase
alphaProperty, disableRedrawAfterPropertyChange, enabledProperty, enableRedrawAfterPropertyChange, getAlpha, getGraphics, getLocation, getName, getTimeAt, isEnabled, isSnapToPixel, redrawObservable, setAlpha, setEnabled, setSnapToPixel, snapPositionX, snapPositionY, snapSizeX, snapSizeY, snapSpaceX, snapSpaceY, snapToPixelProperty
-
-
-
-
Constructor Detail
-
LinkRenderer
protected LinkRenderer(GraphicsBase<?> graphics, String name)
Constructs a new link renderer.- Since:
- 1.0
-
-
Method Detail
-
calculateTargetLocation
protected final LinkRenderer.TargetLocation calculateTargetLocation(double sx, double sy, double tx, double ty)
-
draw
public void draw(T link, GraphicsContext gc, Rectangle2D sourceBounds, Rectangle2D targetBounds)
Draws the given link between the two activity bounds into the given graphics context.- Parameters:
link
- the link to drawgc
- the graphics contextsourceBounds
- the bounds of the source activitytargetBounds
- the bounds of the target activity
-
drawStartToStart
protected abstract void drawStartToStart(GraphicsContext gc, Rectangle2D sourceRect, Rectangle2D targetRect)
Draws a path in the given graphics context from the start of the source rectangle to the start of the target rectangle.- Parameters:
sourceRect
- the source rectangletargetRect
- the target rectangle- Since:
- 1.0
-
drawEndToEnd
protected abstract void drawEndToEnd(GraphicsContext gc, Rectangle2D sourceRect, Rectangle2D targetRect)
Draws a path in the given graphics context from the end of the source rectangle to the end of the target rectangle.- Parameters:
sourceRect
- the source rectangletargetRect
- the target rectangle- Since:
- 1.0
-
drawStartToEnd
protected abstract void drawStartToEnd(GraphicsContext gc, Rectangle2D sourceRect, Rectangle2D targetRect)
Draws a path in the given graphics context from the start of the source rectangle to the end of the target rectangle.- Parameters:
sourceRect
- the source rectangletargetRect
- the target rectangle- Since:
- 1.0
-
drawEndToStart
protected abstract void drawEndToStart(GraphicsContext gc, Rectangle2D sourceRect, Rectangle2D targetRect)
Draws a path in the given graphics context from the end of the source rectangle to the start of the target rectangle.- Parameters:
sourceRect
- the source rectangletargetRect
- the target rectangle- Since:
- 1.0
-
drawArrowHead
protected void drawArrowHead(LinkRenderer.ArrowDirection direction, GraphicsContext gc, double x, double y)
-
getStrokeWidth
public final double getStrokeWidth()
-
strokeWidthProperty
public final DoubleProperty strokeWidthProperty()
-
setStrokeWidth
public final void setStrokeWidth(double strokeWidth)
-
getStrokeColor
public final Color getStrokeColor()
-
strokeColorProperty
public final ObjectProperty<Color> strokeColorProperty()
-
setStrokeColor
public final void setStrokeColor(Color strokeColor)
-
getArrowHeadColor
public final Color getArrowHeadColor()
-
arrowHeadColorProperty
public final ObjectProperty<Color> arrowHeadColorProperty()
-
setArrowHeadColor
public final void setArrowHeadColor(Color arrowHeadColor)
-
arrowSizeProperty
public final IntegerProperty arrowSizeProperty()
The arrow size determines how big the arrow head will be drawn.- Returns:
- the arrow head size
-
getArrowSize
public final int getArrowSize()
-
setArrowSize
public final void setArrowSize(int arrowSize)
-
offsetProperty
public final DoubleProperty offsetProperty()
The offset determines the end location of the first segment of the calculated path. The first segment is used to move away from the start or end bounds before continuing to draw up or down.
-
getOffset
public final double getOffset()
The offset determines the end location of the first segment of the calculated path. The first segment is used to move away from the start or end bounds before continuing to draw up or down.- Returns:
- the offset
- Since:
- 1.0
-
setOffset
public final void setOffset(double offset)
The offset determines the end location of the first segment of the calculated path. The first segment is used to move away from the start or end bounds before continuing to draw up or down.- Parameters:
offset
- the offset in pixels- Since:
- 1.0
-
gapProperty
public DoubleProperty gapProperty()
The gap determines how far the line is drawn away from the bounds of the source or target timeline object.
-
getGap
public final double getGap()
The gap determines how far the line is drawn away from the bounds of the source or target timeline object.- Returns:
- the gap between line and timeline objects
- Since:
- 1.0
-
setGap
public final void setGap(double gap)
The gap determines how far the line is drawn away from the bounds of the source or target timeline object.- Parameters:
gap
- the distance between line and timeline objects- Since:
- 1.0
-
-