72 lines
2.2 KiB
Java
72 lines
2.2 KiB
Java
package net.sf.jasperreports.charts.design;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
import net.sf.jasperreports.charts.JRXySeries;
|
|
import net.sf.jasperreports.charts.JRXyzDataset;
|
|
import net.sf.jasperreports.charts.JRXyzSeries;
|
|
import net.sf.jasperreports.engine.JRChartDataset;
|
|
import net.sf.jasperreports.engine.JRExpressionCollector;
|
|
import net.sf.jasperreports.engine.design.JRDesignChartDataset;
|
|
import net.sf.jasperreports.engine.design.JRVerifier;
|
|
|
|
public class JRDesignXyzDataset extends JRDesignChartDataset implements JRXyzDataset {
|
|
private static final long serialVersionUID = 10200L;
|
|
|
|
public static final String PROPERTY_XYZ_SERIES = "xyzSeries";
|
|
|
|
private List xyzSeriesList = new ArrayList();
|
|
|
|
public JRDesignXyzDataset(JRChartDataset dataset) {
|
|
super(dataset);
|
|
}
|
|
|
|
public JRXyzSeries[] getSeries() {
|
|
JRXyzSeries[] xyzSeriesArray = new JRXyzSeries[this.xyzSeriesList.size()];
|
|
this.xyzSeriesList.toArray((Object[])xyzSeriesArray);
|
|
return xyzSeriesArray;
|
|
}
|
|
|
|
public List getSeriesList() {
|
|
return this.xyzSeriesList;
|
|
}
|
|
|
|
public void addXyzSeries(JRXyzSeries xyzSeries) {
|
|
this.xyzSeriesList.add(xyzSeries);
|
|
getEventSupport().fireCollectionElementAddedEvent("xyzSeries", xyzSeries, this.xyzSeriesList.size() - 1);
|
|
}
|
|
|
|
public JRXyzSeries removeXyzSeries(JRXyzSeries xyzSeries) {
|
|
if (xyzSeries != null) {
|
|
int idx = this.xyzSeriesList.indexOf(xyzSeries);
|
|
if (idx >= 0) {
|
|
this.xyzSeriesList.remove(idx);
|
|
getEventSupport().fireCollectionElementRemovedEvent("xyzSeries", xyzSeries, idx);
|
|
}
|
|
}
|
|
return xyzSeries;
|
|
}
|
|
|
|
public byte getDatasetType() {
|
|
return 4;
|
|
}
|
|
|
|
public void collectExpressions(JRExpressionCollector collector) {
|
|
collector.collect(this);
|
|
}
|
|
|
|
public void validate(JRVerifier verifier) {
|
|
verifier.verify(this);
|
|
}
|
|
|
|
public Object clone() {
|
|
JRDesignXyzDataset clone = (JRDesignXyzDataset)super.clone();
|
|
if (this.xyzSeriesList != null) {
|
|
clone.xyzSeriesList = new ArrayList(this.xyzSeriesList.size());
|
|
for (int i = 0; i < this.xyzSeriesList.size(); i++)
|
|
clone.xyzSeriesList.add(((JRXySeries)this.xyzSeriesList.get(i)).clone());
|
|
}
|
|
return clone;
|
|
}
|
|
}
|