first commit
This commit is contained in:
113
hrmsEjb/net/sf/jasperreports/engine/fill/JRFillStaticText.java
Normal file
113
hrmsEjb/net/sf/jasperreports/engine/fill/JRFillStaticText.java
Normal 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;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user