ASF Bugzilla – Attachment 2900 Details for
Bug 11721
[PATCH] multiply sheet
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch to add clone support for sheets
newclone.patch (text/plain), 80.00 KB, created by
Jason Height
on 2002-09-03 10:52:18 UTC
(
hide
)
Description:
Patch to add clone support for sheets
Filename:
MIME Type:
Creator:
Jason Height
Created:
2002-09-03 10:52:18 UTC
Size:
80.00 KB
patch
obsolete
>? jakarta-poi/build/classes >? jakarta-poi/build/contrib >? jakarta-poi/build/docs >? jakarta-poi/build/examples >? jakarta-poi/build/jakarta-poi-1.8.0-dev-20020903.jar >? jakarta-poi/build/jakarta-poi-contrib-1.8.0-dev-20020903.jar >? jakarta-poi/build/jakarta-poi-examples-1.8.0-dev-20020903.jar >? jakarta-poi/build/jakarta-poi-scratchpad-1.8.0-dev-20020903.jar >? jakarta-poi/build/java >? jakarta-poi/build/scratchpad >? jakarta-poi/build/testcases >? jakarta-poi/build/work >? jakarta-poi/src/java/Test.java >? jakarta-poi/tools/cents/forrest.cent/legal >? jakarta-poi/tools/cents/forrest.cent/tasks.properties >? jakarta-poi/tools/cents/forrest.cent/xbuild.xml >? jakarta-poi/tools/cents/forrest.cent/conf/cocoon.xconf >? jakarta-poi/tools/cents/forrest.cent/conf/sitemap.xmap >? jakarta-poi/tools/cents/forrest.cent/lib/avalon-excalibur-4.1.jar >? jakarta-poi/tools/cents/forrest.cent/lib/avalon-framework-4.1.2.jar >? jakarta-poi/tools/cents/forrest.cent/lib/avalon-scratchpad-20020212.jar >? jakarta-poi/tools/cents/forrest.cent/lib/cocoon-scratchpad-part.jar >? jakarta-poi/tools/cents/forrest.cent/lib/cocoon.jar >? jakarta-poi/tools/cents/forrest.cent/lib/commons-collections-1.0.jar >? jakarta-poi/tools/cents/forrest.cent/lib/commons-httpclient-20011012.jar >? jakarta-poi/tools/cents/forrest.cent/lib/jakarta-regexp-1.2.jar >? jakarta-poi/tools/cents/forrest.cent/lib/logkit-1.0.1.jar >? jakarta-poi/tools/cents/forrest.cent/lib/resolver-20020130.jar >? jakarta-poi/tools/cents/forrest.cent/resources/library/xslt/changes2document.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/library/xslt/copyover.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/library/xslt/doclist.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/library/xslt/doclist2document.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/library/xslt/faq2document.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/library/xslt/filterlinks.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/library/xslt/todo2document.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/resources/images >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/catalog >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/catalog.xcat >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/CatalogManager.properties >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/README >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/dtd/book-cocoon-v10.dtd >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/dtd/changes-v11.dtd >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/dtd/document-v11.dtd >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/dtd/faq-v11.dtd >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/dtd/javadoc-v04draft.dtd >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/dtd/project.dtd >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/dtd/specification-v11.dtd >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/dtd/todo-v11.dtd >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/dtd/xgump.dtd >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/entity/ISOdia.pen >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/entity/ISOgrk1.pen >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/entity/ISOlat1.pen >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/entity/ISOnum.pen >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/entity/ISOpub.pen >? jakarta-poi/tools/cents/forrest.cent/resources/resources/schema/entity/ISOtech.pen >? jakarta-poi/tools/cents/forrest.cent/resources/skins/avalon-site >? jakarta-poi/tools/cents/forrest.cent/resources/skins/basic >? jakarta-poi/tools/cents/forrest.cent/resources/skins/forrest-site >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site2 >? jakarta-poi/tools/cents/forrest.cent/resources/skins/xml-apache-site >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/images/add.jpg >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/images/ant_logo_medium.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/images/built-with-cocoon.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/images/favicon.ico >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/images/krysalis-compatible.jpg >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/images/note.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/images/remove.jpg >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/images/update.jpg >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/images/void.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/xslt/html/book2menu.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/xslt/html/document2html.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/skins/jakarta-site/xslt/html/site2xhtml.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/css/compact.css >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/css/main.css >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/css/ns4_toxins.css >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/css/print.css >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/add.jpg >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/ant_logo_medium.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/built-with-cocoon.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/favicon.ico >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/grn_alert.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/icon_alert.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/icon_alertsml.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/icon_confirmsml.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/icon_downarrow.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/icon_downarrow_off.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/icon_downarrow_on.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/icon_help.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/icon_infosml.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/icon_uparrow.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/icon_uparrow_off.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/icon_uparrow_on.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/krysalis-compatible.jpg >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/note.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/nw_min.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/remove.jpg >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/seperator.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/seperator2.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/seperator3.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/se_min.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/strich.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/sw_min.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/update.jpg >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/up_pointer.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/images/void.gif >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/xslt/html/book2menu.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/xslt/html/document2html.xsl >? jakarta-poi/tools/cents/forrest.cent/resources/skins/scarab-site/xslt/html/site2xhtml.xsl >? jakarta-poi/tools/cents/junit.cent/legal >? jakarta-poi/tools/cents/junit.cent/lib >? jakarta-poi/tools/cents/junit.cent/tasks.properties >? jakarta-poi/tools/cents/junit.cent/xbuild.xml >Index: jakarta-poi/src/java/org/apache/poi/hssf/model/Sheet.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/model/Sheet.java,v >retrieving revision 1.16 >diff -u -w -r1.16 Sheet.java >--- jakarta-poi/src/java/org/apache/poi/hssf/model/Sheet.java 21 Aug 2002 11:56:49 -0000 1.16 >+++ jakarta-poi/src/java/org/apache/poi/hssf/model/Sheet.java 3 Sep 2002 10:50:03 -0000 >@@ -80,6 +80,7 @@ > * @author Andrew C. Oliver (acoliver at apache dot org) > * @author Glen Stampoultzis (glens at apache.org) > * @author Shawn Laubach (laubach at acm.org) Just Gridlines, Headers, Footers, and PrintSetup >+ * @author Jason Height (jheight at chariot dot net dot au) Clone support > * > * @see org.apache.poi.hssf.model.Workbook > * @see org.apache.poi.hssf.usermodel.HSSFSheet >@@ -270,6 +271,46 @@ > log.log(log.DEBUG, "sheet createSheet (existing file) exited"); > return retval; > } >+ >+ /** >+ * Clones the low level records of this sheet and returns the new sheet instance. >+ */ >+ public Sheet cloneSheet() >+ { >+ ArrayList clonedRecords = new ArrayList(this.records.size()); >+ for (int i=0; i<this.records.size();i++) { >+ Record rec = (Record)((Record)this.records.get(i)).clone(); >+ //Need to pull out the Row record and the Value records from their >+ //Aggregates. >+ //This is probably the best way to do it since we probably dont want the createSheet >+ //To cater for these artificial Record types >+ if (rec instanceof RowRecordsAggregate) { >+ RowRecordsAggregate rrAgg = (RowRecordsAggregate)rec; >+ for (Iterator rowIter = rrAgg.getIterator();rowIter.hasNext();) { >+ Record rowRec = (Record)rowIter.next(); >+ clonedRecords.add(rowRec); >+ } >+ } else if (rec instanceof ValueRecordsAggregate) { >+ ValueRecordsAggregate vrAgg = (ValueRecordsAggregate)rec; >+ for (Iterator cellIter = vrAgg.getIterator();cellIter.hasNext();) { >+ Record valRec = (Record)cellIter.next(); >+ clonedRecords.add(valRec); >+ } >+ } else if (rec instanceof FormulaRecordAggregate) { >+ FormulaRecordAggregate fmAgg = (FormulaRecordAggregate)rec; >+ Record fmAggRec = fmAgg.getFormulaRecord(); >+ if (fmAggRec != null) >+ clonedRecords.add(fmAggRec); >+ fmAggRec = fmAgg.getStringRecord(); >+ if (fmAggRec != null) >+ clonedRecords.add(fmAggRec); >+ } else { >+ clonedRecords.add(rec); >+ } >+ } >+ return createSheet(clonedRecords, 0, 0); >+ } >+ > > /** > * read support (offset = 0) Same as createSheet(Record[] recs, int, int) >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/BOFRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/BOFRecord.java,v >retrieving revision 1.2 >diff -u -w -r1.2 BOFRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/BOFRecord.java 11 Feb 2002 03:49:39 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/BOFRecord.java 3 Sep 2002 10:50:04 -0000 >@@ -64,6 +64,7 @@ > * Used in sheets and workbooks.<P> > * REFERENCE: PG 289 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -357,5 +358,16 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ BOFRecord rec = new BOFRecord(); >+ rec.field_1_version = field_1_version; >+ rec.field_2_type = field_2_type; >+ rec.field_3_build = field_3_build; >+ rec.field_4_year = field_4_year; >+ rec.field_5_history = field_5_history; >+ rec.field_6_rversion = field_6_rversion; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/BlankRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/BlankRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 BlankRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/BlankRecord.java 10 May 2002 03:01:10 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/BlankRecord.java 3 Sep 2002 10:50:05 -0000 >@@ -67,6 +67,7 @@ > * Description: Represents a column in a row with no value but with styling.<P> > * REFERENCE: PG 287 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -348,5 +349,13 @@ > return true; > } > return false; >+ } >+ >+ public Object clone() { >+ BlankRecord rec = new BlankRecord(); >+ rec.field_1_row = field_1_row; >+ rec.field_2_col = field_2_col; >+ rec.field_3_xf = field_3_xf; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/BoolErrRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/BoolErrRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 BoolErrRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/BoolErrRecord.java 10 May 2002 03:01:10 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/BoolErrRecord.java 3 Sep 2002 10:50:05 -0000 >@@ -66,6 +66,7 @@ > * Creates new BoolErrRecord. <P> > * REFERENCE: PG ??? Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Michael P. Harhen >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -412,5 +413,15 @@ > return true; > } > return false; >+ } >+ >+ public Object clone() { >+ BoolErrRecord rec = new BoolErrRecord(); >+ rec.field_1_row = field_1_row; >+ rec.field_2_column = field_2_column; >+ rec.field_3_xf_index = field_3_xf_index; >+ rec.field_4_bBoolErr = field_4_bBoolErr; >+ rec.field_5_fError = field_5_fError; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/CalcCountRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/CalcCountRecord.java,v >retrieving revision 1.2 >diff -u -w -r1.2 CalcCountRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/CalcCountRecord.java 11 Feb 2002 03:49:39 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/CalcCountRecord.java 3 Sep 2002 10:50:05 -0000 >@@ -66,6 +66,7 @@ > * loop in the event the formulas are not independant. <P> > * REFERENCE: PG 292 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > * @see org.apache.poi.hssf.record.CalcModeRecord > */ >@@ -168,5 +169,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ CalcCountRecord rec = new CalcCountRecord(); >+ rec.field_1_iterations = field_1_iterations; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/CalcModeRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/CalcModeRecord.java,v >retrieving revision 1.2 >diff -u -w -r1.2 CalcModeRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/CalcModeRecord.java 11 Feb 2002 03:49:39 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/CalcModeRecord.java 3 Sep 2002 10:50:05 -0000 >@@ -64,6 +64,7 @@ > * except for tables.<P> > * REFERENCE: PG 292 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > * @see org.apache.poi.hssf.record.CalcCountRecord > */ >@@ -193,5 +194,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ CalcModeRecord rec = new CalcModeRecord(); >+ rec.field_1_calcmode = field_1_calcmode; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/CellValueRecordInterface.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/CellValueRecordInterface.java,v >retrieving revision 1.3 >diff -u -w -r1.3 CellValueRecordInterface.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/CellValueRecordInterface.java 10 May 2002 03:01:10 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/CellValueRecordInterface.java 3 Sep 2002 10:50:06 -0000 >@@ -66,6 +66,7 @@ > * them. > * > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * > * @see org.apache.poi.hssf.model.Sheet > * @see org.apache.poi.hssf.record.Record >@@ -138,4 +139,6 @@ > */ > > public boolean isEqual(CellValueRecordInterface i); >+ >+ public Object clone(); > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultColWidthRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultColWidthRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 DefaultColWidthRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultColWidthRecord.java 11 Feb 2002 10:45:50 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultColWidthRecord.java 3 Sep 2002 10:50:06 -0000 >@@ -63,6 +63,7 @@ > * width set.<P> > * REFERENCE: PG 302 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -164,5 +165,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ DefaultColWidthRecord rec = new DefaultColWidthRecord(); >+ rec.field_1_col_width = field_1_col_width; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultRowHeightRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultRowHeightRecord.java,v >retrieving revision 1.2 >diff -u -w -r1.2 DefaultRowHeightRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultRowHeightRecord.java 11 Feb 2002 03:49:39 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/DefaultRowHeightRecord.java 3 Sep 2002 10:50:06 -0000 >@@ -63,6 +63,7 @@ > * heights. > * REFERENCE: PG 301 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -189,5 +190,12 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ DefaultRowHeightRecord rec = new DefaultRowHeightRecord(); >+ rec.field_1_option_flags = field_1_option_flags; >+ rec.field_2_row_height = field_2_row_height; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/DeltaRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/DeltaRecord.java,v >retrieving revision 1.2 >diff -u -w -r1.2 DeltaRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/DeltaRecord.java 11 Feb 2002 03:49:39 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/DeltaRecord.java 3 Sep 2002 10:50:06 -0000 >@@ -62,6 +62,7 @@ > * Description: controls the accuracy of the calculations<P> > * REFERENCE: PG 303 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -166,5 +167,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ DeltaRecord rec = new DeltaRecord(); >+ rec.field_1_max_change = field_1_max_change; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/DimensionsRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/DimensionsRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 DimensionsRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/DimensionsRecord.java 11 Feb 2002 10:45:50 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/DimensionsRecord.java 3 Sep 2002 10:50:06 -0000 >@@ -63,6 +63,7 @@ > * of a sheet.<P> > * REFERENCE: PG 303 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -243,5 +244,15 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ DimensionsRecord rec = new DimensionsRecord(); >+ rec.field_1_first_row = field_1_first_row; >+ rec.field_2_last_row = field_2_last_row; >+ rec.field_3_first_col = field_3_first_col; >+ rec.field_4_last_col = field_4_last_col; >+ rec.field_5_zero = field_5_zero; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/EOFRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/EOFRecord.java,v >retrieving revision 1.2 >diff -u -w -r1.2 EOFRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/EOFRecord.java 11 Feb 2002 03:49:39 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/EOFRecord.java 3 Sep 2002 10:50:06 -0000 >@@ -64,6 +64,7 @@ > * HSSF File<P> > * REFERENCE: PG 307 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -140,5 +141,10 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ EOFRecord rec = new EOFRecord(); >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/FooterRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/FooterRecord.java,v >retrieving revision 1.6 >diff -u -w -r1.6 FooterRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/FooterRecord.java 8 Apr 2002 14:13:25 -0000 1.6 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/FooterRecord.java 3 Sep 2002 10:50:07 -0000 >@@ -64,6 +64,7 @@ > * REFERENCE: PG 317 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) > * @author Shawn Laubach (laubach@acm.org) Modified 3/14/02 >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -217,5 +218,12 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ FooterRecord rec = new FooterRecord(); >+ rec.field_1_footer_len = field_1_footer_len; >+ rec.field_2_footer = field_2_footer; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/FormulaRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/FormulaRecord.java,v >retrieving revision 1.14 >diff -u -w -r1.14 FormulaRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/FormulaRecord.java 21 Aug 2002 11:56:49 -0000 1.14 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/FormulaRecord.java 3 Sep 2002 10:50:08 -0000 >@@ -70,6 +70,7 @@ > * Formula Record. > * REFERENCE: PG 317/444 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -568,4 +569,25 @@ > return buffer.toString(); > } > >+ public Object clone() { >+ FormulaRecord rec = new FormulaRecord(); >+ rec.field_1_row = field_1_row; >+ rec.field_2_column = field_2_column; >+ rec.field_3_xf = field_3_xf; >+ rec.field_4_value = field_4_value; >+ rec.field_5_options = field_5_options; >+ rec.field_6_zero = field_6_zero; >+ rec.field_7_expression_len = field_7_expression_len; >+ rec.field_8_parsed_expr = new Stack(); >+ int size = 0; >+ if (field_8_parsed_expr != null) >+ size = field_8_parsed_expr.size(); >+ for (int i=0; i< size; i++) { >+ Ptg ptg = (Ptg)((Ptg)field_8_parsed_expr.get(i)).clone(); >+ rec.field_8_parsed_expr.set(i, ptg); >+ } >+ rec.all_data = all_data; >+ return rec; >+ } >+ > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/GridsetRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/GridsetRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 GridsetRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/GridsetRecord.java 11 Feb 2002 04:23:09 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/GridsetRecord.java 3 Sep 2002 10:50:08 -0000 >@@ -65,6 +65,7 @@ > * > * @author Andrew C. Oliver (acoliver at apache dot org) > * @author Glen Stampoultzis (glens at apache.org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * > * @version 2.0-pre > */ >@@ -175,5 +176,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ GridsetRecord rec = new GridsetRecord(); >+ rec.field_1_gridset_flag = field_1_gridset_flag; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/GutsRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/GutsRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 GutsRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/GutsRecord.java 11 Feb 2002 10:45:50 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/GutsRecord.java 3 Sep 2002 10:50:08 -0000 >@@ -62,6 +62,7 @@ > * Description: Row/column gutter sizes <P> > * REFERENCE: PG 320 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -245,5 +246,14 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ GutsRecord rec = new GutsRecord(); >+ rec.field_1_left_row_gutter = field_1_left_row_gutter; >+ rec.field_2_top_col_gutter = field_2_top_col_gutter; >+ rec.field_3_row_level_max = field_3_row_level_max; >+ rec.field_4_col_level_max = field_4_col_level_max; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/HCenterRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/HCenterRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 HCenterRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/HCenterRecord.java 11 Feb 2002 10:45:50 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/HCenterRecord.java 3 Sep 2002 10:50:08 -0000 >@@ -62,6 +62,7 @@ > * Description: whether to center between horizontal margins<P> > * REFERENCE: PG 320 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -169,5 +170,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ HCenterRecord rec = new HCenterRecord(); >+ rec.field_1_hcenter = field_1_hcenter; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/HeaderRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/HeaderRecord.java,v >retrieving revision 1.6 >diff -u -w -r1.6 HeaderRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/HeaderRecord.java 8 Apr 2002 14:13:32 -0000 1.6 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/HeaderRecord.java 3 Sep 2002 10:50:09 -0000 >@@ -64,6 +64,7 @@ > * REFERENCE: PG 321 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) > * @author Shawn Laubach (laubach@acm.org) Modified 3/14/02 >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -219,5 +220,12 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ HeaderRecord rec = new HeaderRecord(); >+ rec.field_1_header_len = field_1_header_len; >+ rec.field_2_header = field_2_header; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/IndexRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/IndexRecord.java,v >retrieving revision 1.2 >diff -u -w -r1.2 IndexRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/IndexRecord.java 11 Feb 2002 03:49:39 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/IndexRecord.java 3 Sep 2002 10:50:09 -0000 >@@ -65,6 +65,7 @@ > * NOT USED IN THIS RELEASE > * REFERENCE: PG 323 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -224,5 +225,16 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ IndexRecord rec = new IndexRecord(); >+ rec.field_1_zero = field_1_zero; >+ rec.field_2_first_row = field_2_first_row; >+ rec.field_3_last_row_add1 = field_3_last_row_add1; >+ rec.field_4_zero = field_4_zero; >+ rec.field_5_dbcells = new IntList(); >+ rec.field_5_dbcells.addAll(field_5_dbcells); >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/IterationRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/IterationRecord.java,v >retrieving revision 1.2 >diff -u -w -r1.2 IterationRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/IterationRecord.java 11 Feb 2002 03:49:39 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/IterationRecord.java 3 Sep 2002 10:50:09 -0000 >@@ -65,6 +65,7 @@ > * a formula!)<P> > * REFERENCE: PG 325 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -173,5 +174,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ IterationRecord rec = new IterationRecord(); >+ rec.field_1_iteration = field_1_iteration; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/LabelRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/LabelRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 LabelRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/LabelRecord.java 10 May 2002 03:01:10 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/LabelRecord.java 3 Sep 2002 10:50:10 -0000 >@@ -68,6 +68,7 @@ > * use this (except to read), use LabelSST instead <P> > * REFERENCE: PG 325 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > * @see org.apache.poi.hssf.record.LabelSSTRecord > */ >@@ -313,5 +314,16 @@ > > public void setXFIndex(short xf) > { >+ } >+ >+ public Object clone() { >+ LabelRecord rec = new LabelRecord(); >+ rec.field_1_row = field_1_row; >+ rec.field_2_column = field_2_column; >+ rec.field_3_xf_index = field_3_xf_index; >+ rec.field_4_string_len = field_4_string_len; >+ rec.field_5_unicode_flag = field_5_unicode_flag; >+ rec.field_6_value = field_6_value; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/LabelSSTRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/LabelSSTRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 LabelSSTRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/LabelSSTRecord.java 10 May 2002 03:01:10 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/LabelSSTRecord.java 3 Sep 2002 10:50:10 -0000 >@@ -63,6 +63,7 @@ > * value. <P> > * REFERENCE: PG 325 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -330,5 +331,14 @@ > return true; > } > return false; >+ } >+ >+ public Object clone() { >+ LabelSSTRecord rec = new LabelSSTRecord(); >+ rec.field_1_row = field_1_row; >+ rec.field_2_column = field_2_column; >+ rec.field_3_xf_index = field_3_xf_index; >+ rec.field_4_sst_index = field_4_sst_index; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/NumberRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/NumberRecord.java,v >retrieving revision 1.5 >diff -u -w -r1.5 NumberRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/NumberRecord.java 10 May 2002 03:01:10 -0000 1.5 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/NumberRecord.java 3 Sep 2002 10:50:10 -0000 >@@ -67,6 +67,7 @@ > * Contains a numeric cell value. <P> > * REFERENCE: PG 334 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -354,5 +355,14 @@ > return true; > } > return false; >+ } >+ >+ public Object clone() { >+ NumberRecord rec = new NumberRecord(); >+ rec.field_1_row = field_1_row; >+ rec.field_2_col = field_2_col; >+ rec.field_3_xf = field_3_xf; >+ rec.field_4_value = field_4_value; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/PrintGridlinesRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/PrintGridlinesRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 PrintGridlinesRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/PrintGridlinesRecord.java 11 Feb 2002 10:45:50 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/PrintGridlinesRecord.java 3 Sep 2002 10:50:10 -0000 >@@ -62,6 +62,7 @@ > * Description: whether to print the gridlines when you enjoy you spreadsheet on paper.<P> > * REFERENCE: PG 373 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -172,5 +173,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ PrintGridlinesRecord rec = new PrintGridlinesRecord(); >+ rec.field_1_print_gridlines = field_1_print_gridlines; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/PrintHeadersRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/PrintHeadersRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 PrintHeadersRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/PrintHeadersRecord.java 11 Feb 2002 10:45:50 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/PrintHeadersRecord.java 3 Sep 2002 10:50:10 -0000 >@@ -63,6 +63,7 @@ > * enjoy your spreadsheet in the physical form.<P> > * REFERENCE: PG 373 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -170,5 +171,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ PrintHeadersRecord rec = new PrintHeadersRecord(); >+ rec.field_1_print_headers = field_1_print_headers; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/PrintSetupRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/PrintSetupRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 PrintSetupRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/PrintSetupRecord.java 3 Mar 2002 00:47:54 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/PrintSetupRecord.java 3 Sep 2002 10:50:11 -0000 >@@ -63,6 +63,7 @@ > * Description: Stores print setup options -- bogus for HSSF (and marked as such)<P> > * REFERENCE: PG 385 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -422,5 +423,21 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ PrintSetupRecord rec = new PrintSetupRecord(); >+ rec.field_1_paper_size = field_1_paper_size; >+ rec.field_2_scale = field_2_scale; >+ rec.field_3_page_start = field_3_page_start; >+ rec.field_4_fit_width = field_4_fit_width; >+ rec.field_5_fit_height = field_5_fit_height; >+ rec.field_6_options = field_6_options; >+ rec.field_7_hresolution = field_7_hresolution; >+ rec.field_8_vresolution = field_8_vresolution; >+ rec.field_9_headermargin = field_9_headermargin; >+ rec.field_10_footermargin = field_10_footermargin; >+ rec.field_11_copies = field_11_copies; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/RKRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/RKRecord.java,v >retrieving revision 1.5 >diff -u -w -r1.5 RKRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/RKRecord.java 10 May 2002 03:01:10 -0000 1.5 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/RKRecord.java 3 Sep 2002 10:50:12 -0000 >@@ -71,6 +71,7 @@ > * > * REFERENCE: PG 376 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > * @see org.apache.poi.hssf.record.NumberRecord > */ >@@ -338,5 +339,14 @@ > > public void setXFIndex(short xf) > { >+ } >+ >+ public Object clone() { >+ RKRecord rec = new RKRecord(); >+ rec.field_1_row = field_1_row; >+ rec.field_2_col = field_2_col; >+ rec.field_3_xf_index = field_3_xf_index; >+ rec.field_4_rk_number = field_4_rk_number; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/Record.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/Record.java,v >retrieving revision 1.3 >diff -u -w -r1.3 Record.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/Record.java 29 Jul 2002 13:25:46 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/Record.java 3 Sep 2002 10:50:13 -0000 >@@ -63,6 +63,7 @@ > * Company: > * @author Andrew C. Oliver > * @author Marc Johnson (mjohnson at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -241,4 +242,8 @@ > */ > > public abstract short getSid(); >+ >+ public Object clone() { >+ throw new RuntimeException("The class "+getClass().getName()+" needs to define a clone method"); >+ } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/RefModeRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/RefModeRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 RefModeRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/RefModeRecord.java 11 Feb 2002 10:45:50 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/RefModeRecord.java 3 Sep 2002 10:50:13 -0000 >@@ -62,6 +62,7 @@ > * Description: Describes which reference mode to use<P> > * REFERENCE: PG 376 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -169,5 +170,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ RefModeRecord rec = new RefModeRecord(); >+ rec.field_1_mode = field_1_mode; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/RowRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/RowRecord.java,v >retrieving revision 1.5 >diff -u -w -r1.5 RowRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/RowRecord.java 10 May 2002 03:01:10 -0000 1.5 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/RowRecord.java 3 Sep 2002 10:50:14 -0000 >@@ -63,6 +63,7 @@ > * Description: stores the row information for the sheet. <P> > * REFERENCE: PG 379 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -511,5 +512,18 @@ > return true; > } > return false; >+ } >+ >+ public Object clone() { >+ RowRecord rec = new RowRecord(); >+ rec.field_1_row_number = field_1_row_number; >+ rec.field_2_first_col = field_2_first_col; >+ rec.field_3_last_col = field_3_last_col; >+ rec.field_4_height = field_4_height; >+ rec.field_5_optimize = field_5_optimize; >+ rec.field_6_reserved = field_6_reserved; >+ rec.field_7_option_flags = field_7_option_flags; >+ rec.field_8_xf_index = field_8_xf_index; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/SaveRecalcRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/SaveRecalcRecord.java,v >retrieving revision 1.2 >diff -u -w -r1.2 SaveRecalcRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/SaveRecalcRecord.java 11 Feb 2002 03:49:39 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/SaveRecalcRecord.java 3 Sep 2002 10:50:14 -0000 >@@ -62,6 +62,7 @@ > * Description: defines whether to recalculate before saving (set to true)<P> > * REFERENCE: PG 381 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -163,5 +164,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ SaveRecalcRecord rec = new SaveRecalcRecord(); >+ rec.field_1_recalc = field_1_recalc; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/SelectionRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/SelectionRecord.java,v >retrieving revision 1.4 >diff -u -w -r1.4 SelectionRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/SelectionRecord.java 10 May 2002 03:01:10 -0000 1.4 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/SelectionRecord.java 3 Sep 2002 10:50:14 -0000 >@@ -67,6 +67,7 @@ > * TODO : Implement reference subrecords > * REFERENCE: PG 291 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -278,5 +279,16 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ SelectionRecord rec = new SelectionRecord(); >+ rec.field_1_pane = field_1_pane; >+ rec.field_2_row_active_cell = field_2_row_active_cell; >+ rec.field_3_col_active_cell = field_3_col_active_cell; >+ rec.field_4_ref_active_cell = field_4_ref_active_cell; >+ rec.field_5_num_refs = field_5_num_refs; >+ rec.field_6_refs = field_6_refs; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/UnknownRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/UnknownRecord.java,v >retrieving revision 1.2 >diff -u -w -r1.2 UnknownRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/UnknownRecord.java 11 Feb 2002 10:45:50 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/UnknownRecord.java 3 Sep 2002 10:50:14 -0000 >@@ -64,6 +64,7 @@ > * don't know all the records to. (HSSF leaves these alone!) <P> > * Company: SuperLink Software, Inc.<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -173,5 +174,15 @@ > { > throw new RecordFormatException( > "Unknown record cannot be constructed via offset -- we need a copy of the data"); >+ } >+ >+ /** Unlike the other Record.clone methods this is a shallow clone*/ >+ public Object clone() { >+ UnknownRecord rec = new UnknownRecord(); >+ rec.offset = offset; >+ rec.sid = sid; >+ rec.size = size; >+ rec.thedata = thedata; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/VCenterRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/VCenterRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 VCenterRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/VCenterRecord.java 11 Feb 2002 10:45:50 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/VCenterRecord.java 3 Sep 2002 10:50:15 -0000 >@@ -62,6 +62,7 @@ > * Description: tells whether to center the sheet between vertical margins<P> > * REFERENCE: PG 420 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -169,5 +170,11 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ VCenterRecord rec = new VCenterRecord(); >+ rec.field_1_vcenter = field_1_vcenter; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/WSBoolRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/WSBoolRecord.java,v >retrieving revision 1.3 >diff -u -w -r1.3 WSBoolRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/WSBoolRecord.java 11 Feb 2002 10:45:50 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/WSBoolRecord.java 3 Sep 2002 10:50:15 -0000 >@@ -65,6 +65,7 @@ > * REFERENCE: PG 425 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) > * @author Glen Stampoultzis (gstamp@iprimus.com.au) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -414,5 +415,12 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ WSBoolRecord rec = new WSBoolRecord(); >+ rec.field_1_wsbool = field_1_wsbool; >+ rec.field_2_wsbool = field_2_wsbool; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/WindowTwoRecord.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/WindowTwoRecord.java,v >retrieving revision 1.4 >diff -u -w -r1.4 WindowTwoRecord.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/WindowTwoRecord.java 3 Mar 2002 00:47:54 -0000 1.4 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/WindowTwoRecord.java 3 Sep 2002 10:50:16 -0000 >@@ -63,6 +63,7 @@ > * Description: sheet window settings<P> > * REFERENCE: PG 422 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<P> > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 2.0-pre > */ > >@@ -614,5 +615,17 @@ > public short getSid() > { > return this.sid; >+ } >+ >+ public Object clone() { >+ WindowTwoRecord rec = new WindowTwoRecord(); >+ rec.field_1_options = field_1_options; >+ rec.field_2_top_row = field_2_top_row; >+ rec.field_3_left_col = field_3_left_col; >+ rec.field_4_header_color = field_4_header_color; >+ rec.field_5_page_break_zoom = field_5_page_break_zoom; >+ rec.field_6_normal_zoom = field_6_normal_zoom; >+ rec.field_7_reserved = field_7_reserved; >+ return rec; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/RowRecordsAggregate.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/RowRecordsAggregate.java,v >retrieving revision 1.3 >diff -u -w -r1.3 RowRecordsAggregate.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/RowRecordsAggregate.java 21 May 2002 18:26:29 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/RowRecordsAggregate.java 3 Sep 2002 10:50:17 -0000 >@@ -67,6 +67,7 @@ > /** > * > * @author andy >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class RowRecordsAggregate >@@ -219,5 +220,16 @@ > return records.values().iterator(); > } > >+ /** Performs a deep clone of the record*/ >+ public Object clone() { >+ RowRecordsAggregate rec = new RowRecordsAggregate(); >+ for (Iterator rowIter = getIterator(); rowIter.hasNext();) { >+ //return the cloned Row Record & insert >+ RowRecord row = (RowRecord)((RowRecord)rowIter.next()).clone(); >+ rec.insertRow(row); >+ } >+ return rec; >+ } >+ > } > >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/ValueRecordsAggregate.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/ValueRecordsAggregate.java,v >retrieving revision 1.5 >diff -u -w -r1.5 ValueRecordsAggregate.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/ValueRecordsAggregate.java 21 Aug 2002 11:56:49 -0000 1.5 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/aggregates/ValueRecordsAggregate.java 3 Sep 2002 10:50:17 -0000 >@@ -67,6 +67,7 @@ > * > * @author andy > * @author Glen Stampoultzis (glens at apache.org) >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class ValueRecordsAggregate >@@ -234,6 +235,16 @@ > public Iterator getIterator() > { > return records.values().iterator(); >+ } >+ >+ /** Performs a deep clone of the record*/ >+ public Object clone() { >+ ValueRecordsAggregate rec = new ValueRecordsAggregate(); >+ for (Iterator valIter = getIterator(); valIter.hasNext();) { >+ CellValueRecordInterface val = (CellValueRecordInterface)((CellValueRecordInterface)valIter.next()).clone(); >+ rec.insertCell(val); >+ } >+ return rec; > } > } > >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AddPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AddPtg.java,v >retrieving revision 1.11 >diff -u -w -r1.11 AddPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AddPtg.java 15 Jul 2002 00:14:39 -0000 1.11 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AddPtg.java 3 Sep 2002 10:50:17 -0000 >@@ -68,6 +68,7 @@ > * Addition operator PTG the "+" binomial operator. If you need more > * explanation than that then well...We really can't help you here. > * @author Andrew C. Oliver (acoliver@apache.org) >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class AddPtg >@@ -129,4 +130,8 @@ > > public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;} > >+ public Object clone() { >+ return new AddPtg(); >+ } >+ > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java,v >retrieving revision 1.9 >diff -u -w -r1.9 Area3DPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java 15 Jul 2002 00:14:39 -0000 1.9 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java 3 Sep 2002 10:50:18 -0000 >@@ -70,6 +70,7 @@ > * REFERENCE: <P> > * @author Libin Roman (Vista Portal LDT. Developer) > * @author avik >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 1.0-pre > */ > >@@ -302,6 +303,16 @@ > > public byte getDefaultOperandClass() { > return Ptg.CLASS_REF; >+ } >+ >+ public Object clone() { >+ Area3DPtg ptg = new Area3DPtg(); >+ ptg.field_1_index_extern_sheet = field_1_index_extern_sheet; >+ ptg.field_2_first_row = field_2_first_row; >+ ptg.field_3_last_row = field_3_last_row; >+ ptg.field_4_first_column = field_4_first_column; >+ ptg.field_5_last_column = field_5_last_column; >+ return ptg; > } > > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AreaPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AreaPtg.java,v >retrieving revision 1.11 >diff -u -w -r1.11 AreaPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AreaPtg.java 15 Jul 2002 00:14:39 -0000 1.11 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AreaPtg.java 3 Sep 2002 10:50:19 -0000 >@@ -70,6 +70,7 @@ > /** > * Specifies a rectangular area of cells A1:A4 for instance. > * @author andy >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class AreaPtg >@@ -86,7 +87,9 @@ > private BitField colRelative = new BitField(0x4000); > private BitField column = new BitField(0x3FFF); > >- >+ private AreaPtg() { >+ //Required for clone methods >+ } > > public AreaPtg(String arearef) { > AreaReference ar = new AreaReference(arearef); >@@ -312,4 +315,13 @@ > return Ptg.CLASS_REF; > } > >+ public Object clone() { >+ AreaPtg ptg = new AreaPtg(); >+ ptg.field_1_first_row = field_1_first_row; >+ ptg.field_2_last_row = field_2_last_row; >+ ptg.field_3_first_column = field_3_first_column; >+ ptg.field_4_last_column = field_4_last_column; >+ return ptg; >+ } >+ > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AttrPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AttrPtg.java,v >retrieving revision 1.10 >diff -u -w -r1.10 AttrPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AttrPtg.java 15 Jul 2002 00:14:39 -0000 1.10 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/AttrPtg.java 3 Sep 2002 10:50:19 -0000 >@@ -72,6 +72,7 @@ > * This seems to be a Misc Stuff and Junk record. One function it serves is > * in SUM functions (i.e. SUM(A1:A3) causes an area PTG then an ATTR with the SUM option set) > * @author andy >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class AttrPtg >@@ -241,4 +242,11 @@ > > > public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;} >+ >+ public Object clone() { >+ AttrPtg ptg = new AttrPtg(); >+ ptg.field_1_options = field_1_options; >+ ptg.field_2_data = field_2_data; >+ return ptg; >+ } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java,v >retrieving revision 1.3 >diff -u -w -r1.3 ConcatPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java 15 Jul 2002 00:14:39 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java 3 Sep 2002 10:50:19 -0000 >@@ -67,6 +67,7 @@ > /** > * > * @author andy >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class ConcatPtg >@@ -122,4 +123,8 @@ > return buffer.toString(); > } > >+ public Object clone() { >+ return new ConcatPtg(); >+ } >+ > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/DividePtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/DividePtg.java,v >retrieving revision 1.7 >diff -u -w -r1.7 DividePtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/DividePtg.java 15 Jul 2002 00:14:39 -0000 1.7 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/DividePtg.java 3 Sep 2002 10:50:19 -0000 >@@ -67,6 +67,7 @@ > /** > * This PTG implements the standard binomial divide "/" > * @author Andrew C. Oliver acoliver at apache dot org >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class DividePtg >@@ -120,4 +121,9 @@ > buffer.append(operands[ 1 ]); > return buffer.toString(); > } >+ >+ public Object clone() { >+ DividePtg ptg = new DividePtg(); >+ return ptg; >+ } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ExpPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ExpPtg.java,v >retrieving revision 1.4 >diff -u -w -r1.4 ExpPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ExpPtg.java 15 Jul 2002 00:14:39 -0000 1.4 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ExpPtg.java 3 Sep 2002 10:50:20 -0000 >@@ -65,6 +65,7 @@ > /** > * > * @author andy >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class ExpPtg >@@ -101,4 +102,8 @@ > > public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;} > >+ public Object clone() { >+ throw new RuntimeException("NO IDEA SHARED FORMULA EXP PTG"); >+ } >+ > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncPtg.java,v >retrieving revision 1.2 >diff -u -w -r1.2 FuncPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncPtg.java 12 Jun 2002 07:50:28 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncPtg.java 3 Sep 2002 10:50:20 -0000 >@@ -1,10 +1,19 @@ > package org.apache.poi.hssf.record.formula; > import org.apache.poi.util.LittleEndian; > >+/** >+ * >+ * @author Jason Height (jheight at chariot dot net dot au) >+ */ > public class FuncPtg extends AbstractFunctionPtg{ > > public final static byte sid = 0x21; > private int numParams=0; >+ >+ private FuncPtg() { >+ //Required for clone methods >+ } >+ > /**Creates new function pointer from a byte array > * usually called while reading an excel file. > */ >@@ -27,5 +36,12 @@ > > public int getNumberOfOperands() { > return numParams; >+ } >+ >+ public Object clone() { >+ FuncPtg ptg = new FuncPtg(); >+ ptg.field_1_num_args = field_1_num_args; >+ ptg.field_2_fnc_index = field_2_fnc_index; >+ return ptg; > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncVarPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncVarPtg.java,v >retrieving revision 1.3 >diff -u -w -r1.3 FuncVarPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncVarPtg.java 15 Jul 2002 00:14:39 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FuncVarPtg.java 3 Sep 2002 10:50:20 -0000 >@@ -1,9 +1,18 @@ > package org.apache.poi.hssf.record.formula; > import org.apache.poi.util.LittleEndian; >+ >+/** >+ * >+ * @author Jason Height (jheight at chariot dot net dot au) >+ */ > public class FuncVarPtg extends AbstractFunctionPtg{ > > public final static byte sid = 0x22; > >+ private FuncVarPtg() { >+ //Required for clone methods >+ } >+ > /**Creates new function pointer from a byte array > * usually called while reading an excel file. > */ >@@ -38,5 +47,12 @@ > return field_1_num_args; > } > >+ public Object clone() { >+ FuncVarPtg ptg = new FuncVarPtg(); >+ ptg.field_1_num_args = field_1_num_args; >+ ptg.field_2_fnc_index = field_2_fnc_index; >+ return ptg; >+ } >+ > > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/IntPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/IntPtg.java,v >retrieving revision 1.8 >diff -u -w -r1.8 IntPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/IntPtg.java 15 Jul 2002 00:14:39 -0000 1.8 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/IntPtg.java 3 Sep 2002 10:50:20 -0000 >@@ -67,6 +67,7 @@ > * Integer (short intger) > * Stores a (java) short value in a formula > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class IntPtg >@@ -79,6 +80,10 @@ > private String val; > private int strlen = 0; > >+ private IntPtg() { >+ //Required for clone methods >+ } >+ > public IntPtg(byte [] data, int offset) > { > setValue(LittleEndian.getShort(data, offset + 1)); >@@ -116,4 +121,10 @@ > return "" + getValue(); > } > public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;} >+ >+ public Object clone() { >+ IntPtg ptg = new IntPtg(); >+ ptg.field_1_value = field_1_value; >+ return ptg; >+ } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java,v >retrieving revision 1.3 >diff -u -w -r1.3 MemErrPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java 15 Jul 2002 00:14:39 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java 3 Sep 2002 10:50:20 -0000 >@@ -66,6 +66,7 @@ > /** > * > * @author andy >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class MemErrPtg >@@ -122,4 +123,11 @@ > return "ERR#"; > } > public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;} >+ >+ public Object clone() { >+ MemErrPtg ptg = new MemErrPtg(); >+ ptg.field_1_reserved = field_1_reserved; >+ ptg.field_2_subex_len = field_2_subex_len; >+ return ptg; >+ } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java,v >retrieving revision 1.2 >diff -u -w -r1.2 MissingArgPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java 15 Jul 2002 00:14:39 -0000 1.2 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java 3 Sep 2002 10:50:20 -0000 >@@ -60,6 +60,7 @@ > * Missing Function Arguments > * > * Avik Sengupta <avik at apache.org> >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > public class MissingArgPtg > extends Ptg >@@ -97,6 +98,10 @@ > > public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;} > >+ public Object clone() { >+ return new MissingArgPtg(); >+ } >+ > } > > >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java,v >retrieving revision 1.8 >diff -u -w -r1.8 MultiplyPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java 15 Jul 2002 00:14:39 -0000 1.8 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java 3 Sep 2002 10:50:20 -0000 >@@ -66,6 +66,7 @@ > /** > * Implements the standard mathmatical multiplication - * > * @author Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class MultiplyPtg >@@ -136,4 +137,8 @@ > buffer.append(operands[ 1 ]); > return buffer.toString(); > } >+ >+ public Object clone() { >+ return new MultiplyPtg(); >+ } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NamePtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NamePtg.java,v >retrieving revision 1.4 >diff -u -w -r1.4 NamePtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NamePtg.java 15 Jul 2002 00:14:39 -0000 1.4 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NamePtg.java 3 Sep 2002 10:50:20 -0000 >@@ -66,6 +66,7 @@ > /** > * > * @author andy >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class NamePtg >@@ -77,6 +78,11 @@ > private short field_2_label_index; > private short field_3_zero; // reserved must be 0 > >+ >+ private NamePtg() { >+ //Required for clone methods >+ } >+ > /** Creates new NamePtg */ > > public NamePtg(String name) >@@ -109,4 +115,12 @@ > } > > public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;} >+ >+ public Object clone() { >+ NamePtg ptg = new NamePtg(); >+ ptg.field_1_ixti = field_1_ixti; >+ ptg.field_2_label_index = field_2_label_index; >+ ptg.field_3_zero = field_3_zero; >+ return ptg; >+ } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NumberPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NumberPtg.java,v >retrieving revision 1.4 >diff -u -w -r1.4 NumberPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NumberPtg.java 15 Jul 2002 00:14:39 -0000 1.4 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/NumberPtg.java 3 Sep 2002 10:50:20 -0000 >@@ -61,6 +61,7 @@ > * Stores a floating point value in a formula > * value stored in a 8 byte field using IEEE notation > * @author Avik Sengupta >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class NumberPtg >@@ -70,6 +71,9 @@ > public final static byte sid = 0x1f; > private double field_1_value; > >+ private NumberPtg() { >+ //Required for clone methods >+ } > > /** Create a NumberPtg from a byte array read from disk */ > public NumberPtg(byte [] data, int offset) >@@ -114,5 +118,11 @@ > return "" + getValue(); > } > public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;} >+ >+ public Object clone() { >+ NumberPtg ptg = new NumberPtg(); >+ ptg.field_1_value = field_1_value; >+ return ptg; >+ } > } > >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ParenthesisPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ParenthesisPtg.java,v >retrieving revision 1.8 >diff -u -w -r1.8 ParenthesisPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ParenthesisPtg.java 15 Jul 2002 00:14:39 -0000 1.8 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ParenthesisPtg.java 3 Sep 2002 10:50:20 -0000 >@@ -66,6 +66,7 @@ > * > * Avik Sengupta <lists@aviksengupta.com> > * Andrew C. Oliver (acoliver at apache dot org) >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > public class ParenthesisPtg > extends OperationPtg >@@ -118,5 +119,9 @@ > > public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;} > >+ public Object clone() { >+ return new ParenthesisPtg(); >+ } >+ > } > >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/PowerPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/PowerPtg.java,v >retrieving revision 1.9 >diff -u -w -r1.9 PowerPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/PowerPtg.java 15 Jul 2002 00:14:39 -0000 1.9 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/PowerPtg.java 3 Sep 2002 10:50:21 -0000 >@@ -67,6 +67,7 @@ > /** > * > * @author andy >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class PowerPtg >@@ -121,5 +122,9 @@ > buffer.append(operands[ 1 ]); > return buffer.toString(); > } >+ >+ public Object clone() { >+ return new PowerPtg(); >+ } > > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ptg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ptg.java,v >retrieving revision 1.21 >diff -u -w -r1.21 Ptg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ptg.java 21 Aug 2002 11:56:49 -0000 1.21 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ptg.java 3 Sep 2002 10:50:21 -0000 >@@ -69,6 +69,7 @@ > * > * @author andy > * @author avik >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public abstract class Ptg >@@ -330,6 +331,8 @@ > > public abstract byte getDefaultOperandClass(); > >+ public abstract Object clone(); >+ > > > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ref3DPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ref3DPtg.java,v >retrieving revision 1.8 >diff -u -w -r1.8 Ref3DPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ref3DPtg.java 15 Jul 2002 00:14:39 -0000 1.8 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/Ref3DPtg.java 3 Sep 2002 10:50:22 -0000 >@@ -69,6 +69,7 @@ > * Description: Defined a cell in extern sheet. <P> > * REFERENCE: <P> > * @author Libin Roman (Vista Portal LDT. Developer) >+ * @author Jason Height (jheight at chariot dot net dot au) > * @version 1.0-pre > */ > >@@ -203,5 +204,13 @@ > } > > public byte getDefaultOperandClass() {return Ptg.CLASS_REF;} >+ >+ public Object clone() { >+ Ref3DPtg ptg = new Ref3DPtg(); >+ ptg.field_1_index_extern_sheet = field_1_index_extern_sheet; >+ ptg.field_2_row = field_2_row; >+ ptg.field_3_column = field_3_column; >+ return ptg; >+ } > > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ReferencePtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ReferencePtg.java,v >retrieving revision 1.6 >diff -u -w -r1.6 ReferencePtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ReferencePtg.java 15 Jul 2002 00:14:39 -0000 1.6 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/ReferencePtg.java 3 Sep 2002 10:50:22 -0000 >@@ -69,6 +69,7 @@ > /** > * ReferencePtg - handles references (such as A1, A2, IA4) > * @author Andrew C. Oliver (acoliver@apache.org) >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class ReferencePtg extends Ptg >@@ -81,7 +82,9 @@ > private BitField rowRelative = new BitField(0x8000); > private BitField colRelative = new BitField(0x4000); > >- >+ private ReferencePtg() { >+ //Required for clone methods >+ } > > /** > * Takes in a String represnetation of a cell reference and fills out the >@@ -186,4 +189,10 @@ > return Ptg.CLASS_REF; > } > >+ public Object clone() { >+ ReferencePtg ptg = new ReferencePtg(); >+ ptg.field_1_row = field_1_row; >+ ptg.field_2_col = field_2_col; >+ return ptg; >+ } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/StringPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/StringPtg.java,v >retrieving revision 1.4 >diff -u -w -r1.4 StringPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/StringPtg.java 3 Aug 2002 18:16:54 -0000 1.4 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/StringPtg.java 3 Sep 2002 10:50:22 -0000 >@@ -62,6 +62,7 @@ > * Number > * Stores a String value in a formula value stored in the format <length 2 bytes>char[] > * @author Werner Froidevaux >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class StringPtg >@@ -71,6 +72,9 @@ > public final static byte sid = 0x17; > private String field_1_value; > >+ private StringPtg() { >+ //Required for clone methods >+ } > > /** Create a StringPtg from a byte array read from disk */ > public StringPtg(byte [] data, int offset) >@@ -118,6 +122,12 @@ > } > public byte getDefaultOperandClass() { > return Ptg.CLASS_VALUE; >+ } >+ >+ public Object clone() { >+ StringPtg ptg = new StringPtg(); >+ ptg.field_1_value = field_1_value; >+ return ptg; > } > > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/SubtractPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/SubtractPtg.java,v >retrieving revision 1.7 >diff -u -w -r1.7 SubtractPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/SubtractPtg.java 15 Jul 2002 00:14:39 -0000 1.7 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/SubtractPtg.java 3 Sep 2002 10:50:22 -0000 >@@ -66,6 +66,7 @@ > /** > * > * @author andy >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class SubtractPtg >@@ -117,5 +118,9 @@ > buffer.append("-"); > buffer.append(operands[ 1 ]); > return buffer.toString(); >+ } >+ >+ public Object clone() { >+ return new SubtractPtg(); > } > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/record/formula/UnknownPtg.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/UnknownPtg.java,v >retrieving revision 1.3 >diff -u -w -r1.3 UnknownPtg.java >--- jakarta-poi/src/java/org/apache/poi/hssf/record/formula/UnknownPtg.java 15 Jul 2002 00:14:39 -0000 1.3 >+++ jakarta-poi/src/java/org/apache/poi/hssf/record/formula/UnknownPtg.java 3 Sep 2002 10:50:22 -0000 >@@ -65,6 +65,7 @@ > /** > * > * @author andy >+ * @author Jason Height (jheight at chariot dot net dot au) > */ > > public class UnknownPtg >@@ -99,5 +100,9 @@ > } > public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;} > >+ public Object clone() { >+ return new UnknownPtg(); >+ } >+ > > } >Index: jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java,v >retrieving revision 1.11 >diff -u -w -r1.11 HSSFSheet.java >--- jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java 21 Jul 2002 03:51:43 -0000 1.11 >+++ jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java 3 Sep 2002 10:50:24 -0000 >@@ -143,6 +143,10 @@ > setPropertiesFromSheet(sheet); > } > >+ HSSFSheet cloneSheet(Workbook book) { >+ return new HSSFSheet(book, sheet.cloneSheet()); >+ } >+ > > /** > * used internally to set the properties given a Sheet object >Index: jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java,v >retrieving revision 1.11 >diff -u -w -r1.11 HSSFWorkbook.java >--- jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java 21 Aug 2002 11:56:49 -0000 1.11 >+++ jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java 3 Sep 2002 10:50:25 -0000 >@@ -273,6 +273,28 @@ > } > > /** >+ * create an HSSFSheet from an existing sheet in the HSSFWorkbook. >+ * >+ * @return HSSFSheet representing the cloned sheet. >+ */ >+ >+ public HSSFSheet cloneSheet(int sheetNum) { >+ HSSFSheet srcSheet = (HSSFSheet)sheets.get(sheetNum); >+ String srcName = workbook.getSheetName(sheetNum); >+ if (srcSheet != null) { >+ HSSFSheet clonedSheet = srcSheet.cloneSheet(workbook); >+ WindowTwoRecord windowTwo = (WindowTwoRecord) clonedSheet.getSheet().findFirstRecordBySid(WindowTwoRecord.sid); >+ windowTwo.setSelected(sheets.size() == 1); >+ windowTwo.setPaged(sheets.size() == 1); >+ >+ sheets.add(clonedSheet); >+ workbook.setSheetName(sheets.size()-1, srcName+"[1]"); >+ return clonedSheet; >+ } >+ return null; >+ } >+ >+ /** > * create an HSSFSheet for this HSSFWorkbook, adds it to the sheets and returns > * the high level representation. Use this to create new sheets. > * >Index: jakarta-poi/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFSheet.java >=================================================================== >RCS file: /home/cvspublic/jakarta-poi/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFSheet.java,v >retrieving revision 1.5 >diff -u -w -r1.5 TestHSSFSheet.java >--- jakarta-poi/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFSheet.java 24 Apr 2002 14:35:12 -0000 1.5 >+++ jakarta-poi/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFSheet.java 3 Sep 2002 10:50:27 -0000 >@@ -199,4 +199,20 @@ > sheet.removeRow(row); > } > >+ public void testCloneSheet() { >+ HSSFWorkbook workbook = new HSSFWorkbook(); >+ HSSFSheet sheet = workbook.createSheet("Test Clone"); >+ HSSFRow row = sheet.createRow((short) 0); >+ HSSFCell cell = row.createCell((short) 0); >+ cell.setCellValue("clone_test"); >+ HSSFSheet cloned = workbook.cloneSheet(0); >+ >+ //Check for a good clone >+ assertEquals(cloned.getRow((short)0).getCell((short)0).getStringCellValue(), "clone_test"); >+ >+ //Check that the cells are not somehow linked >+ cell.setCellValue("Difference Check"); >+ assertEquals(cloned.getRow((short)0).getCell((short)0).getStringCellValue(), "clone_test"); >+ } >+ > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 11721
: 2900 |
2910