org.jfree.chart.title

## Class PaintScaleLegend

- java.lang.Object
- - org.jfree.chart.block.AbstractBlock
  - - org.jfree.chart.title.Title
    - - org.jfree.chart.title.PaintScaleLegend

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, java.util.EventListener, Block, AxisChangeListener, Drawable, PublicCloneable

      public class PaintScaleLegend
      extends Title
      implements AxisChangeListener, PublicCloneable

  A legend that shows a range of values and their associated colors, driven by an underlying `PaintScale` implementation.
  Since:
    1.0.4
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `(package private) static long` | `serialVersionUID` For serialization.

    - ### Fields inherited from class org.jfree.chart.title.Title

      `DEFAULT_HORIZONTAL_ALIGNMENT, DEFAULT_PADDING, DEFAULT_POSITION, DEFAULT_VERTICAL_ALIGNMENT, visible`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PaintScaleLegend(PaintScale scale, ValueAxis axis)` Creates a new instance.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Size2D` | `arrange(java.awt.Graphics2D g2, RectangleConstraint constraint)` Arranges the contents of the block, within the given constraints, and returns the block size.
    `protected Size2D` | `arrangeRR(java.awt.Graphics2D g2, Range widthRange, Range heightRange)` Returns the content size for the title.
    `void` | `axisChanged(AxisChangeEvent event)` Receives notification of an axis change event and responds by firing a title change event.
    `void` | `draw(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D area)` Draws the legend within the specified area.
    `java.lang.Object` | `draw(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D area, java.lang.Object params)` Draws the legend within the specified area.
    `boolean` | `equals(java.lang.Object obj)` Tests this legend for equality with an arbitrary object.
    `ValueAxis` | `getAxis()` Returns the axis for the paint scale.
    `AxisLocation` | `getAxisLocation()` Returns the axis location.
    `double` | `getAxisOffset()` Returns the offset between the axis and the paint strip.
    `java.awt.Paint` | `getBackgroundPaint()` Returns the background paint.
    `PaintScale` | `getScale()` Returns the scale used to convert values to colors.
    `java.awt.Paint` | `getStripOutlinePaint()` Returns the paint used to draw the outline of the paint strip.
    `java.awt.Stroke` | `getStripOutlineStroke()` Returns the stroke used to draw the outline around the paint strip.
    `double` | `getStripWidth()` Returns the width of the paint strip, in Java2D units.
    `int` | `getSubdivisionCount()` Returns the number of subdivisions used to draw the scale.
    `boolean` | `isStripOutlineVisible()` Returns the flag that controls whether or not an outline is drawn around the paint strip.
    `void` | `setAxis(ValueAxis axis)` Sets the axis for the paint scale and sends a `TitleChangeEvent` to all registered listeners.
    `void` | `setAxisLocation(AxisLocation location)` Sets the axis location and sends a `TitleChangeEvent` to all registered listeners.
    `void` | `setAxisOffset(double offset)` Sets the offset between the axis and the paint strip and sends a `TitleChangeEvent` to all registered listeners.
    `void` | `setBackgroundPaint(java.awt.Paint paint)` Sets the background paint and sends a `TitleChangeEvent` to all registered listeners.
    `void` | `setScale(PaintScale scale)` Sets the scale and sends a `TitleChangeEvent` to all registered listeners.
    `void` | `setStripOutlinePaint(java.awt.Paint paint)` Sets the paint used to draw the outline of the paint strip, and sends a `TitleChangeEvent` to all registered listeners.
    `void` | `setStripOutlineStroke(java.awt.Stroke stroke)` Sets the stroke used to draw the outline around the paint strip and sends a `TitleChangeEvent` to all registered listeners.
    `void` | `setStripOutlineVisible(boolean visible)` Sets the flag that controls whether or not an outline is drawn around the paint strip, and sends a `TitleChangeEvent` to all registered listeners.
    `void` | `setStripWidth(double width)` Sets the width of the paint strip and sends a `TitleChangeEvent` to all registered listeners.
    `void` | `setSubdivisionCount(int count)` Sets the subdivision count and sends a `TitleChangeEvent` to all registered listeners.

    - ### Methods inherited from class org.jfree.chart.title.Title

      `addChangeListener, clone, getHorizontalAlignment, getNotify, getPosition, getVerticalAlignment, hashCode, isVisible, notifyListeners, removeChangeListener, setHorizontalAlignment, setNotify, setPosition, setVerticalAlignment, setVisible`

    - ### Methods inherited from class org.jfree.chart.block.AbstractBlock

      `arrange, calculateTotalHeight, calculateTotalWidth, drawBorder, getBorder, getBounds, getContentXOffset, getContentYOffset, getFrame, getHeight, getID, getMargin, getPadding, getWidth, setBorder, setBorder, setBounds, setFrame, setHeight, setID, setMargin, setMargin, setPadding, setPadding, setWidth, toContentConstraint, trimBorder, trimMargin, trimPadding, trimToContentHeight, trimToContentWidth`

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

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

    - ### Methods inherited from interface org.jfree.util.PublicCloneable

      `clone`

    - ### Methods inherited from interface org.jfree.chart.block.Block

      `arrange, getBounds, getID, setBounds, setID`

- - ### Field Detail

    - #### serialVersionUID

          static final long serialVersionUID

      For serialization.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### PaintScaleLegend

          public PaintScaleLegend(PaintScale scale,
                                  ValueAxis axis)

      Creates a new instance.
      Parameters:
        `scale` - the scale (`null` not permitted).
        `axis` - the axis (`null` not permitted).

  - ### Method Detail

    - #### getScale

          public PaintScale getScale()

      Returns the scale used to convert values to colors.
      Returns:
        The scale (never `null`).
      See Also:
        `setScale(PaintScale)`

    - #### setScale

          public void setScale(PaintScale scale)

      Sets the scale and sends a `TitleChangeEvent` to all registered listeners.
      Parameters:
        `scale` - the scale (`null` not permitted).
      See Also:
        `getScale()`

    - #### getAxis

          public ValueAxis getAxis()

      Returns the axis for the paint scale.
      Returns:
        The axis (never `null`).
      See Also:
        `setAxis(ValueAxis)`

    - #### setAxis

          public void setAxis(ValueAxis axis)

      Sets the axis for the paint scale and sends a `TitleChangeEvent` to all registered listeners.
      Parameters:
        `axis` - the axis (`null` not permitted).
      See Also:
        `getAxis()`

    - #### getAxisLocation

          public AxisLocation getAxisLocation()

      Returns the axis location.
      Returns:
        The axis location (never `null`).
      See Also:
        `setAxisLocation(AxisLocation)`

    - #### setAxisLocation

          public void setAxisLocation(AxisLocation location)

      Sets the axis location and sends a `TitleChangeEvent` to all registered listeners.
      Parameters:
        `location` - the location (`null` not permitted).
      See Also:
        `getAxisLocation()`

    - #### getAxisOffset

          public double getAxisOffset()

      Returns the offset between the axis and the paint strip.
      Returns:
        The offset between the axis and the paint strip.
      See Also:
        `setAxisOffset(double)`

    - #### setAxisOffset

          public void setAxisOffset(double offset)

      Sets the offset between the axis and the paint strip and sends a `TitleChangeEvent` to all registered listeners.
      Parameters:
        `offset` - the offset.

    - #### getStripWidth

          public double getStripWidth()

      Returns the width of the paint strip, in Java2D units.
      Returns:
        The width of the paint strip.
      See Also:
        `setStripWidth(double)`

    - #### setStripWidth

          public void setStripWidth(double width)

      Sets the width of the paint strip and sends a `TitleChangeEvent` to all registered listeners.
      Parameters:
        `width` - the width.
      See Also:
        `getStripWidth()`

    - #### isStripOutlineVisible

          public boolean isStripOutlineVisible()

      Returns the flag that controls whether or not an outline is drawn around the paint strip.
      Returns:
        A boolean.
      See Also:
        `setStripOutlineVisible(boolean)`

    - #### setStripOutlineVisible

          public void setStripOutlineVisible(boolean visible)

      Sets the flag that controls whether or not an outline is drawn around the paint strip, and sends a `TitleChangeEvent` to all registered listeners.
      Parameters:
        `visible` - the flag.
      See Also:
        `isStripOutlineVisible()`

    - #### getStripOutlinePaint

          public java.awt.Paint getStripOutlinePaint()

      Returns the paint used to draw the outline of the paint strip.
      Returns:
        The paint (never `null`).
      See Also:
        `setStripOutlinePaint(Paint)`

    - #### setStripOutlinePaint

          public void setStripOutlinePaint(java.awt.Paint paint)

      Sets the paint used to draw the outline of the paint strip, and sends a `TitleChangeEvent` to all registered listeners.
      Parameters:
        `paint` - the paint (`null` not permitted).
      See Also:
        `getStripOutlinePaint()`

    - #### getStripOutlineStroke

          public java.awt.Stroke getStripOutlineStroke()

      Returns the stroke used to draw the outline around the paint strip.
      Returns:
        The stroke (never `null`).
      See Also:
        `setStripOutlineStroke(Stroke)`

    - #### setStripOutlineStroke

          public void setStripOutlineStroke(java.awt.Stroke stroke)

      Sets the stroke used to draw the outline around the paint strip and sends a `TitleChangeEvent` to all registered listeners.
      Parameters:
        `stroke` - the stroke (`null` not permitted).
      See Also:
        `getStripOutlineStroke()`

    - #### getBackgroundPaint

          public java.awt.Paint getBackgroundPaint()

      Returns the background paint.
      Returns:
        The background paint.

    - #### setBackgroundPaint

          public void setBackgroundPaint(java.awt.Paint paint)

      Sets the background paint and sends a `TitleChangeEvent` to all registered listeners.
      Parameters:
        `paint` - the paint (`null` permitted).

    - #### getSubdivisionCount

          public int getSubdivisionCount()

      Returns the number of subdivisions used to draw the scale.
      Returns:
        The subdivision count.
      Since:
        1.0.11

    - #### setSubdivisionCount

          public void setSubdivisionCount(int count)

      Sets the subdivision count and sends a `TitleChangeEvent` to all registered listeners.
      Parameters:
        `count` - the count.
      Since:
        1.0.11

    - #### axisChanged

          public void axisChanged(AxisChangeEvent event)

      Receives notification of an axis change event and responds by firing a title change event.
      Specified by:
        `axisChanged` in interface `AxisChangeListener`
      Parameters:
        `event` - the event.
      Since:
        1.0.13

    - #### arrange

          public Size2D arrange(java.awt.Graphics2D g2,
                                RectangleConstraint constraint)

      Arranges the contents of the block, within the given constraints, and returns the block size.
      Specified by:
        `arrange` in interface `Block`
      Overrides:
        `arrange` in class `AbstractBlock`
      Parameters:
        `g2` - the graphics device.
        `constraint` - the constraint (`null` not permitted).
      Returns:
        The block size (in Java2D units, never `null`).

    - #### arrangeRR

          protected Size2D arrangeRR(java.awt.Graphics2D g2,
                                     Range widthRange,
                                     Range heightRange)

      Returns the content size for the title. This will reflect the fact that a text title positioned on the left or right of a chart will be rotated 90 degrees.
      Parameters:
        `g2` - the graphics device.
        `widthRange` - the width range.
        `heightRange` - the height range.
      Returns:
        The content size.

    - #### draw

          public void draw(java.awt.Graphics2D g2,
                           java.awt.geom.Rectangle2D area)

      Draws the legend within the specified area.
      Specified by:
        `draw` in interface `Drawable`
      Specified by:
        `draw` in class `Title`
      Parameters:
        `g2` - the graphics target (`null` not permitted).
        `area` - the drawing area (`null` not permitted).

    - #### draw

          public java.lang.Object draw(java.awt.Graphics2D g2,
                                       java.awt.geom.Rectangle2D area,
                                       java.lang.Object params)

      Draws the legend within the specified area.
      Specified by:
        `draw` in interface `Block`
      Parameters:
        `g2` - the graphics target (`null` not permitted).
        `area` - the drawing area (`null` not permitted).
        `params` - drawing parameters (ignored here).
      Returns:
        `null`.

    - #### equals

          public boolean equals(java.lang.Object obj)

      Tests this legend for equality with an arbitrary object.
      Overrides:
        `equals` in class `Title`
      Parameters:
        `obj` - the object (`null` permitted).
      Returns:
        A boolean.