Files
HRMS/hrmsEjb/net/sf/jasperreports/engine/fill/JRTemplateGraphicElement.java
2025-07-28 13:56:49 +05:30

94 lines
2.6 KiB
Java

package net.sf.jasperreports.engine.fill;
import java.awt.Color;
import java.io.IOException;
import java.io.ObjectInputStream;
import net.sf.jasperreports.engine.JRCommonGraphicElement;
import net.sf.jasperreports.engine.JRDefaultStyleProvider;
import net.sf.jasperreports.engine.JRElement;
import net.sf.jasperreports.engine.JRGraphicElement;
import net.sf.jasperreports.engine.JROrigin;
import net.sf.jasperreports.engine.JRPen;
import net.sf.jasperreports.engine.JRPenContainer;
import net.sf.jasperreports.engine.base.JRBasePen;
import net.sf.jasperreports.engine.util.JRPenUtil;
import net.sf.jasperreports.engine.util.JRStyleResolver;
public abstract class JRTemplateGraphicElement extends JRTemplateElement implements JRCommonGraphicElement {
private static final long serialVersionUID = 10200L;
protected JRPen linePen = null;
private Byte fill = null;
private Byte pen;
protected JRTemplateGraphicElement(JROrigin origin, JRDefaultStyleProvider defaultStyleProvider) {
super(origin, defaultStyleProvider);
}
protected JRTemplateGraphicElement(JROrigin origin, JRDefaultStyleProvider defaultStyleProvider, JRGraphicElement graphicElement) {
super(origin, defaultStyleProvider);
setGraphicElement(graphicElement);
}
protected void setGraphicElement(JRGraphicElement graphicElement) {
setElement((JRElement)graphicElement);
this.linePen = graphicElement.getLinePen().clone((JRPenContainer)this);
setFill(graphicElement.getOwnFill());
}
public JRPen getLinePen() {
return this.linePen;
}
public byte getPen() {
return JRPenUtil.getPenFromLinePen(this.linePen);
}
public Byte getOwnPen() {
return JRPenUtil.getOwnPenFromLinePen(this.linePen);
}
public void setPen(byte pen) {
setPen(new Byte(pen));
}
public void setPen(Byte pen) {
JRPenUtil.setLinePenFromPen(pen, this.linePen);
}
public byte getFill() {
return JRStyleResolver.getFill(this);
}
public Byte getOwnFill() {
return this.fill;
}
protected void setFill(byte fill) {
this.fill = new Byte(fill);
}
protected void setFill(Byte fill) {
this.fill = fill;
}
public Float getDefaultLineWidth() {
return JRPen.LINE_WIDTH_1;
}
public Color getDefaultLineColor() {
return getForecolor();
}
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException {
in.defaultReadObject();
if (this.linePen == null) {
this.linePen = (JRPen)new JRBasePen((JRPenContainer)this);
JRPenUtil.setLinePenFromPen(this.pen, this.linePen);
this.pen = null;
}
}
}