first commit
This commit is contained in:
158
hrmsEjb/net/sf/jasperreports/engine/base/JRBaseGroup.java
Normal file
158
hrmsEjb/net/sf/jasperreports/engine/base/JRBaseGroup.java
Normal file
@@ -0,0 +1,158 @@
|
||||
package net.sf.jasperreports.engine.base;
|
||||
|
||||
import java.io.Serializable;
|
||||
import net.sf.jasperreports.engine.JRBand;
|
||||
import net.sf.jasperreports.engine.JRExpression;
|
||||
import net.sf.jasperreports.engine.JRGroup;
|
||||
import net.sf.jasperreports.engine.JRRuntimeException;
|
||||
import net.sf.jasperreports.engine.JRVariable;
|
||||
import net.sf.jasperreports.engine.design.events.JRChangeEventsSupport;
|
||||
import net.sf.jasperreports.engine.design.events.JRPropertyChangeSupport;
|
||||
|
||||
public class JRBaseGroup implements JRGroup, Serializable, JRChangeEventsSupport {
|
||||
private static final long serialVersionUID = 10200L;
|
||||
|
||||
public static final String PROPERTY_MIN_HEIGHT_TO_START_NEW_PAGE = "minHeightToStartNewPage";
|
||||
|
||||
public static final String PROPERTY_RESET_PAGE_NUMBER = "resetPageNumber";
|
||||
|
||||
public static final String PROPERTY_REPRINT_HEADER_ON_EACH_PAGE = "reprintHeaderOnEachPage";
|
||||
|
||||
public static final String PROPERTY_START_NEW_COLUMN = "startNewColumn";
|
||||
|
||||
public static final String PROPERTY_START_NEW_PAGE = "startNewPage";
|
||||
|
||||
protected String name = null;
|
||||
|
||||
protected boolean isStartNewColumn = false;
|
||||
|
||||
protected boolean isStartNewPage = false;
|
||||
|
||||
protected boolean isResetPageNumber = false;
|
||||
|
||||
protected boolean isReprintHeaderOnEachPage = false;
|
||||
|
||||
protected int minHeightToStartNewPage = 0;
|
||||
|
||||
protected JRExpression expression = null;
|
||||
|
||||
protected JRBand groupHeader = null;
|
||||
|
||||
protected JRBand groupFooter = null;
|
||||
|
||||
protected JRVariable countVariable = null;
|
||||
|
||||
private transient JRPropertyChangeSupport eventSupport;
|
||||
|
||||
protected JRBaseGroup() {}
|
||||
|
||||
protected JRBaseGroup(JRGroup group, JRBaseObjectFactory factory) {
|
||||
factory.put(group, this);
|
||||
this.name = group.getName();
|
||||
this.isStartNewColumn = group.isStartNewColumn();
|
||||
this.isStartNewPage = group.isStartNewPage();
|
||||
this.isResetPageNumber = group.isResetPageNumber();
|
||||
this.isReprintHeaderOnEachPage = group.isReprintHeaderOnEachPage();
|
||||
this.minHeightToStartNewPage = group.getMinHeightToStartNewPage();
|
||||
this.expression = factory.getExpression(group.getExpression());
|
||||
this.groupHeader = factory.getBand(group.getGroupHeader());
|
||||
this.groupFooter = factory.getBand(group.getGroupFooter());
|
||||
this.countVariable = factory.getVariable(group.getCountVariable());
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return this.name;
|
||||
}
|
||||
|
||||
public boolean isStartNewColumn() {
|
||||
return this.isStartNewColumn;
|
||||
}
|
||||
|
||||
public void setStartNewColumn(boolean isStart) {
|
||||
boolean old = this.isStartNewColumn;
|
||||
this.isStartNewColumn = isStart;
|
||||
getEventSupport().firePropertyChange("startNewColumn", old, this.isStartNewColumn);
|
||||
}
|
||||
|
||||
public boolean isStartNewPage() {
|
||||
return this.isStartNewPage;
|
||||
}
|
||||
|
||||
public void setStartNewPage(boolean isStart) {
|
||||
boolean old = this.isStartNewPage;
|
||||
this.isStartNewPage = isStart;
|
||||
getEventSupport().firePropertyChange("startNewPage", old, this.isStartNewPage);
|
||||
}
|
||||
|
||||
public boolean isResetPageNumber() {
|
||||
return this.isResetPageNumber;
|
||||
}
|
||||
|
||||
public void setResetPageNumber(boolean isReset) {
|
||||
boolean old = this.isResetPageNumber;
|
||||
this.isResetPageNumber = isReset;
|
||||
getEventSupport().firePropertyChange("resetPageNumber", old, this.isResetPageNumber);
|
||||
}
|
||||
|
||||
public boolean isReprintHeaderOnEachPage() {
|
||||
return this.isReprintHeaderOnEachPage;
|
||||
}
|
||||
|
||||
public void setReprintHeaderOnEachPage(boolean isReprint) {
|
||||
boolean old = this.isReprintHeaderOnEachPage;
|
||||
this.isReprintHeaderOnEachPage = isReprint;
|
||||
getEventSupport().firePropertyChange("reprintHeaderOnEachPage", old, this.isReprintHeaderOnEachPage);
|
||||
}
|
||||
|
||||
public int getMinHeightToStartNewPage() {
|
||||
return this.minHeightToStartNewPage;
|
||||
}
|
||||
|
||||
public void setMinHeightToStartNewPage(int minHeight) {
|
||||
int old = this.minHeightToStartNewPage;
|
||||
this.minHeightToStartNewPage = minHeight;
|
||||
getEventSupport().firePropertyChange("minHeightToStartNewPage", old, this.minHeightToStartNewPage);
|
||||
}
|
||||
|
||||
public JRExpression getExpression() {
|
||||
return this.expression;
|
||||
}
|
||||
|
||||
public JRBand getGroupHeader() {
|
||||
return this.groupHeader;
|
||||
}
|
||||
|
||||
public JRBand getGroupFooter() {
|
||||
return this.groupFooter;
|
||||
}
|
||||
|
||||
public JRVariable getCountVariable() {
|
||||
return this.countVariable;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
JRBaseGroup clone = null;
|
||||
try {
|
||||
clone = (JRBaseGroup)super.clone();
|
||||
} catch (CloneNotSupportedException e) {
|
||||
throw new JRRuntimeException(e);
|
||||
}
|
||||
if (this.expression != null)
|
||||
clone.expression = (JRExpression)this.expression.clone();
|
||||
if (this.groupHeader != null)
|
||||
clone.groupHeader = (JRBand)this.groupHeader.clone();
|
||||
if (this.groupFooter != null)
|
||||
clone.groupFooter = (JRBand)this.groupFooter.clone();
|
||||
if (this.countVariable != null)
|
||||
clone.countVariable = (JRVariable)this.countVariable.clone();
|
||||
return clone;
|
||||
}
|
||||
|
||||
public JRPropertyChangeSupport getEventSupport() {
|
||||
synchronized (this) {
|
||||
if (this.eventSupport == null)
|
||||
this.eventSupport = new JRPropertyChangeSupport(this);
|
||||
}
|
||||
return this.eventSupport;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user