Package org.jfree.chart.annotations
Class AbstractAnnotation
- java.lang.Object
-
- org.jfree.chart.annotations.AbstractAnnotation
-
- All Implemented Interfaces:
Serializable
,Cloneable
,Annotation
- Direct Known Subclasses:
AbstractXYAnnotation
,CategoryLineAnnotation
,TextAnnotation
public abstract class AbstractAnnotation extends Object implements Annotation, Cloneable, Serializable
An abstract implementation of theAnnotation
interface, containing a mechanism for registering change listeners.- Since:
- 1.0.14
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractAnnotation()
Constructs an annotation.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addChangeListener(AnnotationChangeListener listener)
Registers an object to receive notification of changes to the annotation.Object
clone()
Returns a clone of the annotation.protected void
fireAnnotationChanged()
Notifies all registered listeners that the annotation has changed.boolean
getNotify()
Returns a flag that indicates whether listeners should be notified about changes to the annotation.boolean
hasListener(EventListener listener)
Returnstrue
if the specified object is registered with the annotation as a listener.protected void
notifyListeners(AnnotationChangeEvent event)
Notifies all registered listeners that the annotation has changed.void
removeChangeListener(AnnotationChangeListener listener)
Deregisters an object so that it no longer receives notification of changes to the annotation.void
setNotify(boolean flag)
Sets a flag that indicates whether listeners should be notified about changes of an annotation.
-
-
-
Method Detail
-
addChangeListener
public void addChangeListener(AnnotationChangeListener listener)
Registers an object to receive notification of changes to the annotation.- Specified by:
addChangeListener
in interfaceAnnotation
- Parameters:
listener
- the object to register.- See Also:
removeChangeListener(AnnotationChangeListener)
-
removeChangeListener
public void removeChangeListener(AnnotationChangeListener listener)
Deregisters an object so that it no longer receives notification of changes to the annotation.- Specified by:
removeChangeListener
in interfaceAnnotation
- Parameters:
listener
- the object to deregister.- See Also:
addChangeListener(AnnotationChangeListener)
-
hasListener
public boolean hasListener(EventListener listener)
Returnstrue
if the specified object is registered with the annotation as a listener. Most applications won't need to call this method, it exists mainly for use by unit testing code.- Parameters:
listener
- the listener.- Returns:
- A boolean.
- See Also:
addChangeListener(AnnotationChangeListener)
,removeChangeListener(AnnotationChangeListener)
-
fireAnnotationChanged
protected void fireAnnotationChanged()
Notifies all registered listeners that the annotation has changed.
-
notifyListeners
protected void notifyListeners(AnnotationChangeEvent event)
Notifies all registered listeners that the annotation has changed.- Parameters:
event
- contains information about the event that triggered the notification.- See Also:
addChangeListener(AnnotationChangeListener)
,removeChangeListener(AnnotationChangeListener)
-
getNotify
public boolean getNotify()
Returns a flag that indicates whether listeners should be notified about changes to the annotation.- Returns:
- the flag.
- See Also:
setNotify(boolean)
-
setNotify
public void setNotify(boolean flag)
Sets a flag that indicates whether listeners should be notified about changes of an annotation.- Parameters:
flag
- the flag- See Also:
getNotify()
-
clone
public Object clone() throws CloneNotSupportedException
Returns a clone of the annotation. The cloned annotation will NOT include theAnnotationChangeListener
references that have been registered with this annotation.- Overrides:
clone
in classObject
- Returns:
- A clone.
- Throws:
CloneNotSupportedException
- if the annotation does not support cloning.
-
-