org.jfree.chart.plot.dial

## Class AbstractDialLayer

- java.lang.Object
- - org.jfree.chart.plot.dial.AbstractDialLayer

All Implemented Interfaces:
  DialLayer

Direct Known Subclasses:
  ArcDialFrame, DialBackground, DialCap, DialPointer, DialTextAnnotation, DialValueIndicator, StandardDialFrame, StandardDialRange, StandardDialScale

    public abstract class AbstractDialLayer
    extends java.lang.Object
    implements DialLayer

A base class that can be used to implement a `DialLayer`. It includes an event notification mechanism.

Since:
  1.0.7

### Constructor Summary

Constructors
`protected` `AbstractDialLayer()` Creates a new instance.

### Method Summary

Methods
`void` `addChangeListener(DialLayerChangeListener listener)` Registers an object for notification of changes to the dial layer.
`java.lang.Object` `clone()` Returns a clone of this instance.
`boolean` `equals(java.lang.Object obj)` Tests this instance for equality with an arbitrary object.
`int` `hashCode()` Returns a hash code for this instance.
`boolean` `hasListener(java.util.EventListener listener)` Returns `true` if the specified object is registered with the dataset as a listener.
`boolean` `isVisible()` Returns `true` if this layer is visible (should be displayed), and `false` otherwise.
`protected void` `notifyListeners(DialLayerChangeEvent event)` Notifies all registered listeners that the dial layer has changed.
`void` `removeChangeListener(DialLayerChangeListener listener)` Deregisters an object for notification of changes to the dial layer.
`void` `setVisible(boolean visible)` Sets the flag that determines whether or not this layer is drawn by the plot, and sends a `DialLayerChangeEvent` to all registered listeners.

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.jfree.chart.plot.dial.DialLayer

`draw, isClippedToWindow`

### Constructor Detail

#### AbstractDialLayer

    protected AbstractDialLayer()

Creates a new instance.

### Method Detail

#### isVisible

    public boolean isVisible()

Returns `true` if this layer is visible (should be displayed), and `false` otherwise.

Specified by:
  `isVisible` in interface `DialLayer`
Returns:
  A boolean.
See Also:
  `setVisible(boolean)`

#### setVisible

    public void setVisible(boolean visible)

Sets the flag that determines whether or not this layer is drawn by the plot, and sends a `DialLayerChangeEvent` to all registered listeners.

Parameters:
  `visible` - the flag.
See Also:
  `isVisible()`

#### equals

    public boolean equals(java.lang.Object obj)

Tests this instance for equality with an arbitrary object.

Overrides:
  `equals` in class `java.lang.Object`
Parameters:
  `obj` - the object (`null` permitted).
Returns:
  A boolean.

#### hashCode

    public int hashCode()

Returns a hash code for this instance.

Overrides:
  `hashCode` in class `java.lang.Object`
Returns:
  A hash code.

#### clone

    public java.lang.Object clone()
                           throws java.lang.CloneNotSupportedException

Returns a clone of this instance.

Overrides:
  `clone` in class `java.lang.Object`
Returns:
  A clone.
Throws:
  `java.lang.CloneNotSupportedException` - if there is a problem cloning this instance.

#### addChangeListener

    public void addChangeListener(DialLayerChangeListener listener)

Registers an object for notification of changes to the dial layer.

Specified by:
  `addChangeListener` in interface `DialLayer`
Parameters:
  `listener` - the object that is being registered.
See Also:
  `removeChangeListener(DialLayerChangeListener)`

#### removeChangeListener

    public void removeChangeListener(DialLayerChangeListener listener)

Deregisters an object for notification of changes to the dial layer.

Specified by:
  `removeChangeListener` in interface `DialLayer`
Parameters:
  `listener` - the object to deregister.
See Also:
  `addChangeListener(DialLayerChangeListener)`

#### hasListener

    public boolean hasListener(java.util.EventListener listener)

Returns `true` if the specified object is registered with the dataset as a listener. Most applications won't need to call this method, it exists mainly for use by unit testing code.

Specified by:
  `hasListener` in interface `DialLayer`
Parameters:
  `listener` - the listener.
Returns:
  A boolean.

#### notifyListeners

    protected void notifyListeners(DialLayerChangeEvent event)

Notifies all registered listeners that the dial layer has changed. The `DialLayerChangeEvent` provides information about the change.

Parameters:
  `event` - information about the change to the axis.