001: /*
002: * ============================================================================
003: * GNU Lesser General Public License
004: * ============================================================================
005: *
006: * JasperReports - Free Java report-generating library.
007: * Copyright (C) 2001-2006 JasperSoft Corporation http://www.jaspersoft.com
008: *
009: * This library is free software; you can redistribute it and/or
010: * modify it under the terms of the GNU Lesser General Public
011: * License as published by the Free Software Foundation; either
012: * version 2.1 of the License, or (at your option) any later version.
013: *
014: * This library is distributed in the hope that it will be useful,
015: * but WITHOUT ANY WARRANTY; without even the implied warranty of
016: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
017: * Lesser General Public License for more details.
018: *
019: * You should have received a copy of the GNU Lesser General Public
020: * License along with this library; if not, write to the Free Software
021: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
022: *
023: * JasperSoft Corporation
024: * 303 Second Street, Suite 450 North
025: * San Francisco, CA 94107
026: * http://www.jaspersoft.com
027: */
028: package net.sf.jasperreports.engine.base;
029:
030: import java.io.Serializable;
031:
032: import net.sf.jasperreports.engine.JRBand;
033: import net.sf.jasperreports.engine.JRConstants;
034: import net.sf.jasperreports.engine.JRExpression;
035: import net.sf.jasperreports.engine.JRGroup;
036: import net.sf.jasperreports.engine.JRVariable;
037:
038: /**
039: * @author Teodor Danciu (teodord@users.sourceforge.net)
040: * @version $Id: JRBaseGroup.java 1229 2006-04-19 10:27:35Z teodord $
041: */
042: public class JRBaseGroup implements JRGroup, Serializable {
043:
044: /**
045: *
046: */
047: private static final long serialVersionUID = JRConstants.SERIAL_VERSION_UID;
048:
049: /**
050: *
051: */
052: protected String name = null;
053: protected boolean isStartNewColumn = false;
054: protected boolean isStartNewPage = false;
055: protected boolean isResetPageNumber = false;
056: protected boolean isReprintHeaderOnEachPage = false;
057: protected int minHeightToStartNewPage = 0;
058:
059: /**
060: *
061: */
062: protected JRExpression expression = null;
063: protected JRBand groupHeader = null;
064: protected JRBand groupFooter = null;
065: protected JRVariable countVariable = null;
066:
067: /**
068: *
069: */
070: protected JRBaseGroup() {
071: }
072:
073: /**
074: *
075: */
076: protected JRBaseGroup(JRGroup group, JRBaseObjectFactory factory) {
077: factory.put(group, this );
078:
079: name = group.getName();
080: isStartNewColumn = group.isStartNewColumn();
081: isStartNewPage = group.isStartNewPage();
082: isResetPageNumber = group.isResetPageNumber();
083: isReprintHeaderOnEachPage = group.isReprintHeaderOnEachPage();
084: minHeightToStartNewPage = group.getMinHeightToStartNewPage();
085:
086: expression = factory.getExpression(group.getExpression());
087:
088: groupHeader = factory.getBand(group.getGroupHeader());
089: groupFooter = factory.getBand(group.getGroupFooter());
090: countVariable = factory.getVariable(group.getCountVariable());
091: }
092:
093: /**
094: *
095: */
096: public String getName() {
097: return this .name;
098: }
099:
100: /**
101: *
102: */
103: public boolean isStartNewColumn() {
104: return this .isStartNewColumn;
105: }
106:
107: /**
108: *
109: */
110: public void setStartNewColumn(boolean isStart) {
111: this .isStartNewColumn = isStart;
112: }
113:
114: /**
115: *
116: */
117: public boolean isStartNewPage() {
118: return this .isStartNewPage;
119: }
120:
121: /**
122: *
123: */
124: public void setStartNewPage(boolean isStart) {
125: this .isStartNewPage = isStart;
126: }
127:
128: /**
129: *
130: */
131: public boolean isResetPageNumber() {
132: return this .isResetPageNumber;
133: }
134:
135: /**
136: *
137: */
138: public void setResetPageNumber(boolean isReset) {
139: this .isResetPageNumber = isReset;
140: }
141:
142: /**
143: *
144: */
145: public boolean isReprintHeaderOnEachPage() {
146: return this .isReprintHeaderOnEachPage;
147: }
148:
149: /**
150: *
151: */
152: public void setReprintHeaderOnEachPage(boolean isReprint) {
153: this .isReprintHeaderOnEachPage = isReprint;
154: }
155:
156: /**
157: *
158: */
159: public int getMinHeightToStartNewPage() {
160: return this .minHeightToStartNewPage;
161: }
162:
163: /**
164: *
165: */
166: public void setMinHeightToStartNewPage(int minHeight) {
167: this .minHeightToStartNewPage = minHeight;
168: }
169:
170: /**
171: *
172: */
173: public JRExpression getExpression() {
174: return this .expression;
175: }
176:
177: /**
178: *
179: */
180: public JRBand getGroupHeader() {
181: return this .groupHeader;
182: }
183:
184: /**
185: *
186: */
187: public JRBand getGroupFooter() {
188: return this .groupFooter;
189: }
190:
191: /**
192: *
193: */
194: public JRVariable getCountVariable() {
195: return this.countVariable;
196: }
197:
198: }
|