com.ijchart.xychart.shape
Class LegendItemChartShape

java.lang.Object
  extended by com.ijchart.xychart.shape.AbstractChartShape
      extended by com.ijchart.xychart.shape.LegendItemChartShape
All Implemented Interfaces:
IChartShapeChangeListener, IChartShape, java.io.Serializable, java.lang.Cloneable, java.util.EventListener

public class LegendItemChartShape
extends AbstractChartShape
implements java.lang.Cloneable, java.io.Serializable

Title: IJChart

Description: a chart library for the Java(tm) platform.

用于显示在图例范围内的图形.每个图形由其它的图形和文字标签组成.注意:父类中的某些方法对本图形没有影响.

Copyright: Copyright (c) 2013

Company:

Version:
1.0
Author:
zhang feng min,shanghai china. Contract me by email.
See Also:
Serialized Form

Field Summary
static boolean DEFAULT_DRAW_LABEL
          缺省是否显示文字.
static double DEFAULT_GAP_SIZE
          缺省图形和文字之间的空白.
 
Fields inherited from class com.ijchart.xychart.shape.AbstractChartShape
DEFAULT_DRAW_TYPE, DEFAULT_SHAPE_ID, DEFAULT_VISIBLE, transformedShape
 
Fields inherited from interface com.ijchart.xychart.shape.IChartShape
DEFAULT_BORDER_PAINT, DEFAULT_BORDER_STROKE, DEFAULT_CONTENT_PAINT, DEFAULT_DRAW_BORDER, DEFAULT_FILL_ALPHA, DEFAULT_FILL_PAINT, DEFAULT_FILL_SHAPE, DEFAULT_GRADIENT_PAINT_TRANSFORM_TYPE, DEFAULT_MARGIN, DEFAULT_SELECT_FILL_PAINT, DEFAULT_SELECT_RECT_ALPHA, DEFAULT_SELECT_RECT_WIDTH, DEFAULT_SELECTED, DEFAULT_TEXT_FONT, DEFAULT_TOOLTIP_SHAPE_WIDTH, HOTSPOT_TYPE_CIRCLE, HOTSPOT_TYPE_POLYGON, HOTSPOT_TYPE_RECTANGLE
 
Constructor Summary
LegendItemChartShape(IChartShape shape, java.lang.String label)
          由图表图形和标签组成图例图形.
 
Method Summary
protected  void calculateTransformedShape()
          计算变换后的图形.
 java.lang.Object clone()
          返回克隆的对象.
 void draw(java.awt.Graphics2D g2)
          在图形设备(如屏幕或打印机)上绘制此图形.绘制时不考虑shape的位置坐标.
 boolean equals(java.lang.Object obj)
          测试两个对象是否相等.
 Rectangle estimateDrawBound(java.awt.Graphics2D g2)
          估计绘制需要的区域Rectangle.
 java.awt.geom.Rectangle2D getDrawArea()
          返回图例图形的绘制区域.
 double getGapSize()
          返回图形和文字之间的空白.
 java.lang.String getHotspotPolyCoords()
          返回形成热点的坐标点.
protected  java.awt.Shape getHotspotShape()
          返回热点图形.
 java.lang.String getLabel()
          返回显示的文字.
 java.awt.Font getLabelFont()
          返回文字的字体.
 java.awt.Paint getLabelPaint()
          返回外内容Paint
 IChartShape getShape()
          返回图表图形.
 ShapeType getShapeType()
          描述本图形的类型.
 java.awt.geom.Point2D getTopLeftPoint()
          返回图形左上角的坐标.
 int hashCode()
          计算对象的hashcode值.
 boolean isDrawLabel()
          返回是否显示文字.
 void setDrawArea(java.awt.geom.Rectangle2D drawArea)
          设置图例图形的绘制区域,并向所有监听器发送 ChartShapeChangeEvent事件.
 void setDrawLabel(boolean drawLabel)
          设置是否显示文字, 并向所有监听器发送ChartShapeChangeEvent事件.
 void setGapSize(double gap)
          设置图形和文字之间的空白,并向所有监听器发送 ChartShapeChangeEvent事件.
 void setLabel(java.lang.String label)
          设置显示的文字,并向所有监听器发送 ChartShapeChangeEvent事件.
 void setLabelFont(java.awt.Font font)
          设置文字的字体, 并向所有监听器发送ChartShapeChangeEvent事件.
 void setLabelPaint(java.awt.Paint paint)
          设置图形文字的Paint, 并向所有监听器发送ChartShapeChangeEvent事件
 void setShape(IChartShape shape)
          设置图表图形,并向所有监听器发送ChartShapeChangeEvent事件.
 void translate(double tx, double ty)
          相对移动本图形,其中X轴方向偏移tx,Y轴方向偏移ty,并向所有监听器发送 ChartShapeChangeEvent事件.

See Also:
Constant Field Values

DEFAULT_GAP_SIZE

public static final double DEFAULT_GAP_SIZE
缺省图形和文字之间的空白.

See Also:
Constant Field Values
Constructor Detail

LegendItemChartShape

public LegendItemChartShape(IChartShape shape,
                            java.lang.String label)
由图表图形和标签组成图例图形.

Parameters:
shape - IChartShape 图表图形 (不可为null).
label - String 标签 (可为null).
Method Detail

getShape

public IChartShape getShape()
返回图表图形.

Returns:
IChartShape 图表图形 (不为null).

setShape

public void setShape(IChartShape shape)
设置图表图形,并向所有监听器发送ChartShapeChangeEvent事件.

Parameters:
shape - IChartShape 图表图形 (不可为null).

setDrawLabel

public void setDrawLabel(boolean drawLabel)
设置是否显示文字, 并向所有监听器发送ChartShapeChangeEvent事件.

Parameters:
drawLabel - boolean

isDrawLabel

public boolean isDrawLabel()
返回是否显示文字.

Returns:
boolean

setLabelPaint

public void setLabelPaint(java.awt.Paint paint)
设置图形文字的Paint, 并向所有监听器发送ChartShapeChangeEvent事件

Parameters:
paint - Paint 图形文字Paint(不可为null)

getLabelPaint

public java.awt.Paint getLabelPaint()
返回外内容Paint

Returns:
Paint 内容Paint

getLabel

public java.lang.String getLabel()
返回显示的文字.

Returns:
String 显示的文字,可能为null.

setLabel

public void setLabel(java.lang.String label)
设置显示的文字,并向所有监听器发送 ChartShapeChangeEvent事件.

Parameters:
label - String 要显示的文字 (可为null).

getLabelFont

public java.awt.Font getLabelFont()
返回文字的字体.

Returns:
Font

setLabelFont

public void setLabelFont(java.awt.Font font)
设置文字的字体, 并向所有监听器发送ChartShapeChangeEvent事件.

Parameters:
font - Font 文字的字体 (不可为null).

getGapSize

public double getGapSize()
返回图形和文字之间的空白.

Returns:
double 图形和文字之间的空白.

setGapSize

public void setGapSize(double gap)
设置图形和文字之间的空白,并向所有监听器发送 ChartShapeChangeEvent事件.

Parameters:
gap - double 图形和文字之间的空白.

getDrawArea

public java.awt.geom.Rectangle2D getDrawArea()
返回图例图形的绘制区域.

Returns:
Rectangle2D 区域 (可为null).

setDrawArea

public void setDrawArea(java.awt.geom.Rectangle2D drawArea)
设置图例图形的绘制区域,并向所有监听器发送 ChartShapeChangeEvent事件.

Parameters:
drawArea - Rectangle2D 区域 (可为null).

estimateDrawBound

public Rectangle estimateDrawBound(java.awt.Graphics2D g2)
估计绘制需要的区域Rectangle.

Parameters:
g2 - Graphics2D 图形设备(如屏幕或打印机) (不可为null)
Returns:
Rectangle 绘制需要的区域.

draw

public void draw(java.awt.Graphics2D g2)
在图形设备(如屏幕或打印机)上绘制此图形.绘制时不考虑shape的位置坐标.

Specified by:
draw in interface IChartShape
Parameters:
g2 - Graphics2D 图形设备(如屏幕或打印机) (不可为null)

drawSelect

protected void drawSelect(java.awt.Graphics2D g2)
在图形设备(如屏幕或打印机)上绘制图形的选中部分,因为图形可能会有重叠,所以绘制图形时要先绘制完所有的图形后, 再调用此方法绘制选中部分.

Specified by:
drawSelect in class AbstractChartShape
Parameters:
g2 - Graphics2D 图形设备(如屏幕或打印机) (不可为null)

calculateTransformedShape

protected void calculateTransformedShape()
计算变换后的图形.

Specified by:
calculateTransformedShape in class AbstractChartShape

translate

public void translate(double tx,
                      double ty)
相对移动本图形,其中X轴方向偏移tx,Y轴方向偏移ty,并向所有监听器发送 ChartShapeChangeEvent事件.

Specified by:
translate in interface IChartShape
Parameters:
tx - double 沿X轴方向的距离.
ty - double 沿Y轴方向的距离.

getTopLeftPoint

public java.awt.geom.Point2D getTopLeftPoint()
返回图形左上角的坐标.

Specified by:
getTopLeftPoint in interface IChartShape
Returns:
Point2D 坐标值.

getHotspotPolyCoords

public java.lang.String getHotspotPolyCoords()
返回形成热点的坐标点.

Returns:
String 热点坐标.

getHotspotShape

protected java.awt.Shape getHotspotShape()
返回热点图形.

Specified by:
getHotspotShape in class AbstractChartShape
Returns:
Shape 热点图形 (可为null).

getShapeType

public ShapeType getShapeType()
描述本图形的类型.

Specified by:
getShapeType in interface IChartShape
Returns:
ShapeType ShapeType类定义的常量 (不可为null).

hashCode

public int hashCode()
计算对象的hashcode值.

Overrides:
hashCode in class AbstractChartShape
Returns:
int 对象的hashcode值.

equals

public boolean equals(java.lang.Object obj)
测试两个对象是否相等.

Overrides:
equals in class AbstractChartShape
Parameters:
obj - 要比较的对象
Returns:
相等返回true,否则返回false.

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
返回克隆的对象.

Overrides:
clone in class AbstractChartShape
Returns:
object a clone of this instance.
Throws:
java.lang.CloneNotSupportedException - if the object's class does not support the Cloneable interface. Subclasses that override the clone method can also throw this exception to indicate that an instance cannot be cloned.