## 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
`protected` `AbstractDialLayer()` Creates a new instance.

Method Summary
`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.