package net.sf.jasperreports.charts.fill;

import java.awt.Color;
import net.sf.jasperreports.charts.JRBubblePlot;
import net.sf.jasperreports.charts.JRXAxisFormat;
import net.sf.jasperreports.charts.JRYAxisFormat;
import net.sf.jasperreports.engine.JRChartPlot;
import net.sf.jasperreports.engine.JRExpression;
import net.sf.jasperreports.engine.JRFont;
import net.sf.jasperreports.engine.JRStyleContainer;
import net.sf.jasperreports.engine.base.JRBaseFont;
import net.sf.jasperreports.engine.fill.JRFillChartPlot;
import net.sf.jasperreports.engine.fill.JRFillObjectFactory;
import net.sf.jasperreports.engine.util.JRStyleResolver;

public class JRFillBubblePlot extends JRFillChartPlot implements JRBubblePlot {
  protected JRFont xAxisLabelFont = null;
  
  protected Color xAxisLabelColor = null;
  
  protected JRFont xAxisTickLabelFont = null;
  
  protected Color xAxisTickLabelColor = null;
  
  protected Color xAxisLineColor = null;
  
  protected JRFont yAxisLabelFont = null;
  
  protected Color yAxisLabelColor = null;
  
  protected JRFont yAxisTickLabelFont = null;
  
  protected Color yAxisTickLabelColor = null;
  
  protected Color yAxisLineColor = null;
  
  public JRFillBubblePlot(JRBubblePlot bubblePlot, JRFillObjectFactory factory) {
    super((JRChartPlot)bubblePlot, factory);
    this.xAxisLabelFont = (JRFont)new JRBaseFont(null, null, (JRStyleContainer)bubblePlot.getChart(), bubblePlot.getXAxisLabelFont());
    this.xAxisLabelColor = bubblePlot.getOwnXAxisLabelColor();
    this.xAxisTickLabelFont = (JRFont)new JRBaseFont(null, null, (JRStyleContainer)bubblePlot.getChart(), bubblePlot.getXAxisTickLabelFont());
    this.xAxisTickLabelColor = bubblePlot.getOwnXAxisTickLabelColor();
    this.xAxisLineColor = bubblePlot.getXAxisLineColor();
    this.yAxisLabelFont = (JRFont)new JRBaseFont(null, null, (JRStyleContainer)bubblePlot.getChart(), bubblePlot.getYAxisLabelFont());
    this.yAxisLabelColor = bubblePlot.getOwnYAxisLabelColor();
    this.yAxisTickLabelFont = (JRFont)new JRBaseFont(null, null, (JRStyleContainer)bubblePlot.getChart(), bubblePlot.getYAxisTickLabelFont());
    this.yAxisTickLabelColor = bubblePlot.getOwnYAxisTickLabelColor();
    this.yAxisLineColor = bubblePlot.getYAxisLineColor();
  }
  
  public JRExpression getXAxisLabelExpression() {
    return ((JRBubblePlot)this.parent).getXAxisLabelExpression();
  }
  
  public JRFont getXAxisLabelFont() {
    return this.xAxisLabelFont;
  }
  
  public Color getXAxisLabelColor() {
    return JRStyleResolver.getXAxisLabelColor((JRXAxisFormat)this, (JRChartPlot)this);
  }
  
  public Color getOwnXAxisLabelColor() {
    return this.xAxisLabelColor;
  }
  
  public JRFont getXAxisTickLabelFont() {
    return this.xAxisTickLabelFont;
  }
  
  public Color getXAxisTickLabelColor() {
    return JRStyleResolver.getXAxisTickLabelColor((JRXAxisFormat)this, (JRChartPlot)this);
  }
  
  public Color getOwnXAxisTickLabelColor() {
    return this.xAxisTickLabelColor;
  }
  
  public String getXAxisTickLabelMask() {
    return ((JRBubblePlot)this.parent).getXAxisTickLabelMask();
  }
  
  public Color getXAxisLineColor() {
    return JRStyleResolver.getXAxisLineColor((JRXAxisFormat)this, (JRChartPlot)this);
  }
  
  public Color getOwnXAxisLineColor() {
    return this.xAxisLineColor;
  }
  
  public JRExpression getYAxisLabelExpression() {
    return ((JRBubblePlot)this.parent).getYAxisLabelExpression();
  }
  
  public JRFont getYAxisLabelFont() {
    return this.yAxisLabelFont;
  }
  
  public Color getYAxisLabelColor() {
    return JRStyleResolver.getYAxisLabelColor((JRYAxisFormat)this, (JRChartPlot)this);
  }
  
  public Color getOwnYAxisLabelColor() {
    return this.yAxisLabelColor;
  }
  
  public JRFont getYAxisTickLabelFont() {
    return this.yAxisTickLabelFont;
  }
  
  public Color getYAxisTickLabelColor() {
    return JRStyleResolver.getYAxisTickLabelColor((JRYAxisFormat)this, (JRChartPlot)this);
  }
  
  public Color getOwnYAxisTickLabelColor() {
    return this.yAxisTickLabelColor;
  }
  
  public String getYAxisTickLabelMask() {
    return ((JRBubblePlot)this.parent).getYAxisTickLabelMask();
  }
  
  public Color getYAxisLineColor() {
    return JRStyleResolver.getYAxisLineColor((JRYAxisFormat)this, (JRChartPlot)this);
  }
  
  public Color getOwnYAxisLineColor() {
    return this.yAxisLineColor;
  }
  
  public int getScaleType() {
    return ((JRBubblePlot)this.parent).getScaleType();
  }
  
  public void setScaleType(int scaleType) {}
}
