org.jfree.chart.title

Class LegendTitle

Implemented Interfaces:
Cloneable, Drawable, PublicCloneable, Serializable, Block

public class LegendTitle
extends Title
implements Cloneable, PublicCloneable, Serializable

A chart title that displays a legend for the data in the chart.

The title can be populated with legend items manually, or you can assign a reference to the plot, in which case the legend items will be automatically created to match the dataset(s).

Field Summary

static Font
DEFAULT_ITEM_FONT
The default item font.
static Paint
DEFAULT_ITEM_PAINT
The default item paint.

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

DEFAULT_HORIZONTAL_ALIGNMENT, DEFAULT_PADDING, DEFAULT_POSITION, DEFAULT_VERTICAL_ALIGNMENT

Constructor Summary

LegendTitle(LegendItemSource source)
Constructs a new (empty) legend for the specified source.
LegendTitle(LegendItemSource source, Arrangement hLayout, Arrangement vLayout)
Creates a new legend title with the specified arrangement.

Method Summary

Size2D
arrange(Graphics2D g2, RectangleConstraint constraint)
Arranges the contents of the block, within the given constraints, and returns the block size.
protected Block
createLegendItemBlock(LegendItem item)
Creates a legend item block.
void
draw(Graphics2D g2, Rectangle2D area)
Draws the title on a Java 2D graphics device (such as the screen or a printer).
Object
draw(Graphics2D g2, Rectangle2D area, Object params)
Draws the block within the specified area.
boolean
equals(Object obj)
Tests this title for equality with an arbitrary object.
protected void
fetchLegendItems()
Fetches the latest legend items.
Paint
getBackgroundPaint()
Returns the background paint.
BlockContainer
getItemContainer()
Returns the container that holds the legend items.
Font
getItemFont()
Returns the item font.
RectangleInsets
getItemLabelPadding()
Returns the padding used for the items labels.
Paint
getItemPaint()
Returns the item paint.
RectangleAnchor
getLegendItemGraphicAnchor()
Returns the legend item graphic anchor.
RectangleEdge
getLegendItemGraphicEdge()
Returns the location of the shape within each legend item.
RectangleAnchor
getLegendItemGraphicLocation()
Returns the legend item graphic location.
RectangleInsets
getLegendItemGraphicPadding()
Returns the padding that will be applied to each item graphic.
LegendItemSource[]
getSources()
Returns the legend item sources.
void
setBackgroundPaint(Paint paint)
Sets the background paint for the legend and sends a TitleChangeEvent to all registered listeners.
void
setItemFont(Font font)
Sets the item font and sends a TitleChangeEvent to all registered listeners.
void
setItemLabelPadding(RectangleInsets padding)
Sets the padding used for the item labels in the legend.
void
setItemPaint(Paint paint)
Sets the item paint.
void
setLegendItemGraphicAnchor(RectangleAnchor anchor)
Sets the anchor point used for the graphic in each legend item.
void
setLegendItemGraphicEdge(RectangleEdge edge)
Sets the location of the shape within each legend item.
void
setLegendItemGraphicLocation(RectangleAnchor anchor)
Sets the legend item graphic location.
void
setLegendItemGraphicPadding(RectangleInsets padding)
Sets the padding that will be applied to each item graphic in the legend and sends a TitleChangeEvent to all registered listeners.
void
setSources(LegendItemSource[] sources)
Sets the legend item sources and sends a TitleChangeEvent to all registered listeners.
void
setWrapper(BlockContainer wrapper)
Sets the wrapper container for the legend.

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

addChangeListener, clone, draw, equals, getHorizontalAlignment, getNotify, getPosition, getVerticalAlignment, hashCode, notifyListeners, removeChangeListener, setHorizontalAlignment, setNotify, setPosition, setVerticalAlignment

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

arrange, arrange, calculateTotalHeight, calculateTotalWidth, clone, drawBorder, equals, 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

Field Details

DEFAULT_ITEM_FONT

public static final Font DEFAULT_ITEM_FONT
The default item font.

DEFAULT_ITEM_PAINT

public static final Paint DEFAULT_ITEM_PAINT
The default item paint.

Constructor Details

LegendTitle

public LegendTitle(LegendItemSource source)
Constructs a new (empty) legend for the specified source.
Parameters:
source - the source.

LegendTitle

public LegendTitle(LegendItemSource source,
                   Arrangement hLayout,
                   Arrangement vLayout)
Creates a new legend title with the specified arrangement.
Parameters:
source - the source.
hLayout - the horizontal item arrangement (null not permitted).
vLayout - the vertical item arrangement (null not permitted).

Method Details

arrange

public Size2D arrange(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 interface AbstractBlock
Parameters:
g2 - the graphics device.
constraint - the constraint (null not permitted).
Returns:
The block size (in Java2D units, never null).

createLegendItemBlock

protected Block createLegendItemBlock(LegendItem item)
Creates a legend item block.
Parameters:
item - the legend item.
Returns:
The block.

draw

public void draw(Graphics2D g2,
                 Rectangle2D area)
Draws the title on a Java 2D graphics device (such as the screen or a printer).
Overrides:
draw in interface Title
Parameters:
g2 - the graphics device.
area - the available area for the title.

draw

public Object draw(Graphics2D g2,
                   Rectangle2D area,
                   Object params)
Draws the block within the specified area.
Specified by:
draw in interface Block
Parameters:
g2 - the graphics device.
area - the area.
params - ignored (null permitted).
Returns:
An EntityBlockResult or null.

equals

public boolean equals(Object obj)
Tests this title for equality with an arbitrary object.
Overrides:
equals in interface Title
Parameters:
obj - the object (null permitted).
Returns:
A boolean.

fetchLegendItems

protected void fetchLegendItems()
Fetches the latest legend items.

getBackgroundPaint

public Paint getBackgroundPaint()
Returns the background paint.
Returns:
The background paint (possibly null).

getItemContainer

public BlockContainer getItemContainer()
Returns the container that holds the legend items.
Returns:
The container for the legend items.

getItemFont

public Font getItemFont()
Returns the item font.
Returns:
The font (never null).

getItemLabelPadding

public RectangleInsets getItemLabelPadding()
Returns the padding used for the items labels.
Returns:
The padding (never null).

getItemPaint

public Paint getItemPaint()
Returns the item paint.
Returns:
The paint (never null).

getLegendItemGraphicAnchor

public RectangleAnchor getLegendItemGraphicAnchor()
Returns the legend item graphic anchor.
Returns:
The graphic anchor (never null).

getLegendItemGraphicEdge

public RectangleEdge getLegendItemGraphicEdge()
Returns the location of the shape within each legend item.
Returns:
The location (never null).

getLegendItemGraphicLocation

public RectangleAnchor getLegendItemGraphicLocation()
Returns the legend item graphic location.
Returns:
The location (never null).

getLegendItemGraphicPadding

public RectangleInsets getLegendItemGraphicPadding()
Returns the padding that will be applied to each item graphic.
Returns:
The padding (never null).

getSources

public LegendItemSource[] getSources()
Returns the legend item sources.
Returns:
The sources.

setBackgroundPaint

public void setBackgroundPaint(Paint paint)
Sets the background paint for the legend and sends a TitleChangeEvent to all registered listeners.
Parameters:
paint - the paint (null permitted).

setItemFont

public void setItemFont(Font font)
Sets the item font and sends a TitleChangeEvent to all registered listeners.
Parameters:
font - the font (null not permitted).

setItemLabelPadding

public void setItemLabelPadding(RectangleInsets padding)
Sets the padding used for the item labels in the legend.
Parameters:
padding - the padding (null not permitted).

setItemPaint

public void setItemPaint(Paint paint)
Sets the item paint.
Parameters:
paint - the paint (null not permitted).

setLegendItemGraphicAnchor

public void setLegendItemGraphicAnchor(RectangleAnchor anchor)
Sets the anchor point used for the graphic in each legend item.
Parameters:
anchor - the anchor point (null not permitted).

setLegendItemGraphicEdge

public void setLegendItemGraphicEdge(RectangleEdge edge)
Sets the location of the shape within each legend item.
Parameters:
edge - the edge (null not permitted).

setLegendItemGraphicLocation

public void setLegendItemGraphicLocation(RectangleAnchor anchor)
Sets the legend item graphic location.
Parameters:
anchor - the anchor (null not permitted).

setLegendItemGraphicPadding

public void setLegendItemGraphicPadding(RectangleInsets padding)
Sets the padding that will be applied to each item graphic in the legend and sends a TitleChangeEvent to all registered listeners.
Parameters:
padding - the padding (null not permitted).

setSources

public void setSources(LegendItemSource[] sources)
Sets the legend item sources and sends a TitleChangeEvent to all registered listeners.
Parameters:
sources - the sources (null not permitted).

setWrapper

public void setWrapper(BlockContainer wrapper)
Sets the wrapper container for the legend.
Parameters:
wrapper - the wrapper container.