package net.sf.jasperreports.charts.base; import java.awt.Color; import net.sf.jasperreports.charts.JRAreaPlot; import net.sf.jasperreports.charts.JRCategoryAxisFormat; import net.sf.jasperreports.charts.JRValueAxisFormat; import net.sf.jasperreports.engine.JRChart; import net.sf.jasperreports.engine.JRChartPlot; import net.sf.jasperreports.engine.JRExpression; import net.sf.jasperreports.engine.JRExpressionCollector; import net.sf.jasperreports.engine.JRFont; import net.sf.jasperreports.engine.JRStyleContainer; import net.sf.jasperreports.engine.base.JRBaseChartPlot; import net.sf.jasperreports.engine.base.JRBaseFont; import net.sf.jasperreports.engine.base.JRBaseObjectFactory; import net.sf.jasperreports.engine.util.JRStyleResolver; public class JRBaseAreaPlot extends JRBaseChartPlot implements JRAreaPlot { private static final long serialVersionUID = 10200L; protected JRExpression categoryAxisLabelExpression = null; protected JRFont categoryAxisLabelFont = null; protected Color categoryAxisLabelColor = null; protected JRFont categoryAxisTickLabelFont = null; protected Color categoryAxisTickLabelColor = null; protected String categoryAxisTickLabelMask = null; protected Color categoryAxisLineColor = null; protected JRExpression valueAxisLabelExpression = null; protected JRFont valueAxisLabelFont = null; protected Color valueAxisLabelColor = null; protected JRFont valueAxisTickLabelFont = null; protected Color valueAxisTickLabelColor = null; protected String valueAxisTickLabelMask = null; protected Color valueAxisLineColor = null; public JRBaseAreaPlot(JRChartPlot areaPlot, JRChart chart) { super(areaPlot, chart); } public JRBaseAreaPlot(JRAreaPlot areaPlot, JRBaseObjectFactory factory) { super((JRChartPlot)areaPlot, factory); this.categoryAxisLabelExpression = factory.getExpression(areaPlot.getCategoryAxisLabelExpression()); this.categoryAxisLabelFont = (JRFont)new JRBaseFont(null, null, (JRStyleContainer)areaPlot.getChart(), areaPlot.getCategoryAxisLabelFont()); this.categoryAxisLabelColor = areaPlot.getOwnCategoryAxisLabelColor(); this.categoryAxisTickLabelFont = (JRFont)new JRBaseFont(null, null, (JRStyleContainer)areaPlot.getChart(), areaPlot.getCategoryAxisTickLabelFont()); this.categoryAxisTickLabelColor = areaPlot.getOwnCategoryAxisTickLabelColor(); this.categoryAxisTickLabelMask = areaPlot.getCategoryAxisTickLabelMask(); this.categoryAxisLineColor = areaPlot.getOwnCategoryAxisLineColor(); this.valueAxisLabelExpression = factory.getExpression(areaPlot.getValueAxisLabelExpression()); this.valueAxisLabelFont = (JRFont)new JRBaseFont(null, null, (JRStyleContainer)areaPlot.getChart(), areaPlot.getValueAxisLabelFont()); this.valueAxisLabelColor = areaPlot.getOwnValueAxisLabelColor(); this.valueAxisTickLabelFont = (JRFont)new JRBaseFont(null, null, (JRStyleContainer)areaPlot.getChart(), areaPlot.getValueAxisTickLabelFont()); this.valueAxisTickLabelColor = areaPlot.getOwnValueAxisTickLabelColor(); this.valueAxisTickLabelMask = areaPlot.getValueAxisTickLabelMask(); this.valueAxisLineColor = areaPlot.getOwnValueAxisLineColor(); } public JRExpression getCategoryAxisLabelExpression() { return this.categoryAxisLabelExpression; } public JRFont getCategoryAxisLabelFont() { return this.categoryAxisLabelFont; } public Color getCategoryAxisLabelColor() { return JRStyleResolver.getCategoryAxisLabelColor((JRCategoryAxisFormat)this, (JRChartPlot)this); } public Color getOwnCategoryAxisLabelColor() { return this.categoryAxisLabelColor; } public JRFont getCategoryAxisTickLabelFont() { return this.categoryAxisTickLabelFont; } public Color getCategoryAxisTickLabelColor() { return JRStyleResolver.getCategoryAxisTickLabelColor((JRCategoryAxisFormat)this, (JRChartPlot)this); } public Color getOwnCategoryAxisTickLabelColor() { return this.categoryAxisTickLabelColor; } public String getCategoryAxisTickLabelMask() { return this.categoryAxisTickLabelMask; } public Color getCategoryAxisLineColor() { return JRStyleResolver.getCategoryAxisLineColor((JRCategoryAxisFormat)this, (JRChartPlot)this); } public Color getOwnCategoryAxisLineColor() { return this.categoryAxisLineColor; } public JRExpression getValueAxisLabelExpression() { return this.valueAxisLabelExpression; } public JRFont getValueAxisLabelFont() { return this.valueAxisLabelFont; } public Color getValueAxisLabelColor() { return JRStyleResolver.getValueAxisLabelColor((JRValueAxisFormat)this, (JRChartPlot)this); } public Color getOwnValueAxisLabelColor() { return this.valueAxisLabelColor; } public JRFont getValueAxisTickLabelFont() { return this.valueAxisTickLabelFont; } public Color getValueAxisTickLabelColor() { return JRStyleResolver.getValueAxisTickLabelColor((JRValueAxisFormat)this, (JRChartPlot)this); } public Color getOwnValueAxisTickLabelColor() { return this.valueAxisTickLabelColor; } public String getValueAxisTickLabelMask() { return this.valueAxisTickLabelMask; } public Color getValueAxisLineColor() { return JRStyleResolver.getValueAxisLineColor((JRValueAxisFormat)this, (JRChartPlot)this); } public Color getOwnValueAxisLineColor() { return this.valueAxisLineColor; } public void collectExpressions(JRExpressionCollector collector) { collector.collect(this); } public Object clone(JRChart parentChart) { JRBaseAreaPlot clone = (JRBaseAreaPlot)super.clone(parentChart); if (this.categoryAxisLabelExpression != null) clone.categoryAxisLabelExpression = (JRExpression)this.categoryAxisLabelExpression.clone(); if (this.valueAxisLabelExpression != null) clone.valueAxisLabelExpression = (JRExpression)this.valueAxisLabelExpression.clone(); return clone; } }