first commit

This commit is contained in:
2025-07-28 13:56:49 +05:30
commit e9eb805edb
3438 changed files with 520990 additions and 0 deletions

View File

@@ -0,0 +1,113 @@
package net.sf.jasperreports.engine.fill;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRExpressionCollector;
import net.sf.jasperreports.engine.JRPrintElement;
import net.sf.jasperreports.engine.JRStaticText;
import net.sf.jasperreports.engine.JRStyle;
import net.sf.jasperreports.engine.JRTextElement;
import net.sf.jasperreports.engine.JRVisitor;
public class JRFillStaticText extends JRFillTextElement implements JRStaticText {
protected JRFillStaticText(JRBaseFiller filler, JRStaticText staticText, JRFillObjectFactory factory) {
super(filler, (JRTextElement)staticText, factory);
String text = processMarkupText(staticText.getText());
if (text == null)
text = "";
setRawText(text);
}
protected JRFillStaticText(JRFillStaticText staticText, JRFillCloneFactory factory) {
super(staticText, factory);
String text = processMarkupText(staticText.getText());
if (text == null)
text = "";
setRawText(text);
}
public void setText(String text) {}
protected JRTemplateText getJRTemplateText() {
JRStyle style = getStyle();
JRTemplateText template = (JRTemplateText)getTemplate(style);
if (template == null) {
template = new JRTemplateText((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);
setTextStart(0);
setTextEnd(0);
setValueRepeating(true);
}
protected boolean prepare(int availableStretchHeight, boolean isOverflow) throws JRException {
boolean willOverflow = false;
super.prepare(availableStretchHeight, isOverflow);
if (!isToPrint())
return willOverflow;
boolean isToPrint = true;
boolean isReprinted = false;
if (isOverflow && isAlreadyPrinted() && !isPrintWhenDetailOverflows())
isToPrint = false;
if (isToPrint && isPrintWhenExpressionNull() && !isPrintRepeatedValues())
if ((!isPrintInFirstWholeBand() || !getBand().isFirstWholeOnPageColumn()) && (getPrintWhenGroupChanges() == null || !getBand().isNewGroup(getPrintWhenGroupChanges())) && (!isOverflow || !isPrintWhenDetailOverflows()))
isToPrint = false;
if (isToPrint && availableStretchHeight < getRelativeY() - getY() - getBandBottomY()) {
isToPrint = false;
willOverflow = true;
}
if (isToPrint && isOverflow && isPrintWhenDetailOverflows() && (isAlreadyPrinted() || (!isAlreadyPrinted() && !isPrintRepeatedValues())))
isReprinted = true;
setTextStart(0);
setTextEnd(0);
if (isToPrint)
chopTextElement(0);
setToPrint(isToPrint);
setReprinted(isReprinted);
return willOverflow;
}
protected JRPrintElement fill() {
JRTemplatePrintText text = new JRTemplatePrintText(getJRTemplateText());
text.setX(getX());
text.setY(getRelativeY());
text.setWidth(getWidth());
if (getRotation() == 0) {
text.setHeight(getStretchHeight());
} else {
text.setHeight(getHeight());
}
text.setRunDirection(getRunDirection());
text.setLineSpacingFactor(getLineSpacingFactor());
text.setLeadingOffset(getLeadingOffset());
text.setTextHeight(getTextHeight());
transferProperties(text);
setPrintText(text);
return text;
}
public void collectExpressions(JRExpressionCollector collector) {
collector.collect(this);
}
public void visit(JRVisitor visitor) {
visitor.visitStaticText(this);
}
protected void resolveElement(JRPrintElement element, byte evaluation) {}
public JRFillCloneable createClone(JRFillCloneFactory factory) {
return new JRFillStaticText(this, factory);
}
protected boolean canOverflow() {
return false;
}
}