78 lines
2.6 KiB
Java
78 lines
2.6 KiB
Java
package net.sf.jasperreports.engine.fill;
|
|
|
|
import net.sf.jasperreports.engine.JRCommonRectangle;
|
|
import net.sf.jasperreports.engine.JRException;
|
|
import net.sf.jasperreports.engine.JRExpressionCollector;
|
|
import net.sf.jasperreports.engine.JRGraphicElement;
|
|
import net.sf.jasperreports.engine.JRPrintElement;
|
|
import net.sf.jasperreports.engine.JRPrintRectangle;
|
|
import net.sf.jasperreports.engine.JRRectangle;
|
|
import net.sf.jasperreports.engine.JRStyle;
|
|
import net.sf.jasperreports.engine.JRVisitor;
|
|
import net.sf.jasperreports.engine.util.JRStyleResolver;
|
|
|
|
public class JRFillRectangle extends JRFillGraphicElement implements JRRectangle {
|
|
protected JRFillRectangle(JRBaseFiller filler, JRRectangle rectangle, JRFillObjectFactory factory) {
|
|
super(filler, (JRGraphicElement)rectangle, factory);
|
|
}
|
|
|
|
protected JRFillRectangle(JRFillRectangle rectangle, JRFillCloneFactory factory) {
|
|
super(rectangle, factory);
|
|
}
|
|
|
|
public int getRadius() {
|
|
return JRStyleResolver.getRadius((JRCommonRectangle)this);
|
|
}
|
|
|
|
public Integer getOwnRadius() {
|
|
return ((JRRectangle)this.parent).getOwnRadius();
|
|
}
|
|
|
|
public void setRadius(int radius) {}
|
|
|
|
public void setRadius(Integer radius) {}
|
|
|
|
protected JRTemplateRectangle getJRTemplateRectangle() {
|
|
JRStyle style = getStyle();
|
|
JRTemplateRectangle template = (JRTemplateRectangle)getTemplate(style);
|
|
if (template == null) {
|
|
template = new JRTemplateRectangle((this.band == null) ? null : this.band.getOrigin(), this.filler.getJasperPrint().getDefaultStyleProvider(), this);
|
|
transferProperties(template);
|
|
registerTemplate(style, template);
|
|
}
|
|
return template;
|
|
}
|
|
|
|
protected void evaluate(byte evaluation) throws JRException {
|
|
reset();
|
|
evaluatePrintWhenExpression(evaluation);
|
|
evaluateProperties(evaluation);
|
|
setValueRepeating(true);
|
|
}
|
|
|
|
protected JRPrintElement fill() {
|
|
JRPrintRectangle printRectangle = null;
|
|
printRectangle = new JRTemplatePrintRectangle(getJRTemplateRectangle());
|
|
printRectangle.setX(getX());
|
|
printRectangle.setY(getRelativeY());
|
|
printRectangle.setWidth(getWidth());
|
|
printRectangle.setHeight(getStretchHeight());
|
|
transferProperties((JRPrintElement)printRectangle);
|
|
return (JRPrintElement)printRectangle;
|
|
}
|
|
|
|
public void collectExpressions(JRExpressionCollector collector) {
|
|
collector.collect(this);
|
|
}
|
|
|
|
public void visit(JRVisitor visitor) {
|
|
visitor.visitRectangle(this);
|
|
}
|
|
|
|
protected void resolveElement(JRPrintElement element, byte evaluation) {}
|
|
|
|
public JRFillCloneable createClone(JRFillCloneFactory factory) {
|
|
return new JRFillRectangle(this, factory);
|
|
}
|
|
}
|