782 lines
25 KiB
Java
782 lines
25 KiB
Java
package net.sf.jasperreports.engine.base;
|
|
|
|
import java.awt.Color;
|
|
import java.io.IOException;
|
|
import java.io.ObjectInputStream;
|
|
import net.sf.jasperreports.charts.JRAreaPlot;
|
|
import net.sf.jasperreports.charts.JRBar3DPlot;
|
|
import net.sf.jasperreports.charts.JRBarPlot;
|
|
import net.sf.jasperreports.charts.JRBubblePlot;
|
|
import net.sf.jasperreports.charts.JRCandlestickPlot;
|
|
import net.sf.jasperreports.charts.JRCategoryDataset;
|
|
import net.sf.jasperreports.charts.JRHighLowDataset;
|
|
import net.sf.jasperreports.charts.JRHighLowPlot;
|
|
import net.sf.jasperreports.charts.JRLinePlot;
|
|
import net.sf.jasperreports.charts.JRMeterPlot;
|
|
import net.sf.jasperreports.charts.JRMultiAxisPlot;
|
|
import net.sf.jasperreports.charts.JRPie3DPlot;
|
|
import net.sf.jasperreports.charts.JRPieDataset;
|
|
import net.sf.jasperreports.charts.JRPiePlot;
|
|
import net.sf.jasperreports.charts.JRScatterPlot;
|
|
import net.sf.jasperreports.charts.JRThermometerPlot;
|
|
import net.sf.jasperreports.charts.JRTimePeriodDataset;
|
|
import net.sf.jasperreports.charts.JRTimeSeriesDataset;
|
|
import net.sf.jasperreports.charts.JRTimeSeriesPlot;
|
|
import net.sf.jasperreports.charts.JRValueDataset;
|
|
import net.sf.jasperreports.charts.JRXyDataset;
|
|
import net.sf.jasperreports.charts.JRXyzDataset;
|
|
import net.sf.jasperreports.engine.JRBox;
|
|
import net.sf.jasperreports.engine.JRBoxContainer;
|
|
import net.sf.jasperreports.engine.JRChart;
|
|
import net.sf.jasperreports.engine.JRChartDataset;
|
|
import net.sf.jasperreports.engine.JRChartPlot;
|
|
import net.sf.jasperreports.engine.JRCommonElement;
|
|
import net.sf.jasperreports.engine.JRElement;
|
|
import net.sf.jasperreports.engine.JRExpression;
|
|
import net.sf.jasperreports.engine.JRExpressionCollector;
|
|
import net.sf.jasperreports.engine.JRFont;
|
|
import net.sf.jasperreports.engine.JRGroup;
|
|
import net.sf.jasperreports.engine.JRHyperlink;
|
|
import net.sf.jasperreports.engine.JRHyperlinkHelper;
|
|
import net.sf.jasperreports.engine.JRHyperlinkParameter;
|
|
import net.sf.jasperreports.engine.JRLineBox;
|
|
import net.sf.jasperreports.engine.JRRuntimeException;
|
|
import net.sf.jasperreports.engine.JRStyleContainer;
|
|
import net.sf.jasperreports.engine.JRVisitor;
|
|
import net.sf.jasperreports.engine.util.JRBoxUtil;
|
|
import net.sf.jasperreports.engine.util.JRPenUtil;
|
|
import net.sf.jasperreports.engine.util.JRStyleResolver;
|
|
import net.sf.jasperreports.engine.util.LineBoxWrapper;
|
|
|
|
public class JRBaseChart extends JRBaseElement implements JRChart {
|
|
private static final long serialVersionUID = 10200L;
|
|
|
|
public static final String PROPERTY_LEGEND_BACKGROUND_COLOR = "legendBackgroundColor";
|
|
|
|
public static final String PROPERTY_LEGEND_COLOR = "legendColor";
|
|
|
|
public static final String PROPERTY_LEGEND_POSITION = "legendPosition";
|
|
|
|
public static final String PROPERTY_SHOW_LEGEND = "showLegend";
|
|
|
|
public static final String PROPERTY_SUBTITLE_COLOR = "subtitleColor";
|
|
|
|
public static final String PROPERTY_TITLE_COLOR = "titleColor";
|
|
|
|
public static final String PROPERTY_TITLE_POSITION = "titlePosition";
|
|
|
|
public static final String PROPERTY_RENDER_TYPE = "renderType";
|
|
|
|
protected byte chartType = 0;
|
|
|
|
protected boolean isShowLegend = false;
|
|
|
|
protected byte evaluationTime = 1;
|
|
|
|
protected byte hyperlinkType = 0;
|
|
|
|
protected String linkType;
|
|
|
|
protected byte hyperlinkTarget = 1;
|
|
|
|
private JRHyperlinkParameter[] hyperlinkParameters;
|
|
|
|
protected byte titlePosition = 1;
|
|
|
|
protected Color titleColor = null;
|
|
|
|
protected Color subtitleColor = null;
|
|
|
|
protected Color legendColor = null;
|
|
|
|
protected Color legendBackgroundColor = null;
|
|
|
|
protected byte legendPosition = 2;
|
|
|
|
protected String renderType;
|
|
|
|
protected JRLineBox lineBox = null;
|
|
|
|
protected JRFont titleFont = null;
|
|
|
|
protected JRFont subtitleFont = null;
|
|
|
|
protected JRFont legendFont = null;
|
|
|
|
protected String customizerClass;
|
|
|
|
protected JRGroup evaluationGroup = null;
|
|
|
|
protected JRExpression titleExpression = null;
|
|
|
|
protected JRExpression subtitleExpression = null;
|
|
|
|
protected JRExpression anchorNameExpression = null;
|
|
|
|
protected JRExpression hyperlinkReferenceExpression = null;
|
|
|
|
protected JRExpression hyperlinkAnchorExpression = null;
|
|
|
|
protected JRExpression hyperlinkPageExpression = null;
|
|
|
|
private JRExpression hyperlinkTooltipExpression;
|
|
|
|
protected JRChartDataset dataset = null;
|
|
|
|
protected JRChartPlot plot = null;
|
|
|
|
protected int bookmarkLevel = 0;
|
|
|
|
private Byte border;
|
|
|
|
private Byte topBorder;
|
|
|
|
private Byte leftBorder;
|
|
|
|
private Byte bottomBorder;
|
|
|
|
private Byte rightBorder;
|
|
|
|
private Color borderColor;
|
|
|
|
private Color topBorderColor;
|
|
|
|
private Color leftBorderColor;
|
|
|
|
private Color bottomBorderColor;
|
|
|
|
private Color rightBorderColor;
|
|
|
|
private Integer padding;
|
|
|
|
private Integer topPadding;
|
|
|
|
private Integer leftPadding;
|
|
|
|
private Integer bottomPadding;
|
|
|
|
private Integer rightPadding;
|
|
|
|
protected JRBaseChart(JRChart chart, JRBaseObjectFactory factory) {
|
|
super((JRElement)chart, factory);
|
|
this.border = null;
|
|
this.topBorder = null;
|
|
this.leftBorder = null;
|
|
this.bottomBorder = null;
|
|
this.rightBorder = null;
|
|
this.borderColor = null;
|
|
this.topBorderColor = null;
|
|
this.leftBorderColor = null;
|
|
this.bottomBorderColor = null;
|
|
this.rightBorderColor = null;
|
|
this.padding = null;
|
|
this.topPadding = null;
|
|
this.leftPadding = null;
|
|
this.bottomPadding = null;
|
|
this.rightPadding = null;
|
|
this.chartType = chart.getChartType();
|
|
switch (this.chartType) {
|
|
case 1:
|
|
this.dataset = (JRChartDataset)factory.getCategoryDataset((JRCategoryDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getAreaPlot((JRAreaPlot)chart.getPlot());
|
|
break;
|
|
case 3:
|
|
this.dataset = (JRChartDataset)factory.getCategoryDataset((JRCategoryDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getBarPlot((JRBarPlot)chart.getPlot());
|
|
break;
|
|
case 2:
|
|
this.dataset = (JRChartDataset)factory.getCategoryDataset((JRCategoryDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getBar3DPlot((JRBar3DPlot)chart.getPlot());
|
|
break;
|
|
case 4:
|
|
this.dataset = (JRChartDataset)factory.getXyzDataset((JRXyzDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getBubblePlot((JRBubblePlot)chart.getPlot());
|
|
break;
|
|
case 5:
|
|
this.dataset = (JRChartDataset)factory.getHighLowDataset((JRHighLowDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getCandlestickPlot((JRCandlestickPlot)chart.getPlot());
|
|
break;
|
|
case 6:
|
|
this.dataset = (JRChartDataset)factory.getHighLowDataset((JRHighLowDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getHighLowPlot((JRHighLowPlot)chart.getPlot());
|
|
break;
|
|
case 7:
|
|
this.dataset = (JRChartDataset)factory.getCategoryDataset((JRCategoryDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getLinePlot((JRLinePlot)chart.getPlot());
|
|
break;
|
|
case 17:
|
|
this.dataset = (JRChartDataset)factory.getValueDataset((JRValueDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getMeterPlot((JRMeterPlot)chart.getPlot());
|
|
break;
|
|
case 19:
|
|
this.dataset = null;
|
|
this.plot = (JRChartPlot)factory.getMultiAxisPlot((JRMultiAxisPlot)chart.getPlot());
|
|
break;
|
|
case 9:
|
|
this.dataset = (JRChartDataset)factory.getPieDataset((JRPieDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getPiePlot((JRPiePlot)chart.getPlot());
|
|
break;
|
|
case 8:
|
|
this.dataset = (JRChartDataset)factory.getPieDataset((JRPieDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getPie3DPlot((JRPie3DPlot)chart.getPlot());
|
|
break;
|
|
case 10:
|
|
this.dataset = (JRChartDataset)factory.getXyDataset((JRXyDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getScatterPlot((JRScatterPlot)chart.getPlot());
|
|
break;
|
|
case 12:
|
|
this.dataset = (JRChartDataset)factory.getCategoryDataset((JRCategoryDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getBarPlot((JRBarPlot)chart.getPlot());
|
|
break;
|
|
case 11:
|
|
this.dataset = (JRChartDataset)factory.getCategoryDataset((JRCategoryDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getBar3DPlot((JRBar3DPlot)chart.getPlot());
|
|
break;
|
|
case 18:
|
|
this.dataset = (JRChartDataset)factory.getValueDataset((JRValueDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getThermometerPlot((JRThermometerPlot)chart.getPlot());
|
|
break;
|
|
case 16:
|
|
this.dataset = (JRChartDataset)factory.getTimeSeriesDataset((JRTimeSeriesDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getTimeSeriesPlot((JRTimeSeriesPlot)chart.getPlot());
|
|
break;
|
|
case 13:
|
|
this.dataset = (JRChartDataset)factory.getXyDataset((JRXyDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getAreaPlot((JRAreaPlot)chart.getPlot());
|
|
break;
|
|
case 14:
|
|
switch (chart.getDataset().getDatasetType()) {
|
|
case 6:
|
|
this.dataset = (JRChartDataset)factory.getTimeSeriesDataset((JRTimeSeriesDataset)chart.getDataset());
|
|
break;
|
|
case 5:
|
|
this.dataset = (JRChartDataset)factory.getTimePeriodDataset((JRTimePeriodDataset)chart.getDataset());
|
|
break;
|
|
case 3:
|
|
this.dataset = (JRChartDataset)factory.getXyDataset((JRXyDataset)chart.getDataset());
|
|
break;
|
|
}
|
|
this.plot = (JRChartPlot)factory.getBarPlot((JRBarPlot)chart.getPlot());
|
|
break;
|
|
case 15:
|
|
this.dataset = (JRChartDataset)factory.getXyDataset((JRXyDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getLinePlot((JRLinePlot)chart.getPlot());
|
|
break;
|
|
case 20:
|
|
this.dataset = (JRChartDataset)factory.getCategoryDataset((JRCategoryDataset)chart.getDataset());
|
|
this.plot = (JRChartPlot)factory.getAreaPlot((JRAreaPlot)chart.getPlot());
|
|
break;
|
|
default:
|
|
throw new JRRuntimeException("Chart type not supported.");
|
|
}
|
|
this.isShowLegend = chart.isShowLegend();
|
|
this.evaluationTime = chart.getEvaluationTime();
|
|
this.linkType = chart.getLinkType();
|
|
this.hyperlinkTarget = chart.getHyperlinkTarget();
|
|
this.titlePosition = chart.getTitlePosition();
|
|
this.titleColor = chart.getOwnTitleColor();
|
|
this.subtitleColor = chart.getOwnSubtitleColor();
|
|
this.legendColor = chart.getOwnLegendColor();
|
|
this.legendBackgroundColor = chart.getOwnLegendBackgroundColor();
|
|
this.legendPosition = chart.getLegendPosition();
|
|
this.renderType = chart.getRenderType();
|
|
this.titleFont = new JRBaseFont(null, null, (JRStyleContainer)this, chart.getTitleFont());
|
|
this.subtitleFont = new JRBaseFont(null, null, (JRStyleContainer)this, chart.getSubtitleFont());
|
|
this.legendFont = new JRBaseFont(null, null, (JRStyleContainer)this, chart.getLegendFont());
|
|
this.evaluationGroup = factory.getGroup(chart.getEvaluationGroup());
|
|
this.titleExpression = factory.getExpression(chart.getTitleExpression());
|
|
this.subtitleExpression = factory.getExpression(chart.getSubtitleExpression());
|
|
this.anchorNameExpression = factory.getExpression(chart.getAnchorNameExpression());
|
|
this.hyperlinkReferenceExpression = factory.getExpression(chart.getHyperlinkReferenceExpression());
|
|
this.hyperlinkAnchorExpression = factory.getExpression(chart.getHyperlinkAnchorExpression());
|
|
this.hyperlinkPageExpression = factory.getExpression(chart.getHyperlinkPageExpression());
|
|
this.hyperlinkTooltipExpression = factory.getExpression(chart.getHyperlinkTooltipExpression());
|
|
this.bookmarkLevel = chart.getBookmarkLevel();
|
|
this.hyperlinkParameters = JRBaseHyperlink.copyHyperlinkParameters((JRHyperlink)chart, factory);
|
|
this.customizerClass = chart.getCustomizerClass();
|
|
this.lineBox = chart.getLineBox().clone((JRBoxContainer)this);
|
|
}
|
|
|
|
public boolean isShowLegend() {
|
|
return this.isShowLegend;
|
|
}
|
|
|
|
public void setShowLegend(boolean isShowLegend) {
|
|
boolean old = this.isShowLegend;
|
|
this.isShowLegend = isShowLegend;
|
|
getEventSupport().firePropertyChange("showLegend", old, this.isShowLegend);
|
|
}
|
|
|
|
public byte getEvaluationTime() {
|
|
return this.evaluationTime;
|
|
}
|
|
|
|
public JRGroup getEvaluationGroup() {
|
|
return this.evaluationGroup;
|
|
}
|
|
|
|
public JRBox getBox() {
|
|
return (JRBox)new LineBoxWrapper(getLineBox());
|
|
}
|
|
|
|
public JRLineBox getLineBox() {
|
|
return this.lineBox;
|
|
}
|
|
|
|
public JRFont getTitleFont() {
|
|
return this.titleFont;
|
|
}
|
|
|
|
public byte getTitlePosition() {
|
|
return this.titlePosition;
|
|
}
|
|
|
|
public void setTitlePosition(byte titlePosition) {
|
|
byte old = this.titlePosition;
|
|
this.titlePosition = titlePosition;
|
|
getEventSupport().firePropertyChange("titlePosition", old, this.titlePosition);
|
|
}
|
|
|
|
public Color getTitleColor() {
|
|
return JRStyleResolver.getTitleColor(this);
|
|
}
|
|
|
|
public Color getOwnTitleColor() {
|
|
return this.titleColor;
|
|
}
|
|
|
|
public void setTitleColor(Color titleColor) {
|
|
Object old = this.titleColor;
|
|
this.titleColor = titleColor;
|
|
getEventSupport().firePropertyChange("titleColor", old, this.titleColor);
|
|
}
|
|
|
|
public JRFont getSubtitleFont() {
|
|
return this.subtitleFont;
|
|
}
|
|
|
|
public Color getOwnSubtitleColor() {
|
|
return this.subtitleColor;
|
|
}
|
|
|
|
public Color getSubtitleColor() {
|
|
return JRStyleResolver.getSubtitleColor(this);
|
|
}
|
|
|
|
public void setSubtitleColor(Color subtitleColor) {
|
|
Object old = this.subtitleColor;
|
|
this.subtitleColor = subtitleColor;
|
|
getEventSupport().firePropertyChange("subtitleColor", old, this.subtitleColor);
|
|
}
|
|
|
|
public Color getLegendBackgroundColor() {
|
|
return JRStyleResolver.getLegendBackgroundColor(this);
|
|
}
|
|
|
|
public Color getOwnLegendBackgroundColor() {
|
|
return this.legendBackgroundColor;
|
|
}
|
|
|
|
public Color getOwnLegendColor() {
|
|
return this.legendColor;
|
|
}
|
|
|
|
public Color getLegendColor() {
|
|
return JRStyleResolver.getLegendColor(this);
|
|
}
|
|
|
|
public JRFont getLegendFont() {
|
|
return this.legendFont;
|
|
}
|
|
|
|
public void setLegendBackgroundColor(Color legendBackgroundColor) {
|
|
Object old = this.legendBackgroundColor;
|
|
this.legendBackgroundColor = legendBackgroundColor;
|
|
getEventSupport().firePropertyChange("legendBackgroundColor", old, this.legendBackgroundColor);
|
|
}
|
|
|
|
public void setLegendColor(Color legendColor) {
|
|
Object old = this.legendColor;
|
|
this.legendColor = legendColor;
|
|
getEventSupport().firePropertyChange("legendColor", old, this.legendColor);
|
|
}
|
|
|
|
public byte getLegendPosition() {
|
|
return this.legendPosition;
|
|
}
|
|
|
|
public void setLegendPosition(byte legendPosition) {
|
|
byte old = this.legendPosition;
|
|
this.legendPosition = legendPosition;
|
|
getEventSupport().firePropertyChange("legendPosition", old, this.legendPosition);
|
|
}
|
|
|
|
public byte getHyperlinkType() {
|
|
return JRHyperlinkHelper.getHyperlinkType((JRHyperlink)this);
|
|
}
|
|
|
|
public byte getHyperlinkTarget() {
|
|
return this.hyperlinkTarget;
|
|
}
|
|
|
|
public JRExpression getTitleExpression() {
|
|
return this.titleExpression;
|
|
}
|
|
|
|
public JRExpression getSubtitleExpression() {
|
|
return this.subtitleExpression;
|
|
}
|
|
|
|
public JRExpression getAnchorNameExpression() {
|
|
return this.anchorNameExpression;
|
|
}
|
|
|
|
public JRExpression getHyperlinkReferenceExpression() {
|
|
return this.hyperlinkReferenceExpression;
|
|
}
|
|
|
|
public JRExpression getHyperlinkAnchorExpression() {
|
|
return this.hyperlinkAnchorExpression;
|
|
}
|
|
|
|
public JRExpression getHyperlinkPageExpression() {
|
|
return this.hyperlinkPageExpression;
|
|
}
|
|
|
|
public JRChartDataset getDataset() {
|
|
return this.dataset;
|
|
}
|
|
|
|
public JRChartPlot getPlot() {
|
|
return this.plot;
|
|
}
|
|
|
|
public byte getChartType() {
|
|
return this.chartType;
|
|
}
|
|
|
|
public String getRenderType() {
|
|
return this.renderType;
|
|
}
|
|
|
|
public void setRenderType(String renderType) {
|
|
String old = this.renderType;
|
|
this.renderType = renderType;
|
|
getEventSupport().firePropertyChange("renderType", old, this.renderType);
|
|
}
|
|
|
|
public void collectExpressions(JRExpressionCollector collector) {
|
|
collector.collect(this);
|
|
}
|
|
|
|
public void visit(JRVisitor visitor) {
|
|
visitor.visitChart(this);
|
|
}
|
|
|
|
public int getBookmarkLevel() {
|
|
return this.bookmarkLevel;
|
|
}
|
|
|
|
public String getCustomizerClass() {
|
|
return this.customizerClass;
|
|
}
|
|
|
|
public byte getMode() {
|
|
return JRStyleResolver.getMode((JRCommonElement)this, (byte)2);
|
|
}
|
|
|
|
public byte getBorder() {
|
|
return JRPenUtil.getPenFromLinePen(this.lineBox.getPen());
|
|
}
|
|
|
|
public Byte getOwnBorder() {
|
|
return JRPenUtil.getOwnPenFromLinePen(this.lineBox.getPen());
|
|
}
|
|
|
|
public void setBorder(byte border) {
|
|
JRPenUtil.setLinePenFromPen(border, this.lineBox.getPen());
|
|
}
|
|
|
|
public void setBorder(Byte border) {
|
|
JRPenUtil.setLinePenFromPen(border, this.lineBox.getPen());
|
|
}
|
|
|
|
public Color getBorderColor() {
|
|
return this.lineBox.getPen().getLineColor();
|
|
}
|
|
|
|
public Color getOwnBorderColor() {
|
|
return this.lineBox.getPen().getOwnLineColor();
|
|
}
|
|
|
|
public void setBorderColor(Color borderColor) {
|
|
this.lineBox.getPen().setLineColor(borderColor);
|
|
}
|
|
|
|
public int getPadding() {
|
|
return this.lineBox.getPadding().intValue();
|
|
}
|
|
|
|
public Integer getOwnPadding() {
|
|
return this.lineBox.getOwnPadding();
|
|
}
|
|
|
|
public void setPadding(int padding) {
|
|
this.lineBox.setPadding(padding);
|
|
}
|
|
|
|
public void setPadding(Integer padding) {
|
|
this.lineBox.setPadding(padding);
|
|
}
|
|
|
|
public byte getTopBorder() {
|
|
return JRPenUtil.getPenFromLinePen(this.lineBox.getTopPen());
|
|
}
|
|
|
|
public Byte getOwnTopBorder() {
|
|
return JRPenUtil.getOwnPenFromLinePen(this.lineBox.getTopPen());
|
|
}
|
|
|
|
public void setTopBorder(byte topBorder) {
|
|
JRPenUtil.setLinePenFromPen(topBorder, this.lineBox.getTopPen());
|
|
}
|
|
|
|
public void setTopBorder(Byte topBorder) {
|
|
JRPenUtil.setLinePenFromPen(topBorder, this.lineBox.getTopPen());
|
|
}
|
|
|
|
public Color getTopBorderColor() {
|
|
return this.lineBox.getTopPen().getLineColor();
|
|
}
|
|
|
|
public Color getOwnTopBorderColor() {
|
|
return this.lineBox.getTopPen().getOwnLineColor();
|
|
}
|
|
|
|
public void setTopBorderColor(Color topBorderColor) {
|
|
this.lineBox.getTopPen().setLineColor(topBorderColor);
|
|
}
|
|
|
|
public int getTopPadding() {
|
|
return this.lineBox.getTopPadding().intValue();
|
|
}
|
|
|
|
public Integer getOwnTopPadding() {
|
|
return this.lineBox.getOwnTopPadding();
|
|
}
|
|
|
|
public void setTopPadding(int topPadding) {
|
|
this.lineBox.setTopPadding(topPadding);
|
|
}
|
|
|
|
public void setTopPadding(Integer topPadding) {
|
|
this.lineBox.setTopPadding(topPadding);
|
|
}
|
|
|
|
public byte getLeftBorder() {
|
|
return JRPenUtil.getPenFromLinePen(this.lineBox.getLeftPen());
|
|
}
|
|
|
|
public Byte getOwnLeftBorder() {
|
|
return JRPenUtil.getOwnPenFromLinePen(this.lineBox.getLeftPen());
|
|
}
|
|
|
|
public void setLeftBorder(byte leftBorder) {
|
|
JRPenUtil.setLinePenFromPen(leftBorder, this.lineBox.getLeftPen());
|
|
}
|
|
|
|
public void setLeftBorder(Byte leftBorder) {
|
|
JRPenUtil.setLinePenFromPen(leftBorder, this.lineBox.getLeftPen());
|
|
}
|
|
|
|
public Color getLeftBorderColor() {
|
|
return this.lineBox.getLeftPen().getLineColor();
|
|
}
|
|
|
|
public Color getOwnLeftBorderColor() {
|
|
return this.lineBox.getLeftPen().getOwnLineColor();
|
|
}
|
|
|
|
public void setLeftBorderColor(Color leftBorderColor) {
|
|
this.lineBox.getLeftPen().setLineColor(leftBorderColor);
|
|
}
|
|
|
|
public int getLeftPadding() {
|
|
return this.lineBox.getLeftPadding().intValue();
|
|
}
|
|
|
|
public Integer getOwnLeftPadding() {
|
|
return this.lineBox.getOwnLeftPadding();
|
|
}
|
|
|
|
public void setLeftPadding(int leftPadding) {
|
|
this.lineBox.setLeftPadding(leftPadding);
|
|
}
|
|
|
|
public void setLeftPadding(Integer leftPadding) {
|
|
this.lineBox.setLeftPadding(leftPadding);
|
|
}
|
|
|
|
public byte getBottomBorder() {
|
|
return JRPenUtil.getPenFromLinePen(this.lineBox.getBottomPen());
|
|
}
|
|
|
|
public Byte getOwnBottomBorder() {
|
|
return JRPenUtil.getOwnPenFromLinePen(this.lineBox.getBottomPen());
|
|
}
|
|
|
|
public void setBottomBorder(byte bottomBorder) {
|
|
JRPenUtil.setLinePenFromPen(bottomBorder, this.lineBox.getBottomPen());
|
|
}
|
|
|
|
public void setBottomBorder(Byte bottomBorder) {
|
|
JRPenUtil.setLinePenFromPen(bottomBorder, this.lineBox.getBottomPen());
|
|
}
|
|
|
|
public Color getBottomBorderColor() {
|
|
return this.lineBox.getBottomPen().getLineColor();
|
|
}
|
|
|
|
public Color getOwnBottomBorderColor() {
|
|
return this.lineBox.getBottomPen().getOwnLineColor();
|
|
}
|
|
|
|
public void setBottomBorderColor(Color bottomBorderColor) {
|
|
this.lineBox.getBottomPen().setLineColor(bottomBorderColor);
|
|
}
|
|
|
|
public int getBottomPadding() {
|
|
return this.lineBox.getBottomPadding().intValue();
|
|
}
|
|
|
|
public Integer getOwnBottomPadding() {
|
|
return this.lineBox.getOwnBottomPadding();
|
|
}
|
|
|
|
public void setBottomPadding(int bottomPadding) {
|
|
this.lineBox.setBottomPadding(bottomPadding);
|
|
}
|
|
|
|
public void setBottomPadding(Integer bottomPadding) {
|
|
this.lineBox.setBottomPadding(bottomPadding);
|
|
}
|
|
|
|
public byte getRightBorder() {
|
|
return JRPenUtil.getPenFromLinePen(this.lineBox.getRightPen());
|
|
}
|
|
|
|
public Byte getOwnRightBorder() {
|
|
return JRPenUtil.getOwnPenFromLinePen(this.lineBox.getRightPen());
|
|
}
|
|
|
|
public void setRightBorder(byte rightBorder) {
|
|
JRPenUtil.setLinePenFromPen(rightBorder, this.lineBox.getRightPen());
|
|
}
|
|
|
|
public void setRightBorder(Byte rightBorder) {
|
|
JRPenUtil.setLinePenFromPen(rightBorder, this.lineBox.getRightPen());
|
|
}
|
|
|
|
public Color getRightBorderColor() {
|
|
return this.lineBox.getRightPen().getLineColor();
|
|
}
|
|
|
|
public Color getOwnRightBorderColor() {
|
|
return this.lineBox.getRightPen().getOwnLineColor();
|
|
}
|
|
|
|
public void setRightBorderColor(Color rightBorderColor) {
|
|
this.lineBox.getRightPen().setLineColor(rightBorderColor);
|
|
}
|
|
|
|
public int getRightPadding() {
|
|
return this.lineBox.getRightPadding().intValue();
|
|
}
|
|
|
|
public Integer getOwnRightPadding() {
|
|
return this.lineBox.getOwnRightPadding();
|
|
}
|
|
|
|
public void setRightPadding(int rightPadding) {
|
|
this.lineBox.setRightPadding(rightPadding);
|
|
}
|
|
|
|
public void setRightPadding(Integer rightPadding) {
|
|
this.lineBox.setRightPadding(rightPadding);
|
|
}
|
|
|
|
public String getLinkType() {
|
|
return this.linkType;
|
|
}
|
|
|
|
public JRHyperlinkParameter[] getHyperlinkParameters() {
|
|
return this.hyperlinkParameters;
|
|
}
|
|
|
|
protected void normalizeLinkType() {
|
|
if (this.linkType == null)
|
|
this.linkType = JRHyperlinkHelper.getLinkType(this.hyperlinkType);
|
|
this.hyperlinkType = 0;
|
|
}
|
|
|
|
public JRExpression getHyperlinkTooltipExpression() {
|
|
return this.hyperlinkTooltipExpression;
|
|
}
|
|
|
|
public Color getDefaultLineColor() {
|
|
return getForecolor();
|
|
}
|
|
|
|
public Object clone() {
|
|
JRBaseChart clone = (JRBaseChart)super.clone();
|
|
if (this.hyperlinkParameters != null) {
|
|
clone.hyperlinkParameters = new JRHyperlinkParameter[this.hyperlinkParameters.length];
|
|
for (int i = 0; i < this.hyperlinkParameters.length; i++)
|
|
clone.hyperlinkParameters[i] = (JRHyperlinkParameter)this.hyperlinkParameters[i].clone();
|
|
}
|
|
if (this.titleExpression != null)
|
|
clone.titleExpression = (JRExpression)this.titleExpression.clone();
|
|
if (this.subtitleExpression != null)
|
|
clone.subtitleExpression = (JRExpression)this.subtitleExpression.clone();
|
|
if (this.anchorNameExpression != null)
|
|
clone.anchorNameExpression = (JRExpression)this.anchorNameExpression.clone();
|
|
if (this.hyperlinkReferenceExpression != null)
|
|
clone.hyperlinkReferenceExpression = (JRExpression)this.hyperlinkReferenceExpression.clone();
|
|
if (this.hyperlinkAnchorExpression != null)
|
|
clone.hyperlinkAnchorExpression = (JRExpression)this.hyperlinkAnchorExpression.clone();
|
|
if (this.hyperlinkPageExpression != null)
|
|
clone.hyperlinkPageExpression = (JRExpression)this.hyperlinkPageExpression.clone();
|
|
if (this.hyperlinkTooltipExpression != null)
|
|
clone.hyperlinkTooltipExpression = (JRExpression)this.hyperlinkTooltipExpression.clone();
|
|
if (this.dataset != null)
|
|
clone.dataset = (JRChartDataset)this.dataset.clone();
|
|
if (this.plot != null)
|
|
clone.plot = (JRChartPlot)this.plot.clone(clone);
|
|
return clone;
|
|
}
|
|
|
|
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException {
|
|
in.defaultReadObject();
|
|
if (this.lineBox == null) {
|
|
this.lineBox = new JRBaseLineBox((JRBoxContainer)this);
|
|
JRBoxUtil.setToBox(this.border, this.topBorder, this.leftBorder, this.bottomBorder, this.rightBorder, this.borderColor, this.topBorderColor, this.leftBorderColor, this.bottomBorderColor, this.rightBorderColor, this.padding, this.topPadding, this.leftPadding, this.bottomPadding, this.rightPadding, this.lineBox);
|
|
this.border = null;
|
|
this.topBorder = null;
|
|
this.leftBorder = null;
|
|
this.bottomBorder = null;
|
|
this.rightBorder = null;
|
|
this.borderColor = null;
|
|
this.topBorderColor = null;
|
|
this.leftBorderColor = null;
|
|
this.bottomBorderColor = null;
|
|
this.rightBorderColor = null;
|
|
this.padding = null;
|
|
this.topPadding = null;
|
|
this.leftPadding = null;
|
|
this.bottomPadding = null;
|
|
this.rightPadding = null;
|
|
}
|
|
normalizeLinkType();
|
|
}
|
|
}
|