## org.jfree.chart.plot.dial
Interface DialLayer

All Known Subinterfaces:
  DialFrame, DialScale

All Known Implementing Classes:
  AbstractDialLayer, ArcDialFrame, DialBackground, DialCap, DialPointer, DialPointer.Pin, DialPointer.Pointer, DialTextAnnotation, DialValueIndicator, StandardDialFrame, StandardDialRange, StandardDialScale

    public interface DialLayer

A dial layer draws itself within a reference frame. The view frame is a subset of the reference frame, and defines the area that is actually visible.
Classes that implement this interface should be `Serializable`, otherwise chart serialization may fail.

Since:
  1.0.7

Method Summary
`void` `addChangeListener(DialLayerChangeListener listener)` Registers a listener with this layer, so that it receives notification of changes to this layer.
`void` `draw(java.awt.Graphics2D g2, DialPlot plot, java.awt.geom.Rectangle2D frame, java.awt.geom.Rectangle2D view)` Draws the content of this layer.
`boolean` `hasListener(java.util.EventListener listener)` Returns `true` if the specified listener is currently registered with the this layer.
`boolean` `isClippedToWindow()` Returns `true` if the drawing should be clipped to the dial window (which is defined by the `DialFrame`), and `false` otherwise.
`boolean` `isVisible()` Returns a flag that indicates whether or not the layer is visible.
`void` `removeChangeListener(DialLayerChangeListener listener)` Deregisters a listener, so that it no longer receives notification of changes to this layer.

Method Detail

### isVisible

    boolean isVisible()

  Returns a flag that indicates whether or not the layer is visible.

  Returns:
    A boolean.

### addChangeListener

    void addChangeListener(DialLayerChangeListener listener)

  Registers a listener with this layer, so that it receives notification of changes to this layer.

  Parameters:
    `listener` - the listener.

### removeChangeListener

    void removeChangeListener(DialLayerChangeListener listener)

  Deregisters a listener, so that it no longer receives notification of changes to this layer.

  Parameters:
    `listener` - the listener.

### hasListener

    boolean hasListener(java.util.EventListener listener)

  Returns `true` if the specified listener is currently registered with the this layer.

  Parameters:
    `listener` - the listener.
  Returns:
    A boolean.

### isClippedToWindow

    boolean isClippedToWindow()

  Returns `true` if the drawing should be clipped to the dial window (which is defined by the `DialFrame`), and `false` otherwise.

  Returns:
    A boolean.

### draw

    void draw(java.awt.Graphics2D g2,
              DialPlot plot,
              java.awt.geom.Rectangle2D frame,
              java.awt.geom.Rectangle2D view)

  Draws the content of this layer.

  Parameters:
    `g2` - the graphics target (`null` not permitted).
    `plot` - the plot (typically this should not be `null`, but for a layer that doesn't need to reference the plot, it may be permitted).
    `frame` - the reference frame for the dial's geometry (`null` not permitted). This is typically larger than the visible area of the dial (see the next parameter).
    `view` - the visible area for the dial (`null` not permitted).