package net.sf.jasperreports.crosstabs.design;

import net.sf.jasperreports.crosstabs.JRCrosstabParameter;
import net.sf.jasperreports.engine.JRExpression;
import net.sf.jasperreports.engine.design.JRDesignParameter;

public class JRDesignCrosstabParameter extends JRDesignParameter implements JRCrosstabParameter {
  private static final long serialVersionUID = 10200L;
  
  public static final String PROPERTY_VALUE_EXPRESSION = "valueExpression";
  
  protected JRExpression valueExpression;
  
  public JRExpression getExpression() {
    return this.valueExpression;
  }
  
  public void setExpression(JRExpression expression) {
    Object old = this.valueExpression;
    this.valueExpression = expression;
    getEventSupport().firePropertyChange("valueExpression", old, this.valueExpression);
  }
  
  public Object clone() {
    JRDesignCrosstabParameter clone = (JRDesignCrosstabParameter)super.clone();
    if (this.valueExpression != null)
      clone.valueExpression = (JRExpression)this.valueExpression.clone(); 
    return clone;
  }
}
