Class Annotation
java.lang.Object
org.eclipse.draw2d.Figure
org.eclipse.nebula.visualization.xygraph.figures.Annotation
- All Implemented Interfaces:
org.eclipse.draw2d.IFigure
,IDataProviderListener
,IAxisListener
- Direct Known Subclasses:
CircleAnnotation
,CrossAnnotation
public class Annotation extends org.eclipse.draw2d.Figure implements IAxisListener, IDataProviderListener
Annotation Figure. Annotation could be used to indicate the information for a
particular point.
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Annotation.CursorLineStyle
(package private) class
Annotation.InfoLabelDragger
(package private) class
Annotation.Pointer
-
Field Summary
Fields Modifier and Type Field Description protected ISample
currentSnappedSample
protected boolean
pointerDragged
protected Trace
trace
protected Axis
xAxis
protected double
xValue
protected Axis
yAxis
protected double
yValue
-
Constructor Summary
Constructors Constructor Description Annotation(java.lang.String name, Axis xAxis, Axis yAxis)
Construct a free annotation.Annotation(java.lang.String name, Trace trace)
Construct an annotation on a trace. -
Method Summary
Modifier and Type Method Description void
addAnnotationListener(IAnnotationListener listener)
void
axisAutoScaleChanged(Axis axis, boolean oldAutoScale, boolean newAutoScale)
void
axisForegroundColorChanged(Axis axis, org.eclipse.swt.graphics.Color oldColor, org.eclipse.swt.graphics.Color newColor)
void
axisLogScaleChanged(Axis axis, boolean old, boolean logScale)
void
axisRangeChanged(Axis axis, Range old_range, Range new_range)
This event indicates a change in the axis' value rangevoid
axisRevalidated(Axis axis)
This method will be notified by axis whenever the axis is revalidated.void
axisTitleChanged(Axis axis, java.lang.String oldTitle, java.lang.String newTitle)
boolean
containsPoint(int x, int y)
void
dataChanged(IDataProvider dataProvider)
This method will be notified by data provider whenever the data changed in data providerorg.eclipse.swt.graphics.Color
getAnnotationColor()
org.eclipse.swt.graphics.RGB
getAnnotationColorRGB()
org.eclipse.swt.graphics.Font
getAnnotationFont()
Annotation.CursorLineStyle
getCursorLineStyle()
org.eclipse.swt.graphics.FontData
getFontData()
IAnnotationLabelProvider
getLabelProvider()
java.lang.String
getName()
Trace
getTrace()
Axis
getXAxis()
double
getXValue()
Axis
getYAxis()
double
getYValue()
boolean
isFree()
boolean
isShowName()
boolean
isShowPosition()
boolean
isShowSampleInfo()
protected void
layout()
protected void
paintFigure(org.eclipse.draw2d.Graphics graphics)
void
remove()
void
setAnnotationColor(org.eclipse.swt.graphics.Color annotationColor)
void
setAnnotationFont(org.eclipse.swt.graphics.Font annotationFont)
void
setCurrentPosition(org.eclipse.draw2d.geometry.Point currentPosition, boolean keepLabelPosition)
void
setCurrentPosition(org.eclipse.draw2d.geometry.Point currentPosition, boolean keepLabelPosition, boolean calcValueFromPosition)
void
setCurrentSnappedSample(ISample currentSnappedSample, boolean keepLabelPosition)
void
setCursorLineStyle(Annotation.CursorLineStyle cursorLineStyle)
void
setdxdy(double dx, double dy)
void
setFont(org.eclipse.swt.graphics.Font f)
void
setFree(Axis xAxis, Axis yAxis)
Make the annotation free.void
setLabelProvider(IAnnotationLabelProvider labelProvider)
void
setLocation(double x, double y)
Sets x an y location.void
setName(java.lang.String name)
void
setShowName(boolean showName)
void
setShowPosition(boolean showPosition)
void
setShowSampleInfo(boolean showSampleInfo)
void
setTrace(Trace trace)
void
setValues(double x, double y)
Set the position of the annotation based on plot valuesvoid
setXAxis(Axis axis)
void
setXYGraph(IXYGraph xyGraph)
void
setYAxis(Axis axis)
void
toFront()
Sets annotation order to frontprotected void
updateToDefaultPosition()
move the annotation to the center of the plot area or trace.void
updateX0Y0Fromdxdy(org.eclipse.draw2d.geometry.Dimension size)
update (x0, y0) if it is unknown.Methods inherited from class org.eclipse.draw2d.Figure
add, add, add, add, addAncestorListener, addCoordinateListener, addFigureListener, addFocusListener, addKeyListener, addLayoutListener, addListener, addMouseListener, addMouseMotionListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, containsPoint, erase, findDescendantAtExcluding, findFigureAt, findFigureAt, findFigureAt, findFigureAtExcluding, findMouseEventTargetAt, findMouseEventTargetInDescendantsAt, fireCoordinateSystemChanged, fireFigureMoved, fireMoved, firePropertyChange, firePropertyChange, firePropertyChange, getBackgroundColor, getBorder, getBounds, getChildren, getClientArea, getClientArea, getClippingStrategy, getCursor, getFlag, getFont, getForegroundColor, getInsets, getLayoutManager, getListeners, getLocalBackgroundColor, getLocalFont, getLocalForegroundColor, getLocation, getMaximumSize, getMinimumSize, getMinimumSize, getParent, getPreferredSize, getPreferredSize, getSize, getToolTip, getUpdateManager, handleFocusGained, handleFocusLost, handleKeyPressed, handleKeyReleased, handleMouseDoubleClicked, handleMouseDragged, handleMouseEntered, handleMouseExited, handleMouseHover, handleMouseMoved, handleMousePressed, handleMouseReleased, hasFocus, internalGetEventDispatcher, intersects, invalidate, invalidateTree, isCoordinateSystem, isEnabled, isFocusTraversable, isMirrored, isMouseEventTarget, isOpaque, isRequestFocusEnabled, isShowing, isValid, isValidationRoot, isVisible, paint, paintBorder, paintChildren, paintClientArea, primTranslate, remove, removeAll, removeAncestorListener, removeCoordinateListener, removeFigureListener, removeFocusListener, removeKeyListener, removeLayoutListener, removeListener, removeMouseListener, removeMouseMotionListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, revalidate, setBackgroundColor, setBorder, setBounds, setChildrenDirection, setChildrenEnabled, setChildrenOrientation, setClippingStrategy, setConstraint, setCursor, setEnabled, setFlag, setFocusTraversable, setForegroundColor, setLayoutManager, setLocation, setMaximumSize, setMinimumSize, setOpaque, setParent, setPreferredSize, setPreferredSize, setRequestFocusEnabled, setSize, setSize, setToolTip, setValid, setVisible, translate, translateFromParent, translateToAbsolute, translateToParent, translateToRelative, useLocalCoordinates, validate
-
Field Details
-
xAxis
-
yAxis
-
xValue
protected double xValue -
yValue
protected double yValue -
trace
-
currentSnappedSample
-
pointerDragged
protected boolean pointerDragged
-
-
Constructor Details
-
Annotation
Construct an annotation on a trace.- Parameters:
name
- the name of the annotation.trace
- the trace which the annotation will snap to.
-
Annotation
Construct a free annotation.- Parameters:
xAxis
- the xAxis of the annotation.yAxis
- the yAxis of the annotation.name
- the name of the annotation.
-
-
Method Details
-
remove
public void remove() -
addAnnotationListener
-
containsPoint
public boolean containsPoint(int x, int y)- Specified by:
containsPoint
in interfaceorg.eclipse.draw2d.IFigure
- Overrides:
containsPoint
in classorg.eclipse.draw2d.Figure
-
layout
protected void layout()- Overrides:
layout
in classorg.eclipse.draw2d.Figure
-
paintFigure
protected void paintFigure(org.eclipse.draw2d.Graphics graphics)- Overrides:
paintFigure
in classorg.eclipse.draw2d.Figure
-
updateX0Y0Fromdxdy
public void updateX0Y0Fromdxdy(org.eclipse.draw2d.geometry.Dimension size)update (x0, y0) if it is unknown.- Parameters:
size
- the label size
-
updateToDefaultPosition
protected void updateToDefaultPosition()move the annotation to the center of the plot area or trace. -
setValues
public void setValues(double x, double y)Set the position of the annotation based on plot values- Parameters:
x
- Position as value on the X axisy
- Position as value on the Y axis- See Also:
for setting the position based on screen coordinates
-
setXAxis
- Parameters:
axis
- the xAxis to set
-
setYAxis
- Parameters:
axis
- the yAxis to set
-
setName
public void setName(java.lang.String name)- Parameters:
name
- the name to set
-
setFont
public void setFont(org.eclipse.swt.graphics.Font f)- Specified by:
setFont
in interfaceorg.eclipse.draw2d.IFigure
- Overrides:
setFont
in classorg.eclipse.draw2d.Figure
-
getFontData
public org.eclipse.swt.graphics.FontData getFontData() -
setTrace
- Parameters:
trace
- the trace to set
-
setFree
Make the annotation free.- Parameters:
xAxis
-yAxis
-
-
isFree
public boolean isFree()- Returns:
- true if the annotation is free.
-
setShowName
public void setShowName(boolean showName)- Parameters:
showName
- the showName to set
-
setShowSampleInfo
public void setShowSampleInfo(boolean showSampleInfo)- Parameters:
showSampleInfo
- the showSampleInfo to set
-
setShowPosition
public void setShowPosition(boolean showPosition)- Parameters:
showPosition
- the showPosition to set
-
setAnnotationColor
public void setAnnotationColor(org.eclipse.swt.graphics.Color annotationColor)- Parameters:
annotationColor
- the annotationColor to set
-
setAnnotationFont
public void setAnnotationFont(org.eclipse.swt.graphics.Font annotationFont)- Parameters:
annotationFont
- the annotationFont to set
-
getAnnotationFont
public org.eclipse.swt.graphics.Font getAnnotationFont()- Returns:
- annotation font
-
setCursorLineStyle
- Parameters:
cursorLineStyle
- the cursorLineStyle to set
-
setCurrentPosition
public void setCurrentPosition(org.eclipse.draw2d.geometry.Point currentPosition, boolean keepLabelPosition, boolean calcValueFromPosition)- Parameters:
currentPosition
- the currentPosition to set
-
setCurrentPosition
public void setCurrentPosition(org.eclipse.draw2d.geometry.Point currentPosition, boolean keepLabelPosition) -
setCurrentSnappedSample
- Parameters:
currentSnappedSample
- the currentSnappedSample to setkeepLabelPosition
-
-
axisRevalidated
Description copied from interface:IAxisListener
This method will be notified by axis whenever the axis is revalidated.- Specified by:
axisRevalidated
in interfaceIAxisListener
-
axisRangeChanged
Description copied from interface:IAxisListener
This event indicates a change in the axis' value range- Specified by:
axisRangeChanged
in interfaceIAxisListener
-
dataChanged
Description copied from interface:IDataProviderListener
This method will be notified by data provider whenever the data changed in data provider- Specified by:
dataChanged
in interfaceIDataProviderListener
-
setXYGraph
- Parameters:
xyGraph
- the xyGraph to set
-
setdxdy
public void setdxdy(double dx, double dy) -
setLocation
public void setLocation(double x, double y)Sets x an y location.- Parameters:
x
-y
-
-
getXAxis
- Returns:
- the xAxis
-
getYAxis
- Returns:
- the yAxis
-
getName
public java.lang.String getName()- Returns:
- the name
-
getXValue
public double getXValue()- Returns:
- X value, i.e. value of this annotation on the X Axis
-
getYValue
public double getYValue()- Returns:
- Y value, i.e. value of this annotation on the Y Axis
-
getCursorLineStyle
- Returns:
- the cursorLineStyle
-
getTrace
- Returns:
- the trace
-
isShowName
public boolean isShowName()- Returns:
- the showName
-
isShowSampleInfo
public boolean isShowSampleInfo()- Returns:
- the showSampleInfo
-
isShowPosition
public boolean isShowPosition()- Returns:
- the showPosition
-
getAnnotationColor
public org.eclipse.swt.graphics.Color getAnnotationColor()- Returns:
- the annotationColor
-
getLabelProvider
-
setLabelProvider
-
axisForegroundColorChanged
public void axisForegroundColorChanged(Axis axis, org.eclipse.swt.graphics.Color oldColor, org.eclipse.swt.graphics.Color newColor)- Specified by:
axisForegroundColorChanged
in interfaceIAxisListener
-
axisTitleChanged
- Specified by:
axisTitleChanged
in interfaceIAxisListener
-
axisAutoScaleChanged
- Specified by:
axisAutoScaleChanged
in interfaceIAxisListener
-
axisLogScaleChanged
- Specified by:
axisLogScaleChanged
in interfaceIAxisListener
-
getAnnotationColorRGB
public org.eclipse.swt.graphics.RGB getAnnotationColorRGB() -
toFront
public void toFront()Sets annotation order to front
-