121 lines
4.5 KiB
Java
121 lines
4.5 KiB
Java
package net.sf.jasperreports.crosstabs.design;
|
|
|
|
import java.beans.PropertyChangeListener;
|
|
import java.beans.PropertyChangeSupport;
|
|
import net.sf.jasperreports.crosstabs.base.JRBaseCrosstabMeasure;
|
|
import net.sf.jasperreports.engine.JRExpression;
|
|
import net.sf.jasperreports.engine.JRVariable;
|
|
import net.sf.jasperreports.engine.design.JRDesignVariable;
|
|
import net.sf.jasperreports.engine.design.events.JRChangeEventsSupport;
|
|
import net.sf.jasperreports.engine.design.events.JRPropertyChangeSupport;
|
|
|
|
public class JRDesignCrosstabMeasure extends JRBaseCrosstabMeasure implements JRChangeEventsSupport {
|
|
private static final long serialVersionUID = 10200L;
|
|
|
|
public static final String PROPERTY_CALCULATION = "calculation";
|
|
|
|
public static final String PROPERTY_INCREMENTER_FACTORY_CLASS_NAME = "incrementerFactoryClassName";
|
|
|
|
public static final String PROPERTY_NAME = "name";
|
|
|
|
public static final String PROPERTY_PERCENTAGE_CALCULATION_CLASS_NAME = "percentageCalculatorClassName";
|
|
|
|
public static final String PROPERTY_PERCENTAGE_OF_TYPE = "percentageOfType";
|
|
|
|
public static final String PROPERTY_VALUE_CLASS = "valueClassName";
|
|
|
|
public static final String PROPERTY_VALUE_EXPRESSION = "expression";
|
|
|
|
private JRDesignVariable designVariable;
|
|
|
|
private transient JRPropertyChangeSupport eventSupport;
|
|
|
|
public JRDesignCrosstabMeasure() {
|
|
this.variable = (JRVariable)(this.designVariable = new JRDesignVariable());
|
|
this.designVariable.setCalculation((byte)8);
|
|
this.designVariable.setSystemDefined(true);
|
|
}
|
|
|
|
public void setCalculation(byte calculation) {
|
|
byte old = this.calculation;
|
|
this.calculation = calculation;
|
|
getEventSupport().firePropertyChange("calculation", old, this.calculation);
|
|
}
|
|
|
|
public void setValueExpression(JRExpression expression) {
|
|
Object old = this.expression;
|
|
this.expression = expression;
|
|
getEventSupport().firePropertyChange("expression", old, this.expression);
|
|
}
|
|
|
|
public void setIncrementerFactoryClassName(String incrementerFactoryClassName) {
|
|
Object old = this.incrementerFactoryClassName;
|
|
this.incrementerFactoryClassName = incrementerFactoryClassName;
|
|
this.incrementerFactoryClass = null;
|
|
this.incrementerFactoryClassRealName = null;
|
|
getEventSupport().firePropertyChange("incrementerFactoryClassName", old, this.incrementerFactoryClassName);
|
|
}
|
|
|
|
public void setName(String name) {
|
|
Object old = this.name;
|
|
this.name = name;
|
|
this.designVariable.setName(name);
|
|
getEventSupport().firePropertyChange("name", old, this.name);
|
|
}
|
|
|
|
public void setPercentageOfType(byte percentageOfType) {
|
|
byte old = this.percentageOfType;
|
|
this.percentageOfType = percentageOfType;
|
|
getEventSupport().firePropertyChange("percentageOfType", old, this.percentageOfType);
|
|
}
|
|
|
|
public void setPercentageCalculatorClassName(String percentageCalculatorClassName) {
|
|
Object old = this.percentageCalculatorClassName;
|
|
this.percentageCalculatorClassName = percentageCalculatorClassName;
|
|
this.percentageCalculatorClass = null;
|
|
this.percentageCalculatorClassRealName = null;
|
|
getEventSupport().firePropertyChange("percentageCalculatorClassName", old, this.percentageCalculatorClassName);
|
|
}
|
|
|
|
public void setValueClassName(String valueClassName) {
|
|
String old = this.valueClassName;
|
|
this.valueClassName = valueClassName;
|
|
this.valueClass = null;
|
|
this.valueClassRealName = null;
|
|
this.designVariable.setValueClassName(valueClassName);
|
|
getEventSupport().firePropertyChange("valueClassName", old, this.valueClassName);
|
|
}
|
|
|
|
public void addPropertyChangeListener(PropertyChangeListener l) {
|
|
getPropertyChangeSupport().addPropertyChangeListener(l);
|
|
}
|
|
|
|
public void addPropertyChangeListener(String propName, PropertyChangeListener l) {
|
|
getPropertyChangeSupport().addPropertyChangeListener(propName, l);
|
|
}
|
|
|
|
public void removePropertyChangeListener(PropertyChangeListener l) {
|
|
getPropertyChangeSupport().removePropertyChangeListener(l);
|
|
}
|
|
|
|
public void removePropertyChangeListener(String propName, PropertyChangeListener l) {
|
|
getPropertyChangeSupport().removePropertyChangeListener(propName, l);
|
|
}
|
|
|
|
protected PropertyChangeSupport getPropertyChangeSupport() {
|
|
return (PropertyChangeSupport)getEventSupport();
|
|
}
|
|
|
|
public Object clone() {
|
|
return null;
|
|
}
|
|
|
|
public JRPropertyChangeSupport getEventSupport() {
|
|
synchronized (this) {
|
|
if (this.eventSupport == null)
|
|
this.eventSupport = new JRPropertyChangeSupport(this);
|
|
}
|
|
return this.eventSupport;
|
|
}
|
|
}
|