http://nagoya.apache.org/bugzilla/show_bug.cgi?id=11721 clone for sheets
PR: Obtained from: Submitted by: Reviewed by: git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@352836 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
d76058c234
commit
a7b2c9fb69
@ -80,6 +80,7 @@ import org.apache.poi.hssf.record
|
||||
* @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
|
||||
@ -271,6 +272,46 @@ public class Sheet
|
||||
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)
|
||||
* only the record offset is assumed to be 0.
|
||||
|
@ -209,6 +209,19 @@ public class AreaFormatRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
AreaFormatRecord rec = new AreaFormatRecord();
|
||||
|
||||
rec.field_1_foregroundColor = field_1_foregroundColor;
|
||||
rec.field_2_backgroundColor = field_2_backgroundColor;
|
||||
rec.field_3_pattern = field_3_pattern;
|
||||
rec.field_4_formatFlags = field_4_formatFlags;
|
||||
rec.field_5_forecolorIndex = field_5_forecolorIndex;
|
||||
rec.field_6_backcolorIndex = field_6_backcolorIndex;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the foreground color field for the AreaFormat record.
|
||||
|
@ -171,6 +171,14 @@ public class AreaRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
AreaRecord rec = new AreaRecord();
|
||||
|
||||
rec.field_1_formatFlags = field_1_formatFlags;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the format flags field for the Area record.
|
||||
|
@ -169,6 +169,14 @@ public class AxisLineFormatRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
AxisLineFormatRecord rec = new AxisLineFormatRecord();
|
||||
|
||||
rec.field_1_axisType = field_1_axisType;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the axis type field for the AxisLineFormat record.
|
||||
|
@ -245,6 +245,22 @@ public class AxisOptionsRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
AxisOptionsRecord rec = new AxisOptionsRecord();
|
||||
|
||||
rec.field_1_minimumCategory = field_1_minimumCategory;
|
||||
rec.field_2_maximumCategory = field_2_maximumCategory;
|
||||
rec.field_3_majorUnitValue = field_3_majorUnitValue;
|
||||
rec.field_4_majorUnit = field_4_majorUnit;
|
||||
rec.field_5_minorUnitValue = field_5_minorUnitValue;
|
||||
rec.field_6_minorUnit = field_6_minorUnit;
|
||||
rec.field_7_baseUnit = field_7_baseUnit;
|
||||
rec.field_8_crossingPoint = field_8_crossingPoint;
|
||||
rec.field_9_options = field_9_options;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the minimum category field for the AxisOptions record.
|
||||
|
@ -199,6 +199,18 @@ public class AxisParentRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
AxisParentRecord rec = new AxisParentRecord();
|
||||
|
||||
rec.field_1_axisType = field_1_axisType;
|
||||
rec.field_2_x = field_2_x;
|
||||
rec.field_3_y = field_3_y;
|
||||
rec.field_4_width = field_4_width;
|
||||
rec.field_5_height = field_5_height;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the axis type field for the AxisParent record.
|
||||
|
@ -200,6 +200,18 @@ public class AxisRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
AxisRecord rec = new AxisRecord();
|
||||
|
||||
rec.field_1_axisType = field_1_axisType;
|
||||
rec.field_2_reserved1 = field_2_reserved1;
|
||||
rec.field_3_reserved2 = field_3_reserved2;
|
||||
rec.field_4_reserved3 = field_4_reserved3;
|
||||
rec.field_5_reserved4 = field_5_reserved4;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the axis type field for the Axis record.
|
||||
|
@ -165,6 +165,14 @@ public class AxisUsedRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
AxisUsedRecord rec = new AxisUsedRecord();
|
||||
|
||||
rec.field_1_numAxis = field_1_numAxis;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the num axis field for the AxisUsed record.
|
||||
|
@ -64,6 +64,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -358,4 +359,15 @@ public class BOFRecord
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -190,6 +190,16 @@ public class BarRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
BarRecord rec = new BarRecord();
|
||||
|
||||
rec.field_1_barSpace = field_1_barSpace;
|
||||
rec.field_2_categorySpace = field_2_categorySpace;
|
||||
rec.field_3_formatFlags = field_3_formatFlags;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the bar space field for the Bar record.
|
||||
|
@ -67,6 +67,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -349,4 +350,12 @@ public class BlankRecord
|
||||
}
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -66,6 +66,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -413,4 +414,14 @@ public class BoolErrRecord
|
||||
}
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -66,6 +66,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
@ -169,4 +170,10 @@ public class CalcCountRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
CalcCountRecord rec = new CalcCountRecord();
|
||||
rec.field_1_iterations = field_1_iterations;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -64,6 +64,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
@ -194,4 +195,10 @@ public class CalcModeRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
CalcModeRecord rec = new CalcModeRecord();
|
||||
rec.field_1_calcmode = field_1_calcmode;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -195,6 +195,17 @@ public class CategorySeriesAxisRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
CategorySeriesAxisRecord rec = new CategorySeriesAxisRecord();
|
||||
|
||||
rec.field_1_crossingPoint = field_1_crossingPoint;
|
||||
rec.field_2_labelFrequency = field_2_labelFrequency;
|
||||
rec.field_3_tickMarkFrequency = field_3_tickMarkFrequency;
|
||||
rec.field_4_options = field_4_options;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the crossing point field for the CategorySeriesAxis record.
|
||||
|
@ -66,6 +66,7 @@ package org.apache.poi.hssf.record;
|
||||
* 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 interface CellValueRecordInterface
|
||||
*/
|
||||
|
||||
public boolean isEqual(CellValueRecordInterface i);
|
||||
|
||||
public Object clone();
|
||||
}
|
||||
|
@ -189,6 +189,17 @@ public class ChartRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
ChartRecord rec = new ChartRecord();
|
||||
|
||||
rec.field_1_x = field_1_x;
|
||||
rec.field_2_y = field_2_y;
|
||||
rec.field_3_width = field_3_width;
|
||||
rec.field_4_height = field_4_height;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the x field for the Chart record.
|
||||
|
@ -173,6 +173,14 @@ public class DatRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
DatRecord rec = new DatRecord();
|
||||
|
||||
rec.field_1_options = field_1_options;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the options field for the Dat record.
|
||||
|
@ -191,6 +191,17 @@ public class DataFormatRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
DataFormatRecord rec = new DataFormatRecord();
|
||||
|
||||
rec.field_1_pointNumber = field_1_pointNumber;
|
||||
rec.field_2_seriesIndex = field_2_seriesIndex;
|
||||
rec.field_3_seriesNumber = field_3_seriesNumber;
|
||||
rec.field_4_formatFlags = field_4_formatFlags;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the point number field for the DataFormat record.
|
||||
|
@ -63,6 +63,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -165,4 +166,10 @@ public class DefaultColWidthRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
DefaultColWidthRecord rec = new DefaultColWidthRecord();
|
||||
rec.field_1_col_width = field_1_col_width;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -168,6 +168,14 @@ public class DefaultDataLabelTextPropertiesRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
DefaultDataLabelTextPropertiesRecord rec = new DefaultDataLabelTextPropertiesRecord();
|
||||
|
||||
rec.field_1_categoryDataType = field_1_categoryDataType;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the category data type field for the DefaultDataLabelTextProperties record.
|
||||
|
@ -63,6 +63,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -190,4 +191,11 @@ public class DefaultRowHeightRecord
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -62,6 +62,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -167,4 +168,10 @@ public class DeltaRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
DeltaRecord rec = new DeltaRecord();
|
||||
rec.field_1_max_change = field_1_max_change;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -63,6 +63,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -244,4 +245,14 @@ public class DimensionsRecord
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -64,6 +64,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -141,4 +142,9 @@ public class EOFRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
EOFRecord rec = new EOFRecord();
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -197,6 +197,18 @@ public class FontBasisRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
FontBasisRecord rec = new FontBasisRecord();
|
||||
|
||||
rec.field_1_xBasis = field_1_xBasis;
|
||||
rec.field_2_yBasis = field_2_yBasis;
|
||||
rec.field_3_heightBasis = field_3_heightBasis;
|
||||
rec.field_4_scale = field_4_scale;
|
||||
rec.field_5_indexToFontTable = field_5_indexToFontTable;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the x Basis field for the FontBasis record.
|
||||
|
@ -165,6 +165,14 @@ public class FontIndexRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
FontIndexRecord rec = new FontIndexRecord();
|
||||
|
||||
rec.field_1_fontIndex = field_1_fontIndex;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the font index field for the FontIndex record.
|
||||
|
@ -64,6 +64,7 @@ import org.apache.poi.util.StringUtil;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -218,4 +219,11 @@ public class FooterRecord
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -70,6 +70,7 @@ import org.apache.poi.hssf.record.formula.*;
|
||||
* 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 @@ public class FormulaRecord
|
||||
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;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -179,6 +179,15 @@ public class FrameRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
FrameRecord rec = new FrameRecord();
|
||||
|
||||
rec.field_1_borderType = field_1_borderType;
|
||||
rec.field_2_options = field_2_options;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the border type field for the Frame record.
|
||||
|
@ -65,6 +65,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
*
|
||||
* @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
|
||||
*/
|
||||
@ -176,4 +177,10 @@ public class GridsetRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
GridsetRecord rec = new GridsetRecord();
|
||||
rec.field_1_gridset_flag = field_1_gridset_flag;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -62,6 +62,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -246,4 +247,13 @@ public class GutsRecord
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -62,6 +62,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -170,4 +171,10 @@ public class HCenterRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
HCenterRecord rec = new HCenterRecord();
|
||||
rec.field_1_hcenter = field_1_hcenter;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -64,6 +64,7 @@ import org.apache.poi.util.StringUtil;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -220,4 +221,11 @@ public class HeaderRecord
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -65,6 +65,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -225,4 +226,15 @@ public class IndexRecord
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -65,6 +65,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -174,4 +175,10 @@ public class IterationRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
IterationRecord rec = new IterationRecord();
|
||||
rec.field_1_iteration = field_1_iteration;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -68,6 +68,7 @@ import org.apache.poi.util.StringUtil;
|
||||
* 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
|
||||
*/
|
||||
@ -314,4 +315,15 @@ public class LabelRecord
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -63,6 +63,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -331,4 +332,13 @@ public class LabelSSTRecord
|
||||
}
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -234,6 +234,20 @@ public class LegendRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
LegendRecord rec = new LegendRecord();
|
||||
|
||||
rec.field_1_xAxisUpperLeft = field_1_xAxisUpperLeft;
|
||||
rec.field_2_yAxisUpperLeft = field_2_yAxisUpperLeft;
|
||||
rec.field_3_xSize = field_3_xSize;
|
||||
rec.field_4_ySize = field_4_ySize;
|
||||
rec.field_5_type = field_5_type;
|
||||
rec.field_6_spacing = field_6_spacing;
|
||||
rec.field_7_options = field_7_options;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the x axis upper left field for the Legend record.
|
||||
|
@ -216,6 +216,18 @@ public class LineFormatRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
LineFormatRecord rec = new LineFormatRecord();
|
||||
|
||||
rec.field_1_lineColor = field_1_lineColor;
|
||||
rec.field_2_linePattern = field_2_linePattern;
|
||||
rec.field_3_weight = field_3_weight;
|
||||
rec.field_4_format = field_4_format;
|
||||
rec.field_5_colourPaletteIndex = field_5_colourPaletteIndex;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the line color field for the LineFormat record.
|
||||
|
@ -207,6 +207,18 @@ public class LinkedDataRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
LinkedDataRecord rec = new LinkedDataRecord();
|
||||
|
||||
rec.field_1_linkType = field_1_linkType;
|
||||
rec.field_2_referenceType = field_2_referenceType;
|
||||
rec.field_3_options = field_3_options;
|
||||
rec.field_4_indexNumberFmtRecord = field_4_indexNumberFmtRecord;
|
||||
rec.field_5_formulaOfLink = field_5_formulaOfLink;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the link type field for the LinkedData record.
|
||||
|
@ -165,6 +165,14 @@ public class NumberFormatIndexRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
NumberFormatIndexRecord rec = new NumberFormatIndexRecord();
|
||||
|
||||
rec.field_1_formatIndex = field_1_formatIndex;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the format index field for the NumberFormatIndex record.
|
||||
|
@ -67,6 +67,7 @@ import org.apache.poi.hssf.record.Record;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -355,4 +356,13 @@ public class NumberRecord
|
||||
}
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -186,6 +186,16 @@ public class ObjectLinkRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
ObjectLinkRecord rec = new ObjectLinkRecord();
|
||||
|
||||
rec.field_1_anchorId = field_1_anchorId;
|
||||
rec.field_2_link1 = field_2_link1;
|
||||
rec.field_3_link2 = field_3_link2;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the anchor id field for the ObjectLink record.
|
||||
|
@ -157,6 +157,13 @@ public class PlotAreaRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
PlotAreaRecord rec = new PlotAreaRecord();
|
||||
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
|
||||
} // END OF CLASS
|
||||
|
@ -173,6 +173,15 @@ public class PlotGrowthRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
PlotGrowthRecord rec = new PlotGrowthRecord();
|
||||
|
||||
rec.field_1_horizontalScale = field_1_horizontalScale;
|
||||
rec.field_2_verticalScale = field_2_verticalScale;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the horizontalScale field for the PlotGrowth record.
|
||||
|
@ -62,6 +62,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -173,4 +174,10 @@ public class PrintGridlinesRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
PrintGridlinesRecord rec = new PrintGridlinesRecord();
|
||||
rec.field_1_print_gridlines = field_1_print_gridlines;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -63,6 +63,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -171,4 +172,10 @@ public class PrintHeadersRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
PrintHeadersRecord rec = new PrintHeadersRecord();
|
||||
rec.field_1_print_headers = field_1_print_headers;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -63,6 +63,7 @@ import org.apache.poi.util.BitField;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -423,4 +424,20 @@ public class PrintSetupRecord
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -71,6 +71,7 @@ import org.apache.poi.hssf.util.RKUtil;
|
||||
*
|
||||
* 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
|
||||
*/
|
||||
@ -339,4 +340,13 @@ public class RKRecord
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -63,6 +63,7 @@ package org.apache.poi.hssf.record;
|
||||
* 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 class Record
|
||||
*/
|
||||
|
||||
public abstract short getSid();
|
||||
|
||||
public Object clone() {
|
||||
throw new RuntimeException("The class "+getClass().getName()+" needs to define a clone method");
|
||||
}
|
||||
}
|
||||
|
@ -62,6 +62,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -170,4 +171,10 @@ public class RefModeRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
RefModeRecord rec = new RefModeRecord();
|
||||
rec.field_1_mode = field_1_mode;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -63,6 +63,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -512,4 +513,17 @@ public class RowRecord
|
||||
}
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -173,6 +173,15 @@ public class SCLRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
SCLRecord rec = new SCLRecord();
|
||||
|
||||
rec.field_1_numerator = field_1_numerator;
|
||||
rec.field_2_denominator = field_2_denominator;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the numerator field for the SCL record.
|
||||
|
@ -62,6 +62,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -164,4 +165,10 @@ public class SaveRecalcRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
SaveRecalcRecord rec = new SaveRecalcRecord();
|
||||
rec.field_1_recalc = field_1_recalc;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -67,6 +67,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -279,4 +280,15 @@ public class SelectionRecord
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -165,6 +165,14 @@ public class SeriesChartGroupIndexRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
SeriesChartGroupIndexRecord rec = new SeriesChartGroupIndexRecord();
|
||||
|
||||
rec.field_1_chartGroupIndex = field_1_chartGroupIndex;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the chart group index field for the SeriesChartGroupIndex record.
|
||||
|
@ -165,6 +165,14 @@ public class SeriesIndexRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
SeriesIndexRecord rec = new SeriesIndexRecord();
|
||||
|
||||
rec.field_1_index = field_1_index;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the index field for the SeriesIndex record.
|
||||
|
@ -177,6 +177,14 @@ public class SeriesLabelsRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
SeriesLabelsRecord rec = new SeriesLabelsRecord();
|
||||
|
||||
rec.field_1_formatFlags = field_1_formatFlags;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the format flags field for the SeriesLabels record.
|
||||
|
@ -163,6 +163,14 @@ public class SeriesListRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
SeriesListRecord rec = new SeriesListRecord();
|
||||
|
||||
rec.field_1_seriesNumbers = field_1_seriesNumbers;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the series numbers field for the SeriesList record.
|
||||
|
@ -217,6 +217,19 @@ public class SeriesRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
SeriesRecord rec = new SeriesRecord();
|
||||
|
||||
rec.field_1_categoryDataType = field_1_categoryDataType;
|
||||
rec.field_2_valuesDataType = field_2_valuesDataType;
|
||||
rec.field_3_numCategories = field_3_numCategories;
|
||||
rec.field_4_numValues = field_4_numValues;
|
||||
rec.field_5_bubbleSeriesType = field_5_bubbleSeriesType;
|
||||
rec.field_6_numBubbleValues = field_6_numBubbleValues;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the category data type field for the Series record.
|
||||
|
@ -187,6 +187,17 @@ public class SeriesTextRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
SeriesTextRecord rec = new SeriesTextRecord();
|
||||
|
||||
rec.field_1_id = field_1_id;
|
||||
rec.field_2_textLength = field_2_textLength;
|
||||
rec.field_3_undocumented = field_3_undocumented;
|
||||
rec.field_4_text = field_4_text;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the id field for the SeriesText record.
|
||||
|
@ -165,6 +165,14 @@ public class SeriesToChartGroupRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
SeriesToChartGroupRecord rec = new SeriesToChartGroupRecord();
|
||||
|
||||
rec.field_1_chartGroupIndex = field_1_chartGroupIndex;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the chart group index field for the SeriesToChartGroup record.
|
||||
|
@ -186,6 +186,15 @@ public class SheetPropertiesRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
SheetPropertiesRecord rec = new SheetPropertiesRecord();
|
||||
|
||||
rec.field_1_flags = field_1_flags;
|
||||
rec.field_2_empty = field_2_empty;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the flags field for the SheetProperties record.
|
||||
|
@ -306,6 +306,25 @@ public class TextRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
TextRecord rec = new TextRecord();
|
||||
|
||||
rec.field_1_horizontalAlignment = field_1_horizontalAlignment;
|
||||
rec.field_2_verticalAlignment = field_2_verticalAlignment;
|
||||
rec.field_3_displayMode = field_3_displayMode;
|
||||
rec.field_4_rgbColor = field_4_rgbColor;
|
||||
rec.field_5_x = field_5_x;
|
||||
rec.field_6_y = field_6_y;
|
||||
rec.field_7_width = field_7_width;
|
||||
rec.field_8_height = field_8_height;
|
||||
rec.field_9_options1 = field_9_options1;
|
||||
rec.field_10_indexOfColorValue = field_10_indexOfColorValue;
|
||||
rec.field_11_options2 = field_11_options2;
|
||||
rec.field_12_textRotation = field_12_textRotation;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the horizontal alignment field for the Text record.
|
||||
|
@ -245,6 +245,23 @@ public class TickRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
TickRecord rec = new TickRecord();
|
||||
|
||||
rec.field_1_majorTickType = field_1_majorTickType;
|
||||
rec.field_2_minorTickType = field_2_minorTickType;
|
||||
rec.field_3_labelPosition = field_3_labelPosition;
|
||||
rec.field_4_background = field_4_background;
|
||||
rec.field_5_labelColorRgb = field_5_labelColorRgb;
|
||||
rec.field_6_zero1 = field_6_zero1;
|
||||
rec.field_7_zero2 = field_7_zero2;
|
||||
rec.field_8_options = field_8_options;
|
||||
rec.field_9_tickColor = field_9_tickColor;
|
||||
rec.field_10_zero3 = field_10_zero3;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the major tick type field for the Tick record.
|
||||
|
@ -165,6 +165,14 @@ public class UnitsRecord
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
UnitsRecord rec = new UnitsRecord();
|
||||
|
||||
rec.field_1_units = field_1_units;
|
||||
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the units field for the Units record.
|
||||
|
@ -64,6 +64,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -174,4 +175,14 @@ public class UnknownRecord
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -62,6 +62,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -170,4 +171,10 @@ public class VCenterRecord
|
||||
{
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
VCenterRecord rec = new VCenterRecord();
|
||||
rec.field_1_vcenter = field_1_vcenter;
|
||||
return rec;
|
||||
}
|
||||
}
|
||||
|
@ -65,6 +65,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -415,4 +416,11 @@ public class WSBoolRecord
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -63,6 +63,7 @@ import org.apache.poi.util.LittleEndian;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -615,4 +616,16 @@ public class WindowTwoRecord
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -67,6 +67,7 @@ import java.util.List;
|
||||
/**
|
||||
*
|
||||
* @author andy
|
||||
* @author Jason Height (jheight at chariot dot net dot au)
|
||||
*/
|
||||
|
||||
public class RowRecordsAggregate
|
||||
@ -219,5 +220,16 @@ public class RowRecordsAggregate
|
||||
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;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -67,6 +67,7 @@ import java.util.TreeMap;
|
||||
*
|
||||
* @author andy
|
||||
* @author Glen Stampoultzis (glens at apache.org)
|
||||
* @author Jason Height (jheight at chariot dot net dot au)
|
||||
*/
|
||||
|
||||
public class ValueRecordsAggregate
|
||||
@ -235,6 +236,16 @@ public class ValueRecordsAggregate
|
||||
{
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -68,6 +68,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
* 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 class AddPtg
|
||||
|
||||
public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;}
|
||||
|
||||
public Object clone() {
|
||||
return new AddPtg();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -70,6 +70,7 @@ import org.apache.poi.util.BitField;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -304,4 +305,14 @@ public class Area3DPtg extends Ptg
|
||||
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;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -70,6 +70,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
/**
|
||||
* 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 @@ public class AreaPtg
|
||||
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 @@ public class AreaPtg
|
||||
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;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -72,6 +72,7 @@ import java.util.List;
|
||||
* 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
|
||||
@ -246,4 +247,11 @@ public class AttrPtg
|
||||
|
||||
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -67,6 +67,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
/**
|
||||
*
|
||||
* @author andy
|
||||
* @author Jason Height (jheight at chariot dot net dot au)
|
||||
*/
|
||||
|
||||
public class ConcatPtg
|
||||
@ -122,4 +123,8 @@ public class ConcatPtg
|
||||
return buffer.toString();
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
return new ConcatPtg();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -67,6 +67,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
/**
|
||||
* 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 @@ public class DividePtg
|
||||
buffer.append(operands[ 1 ]);
|
||||
return buffer.toString();
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
DividePtg ptg = new DividePtg();
|
||||
return ptg;
|
||||
}
|
||||
}
|
||||
|
@ -122,4 +122,9 @@ public class EqualPtg
|
||||
return buffer.toString();
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
return new EqualPtg();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -65,6 +65,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
/**
|
||||
*
|
||||
* @author andy
|
||||
* @author Jason Height (jheight at chariot dot net dot au)
|
||||
*/
|
||||
|
||||
public class ExpPtg
|
||||
@ -101,4 +102,8 @@ public class ExpPtg
|
||||
|
||||
public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;}
|
||||
|
||||
public Object clone() {
|
||||
throw new RuntimeException("NO IDEA SHARED FORMULA EXP PTG");
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -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.
|
||||
*/
|
||||
@ -28,4 +37,11 @@ public class FuncPtg extends AbstractFunctionPtg{
|
||||
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;
|
||||
}
|
||||
}
|
@ -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 @@ public class FuncVarPtg extends AbstractFunctionPtg{
|
||||
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;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -67,6 +67,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
* 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 @@ public class IntPtg
|
||||
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 @@ public class IntPtg
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -66,6 +66,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
/**
|
||||
*
|
||||
* @author andy
|
||||
* @author Jason Height (jheight at chariot dot net dot au)
|
||||
*/
|
||||
|
||||
public class MemErrPtg
|
||||
@ -122,4 +123,11 @@ public class MemErrPtg
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -60,6 +60,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
* 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 class MissingArgPtg
|
||||
|
||||
public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;}
|
||||
|
||||
public Object clone() {
|
||||
return new MissingArgPtg();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -66,6 +66,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
/**
|
||||
* 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 @@ public class MultiplyPtg
|
||||
buffer.append(operands[ 1 ]);
|
||||
return buffer.toString();
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
return new MultiplyPtg();
|
||||
}
|
||||
}
|
||||
|
@ -66,6 +66,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
/**
|
||||
*
|
||||
* @author andy
|
||||
* @author Jason Height (jheight at chariot dot net dot au)
|
||||
*/
|
||||
|
||||
public class NamePtg
|
||||
@ -77,6 +78,11 @@ public class NamePtg
|
||||
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 class NamePtg
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -61,6 +61,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
* 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 class NumberPtg
|
||||
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 @@ public class NumberPtg
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -66,6 +66,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
*
|
||||
* 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 class ParenthesisPtg
|
||||
|
||||
public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;}
|
||||
|
||||
public Object clone() {
|
||||
return new ParenthesisPtg();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -67,6 +67,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
/**
|
||||
*
|
||||
* @author andy
|
||||
* @author Jason Height (jheight at chariot dot net dot au)
|
||||
*/
|
||||
|
||||
public class PowerPtg
|
||||
@ -122,4 +123,8 @@ public class PowerPtg
|
||||
return buffer.toString();
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
return new PowerPtg();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -69,6 +69,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
*
|
||||
* @author andy
|
||||
* @author avik
|
||||
* @author Jason Height (jheight at chariot dot net dot au)
|
||||
*/
|
||||
|
||||
public abstract class Ptg
|
||||
@ -334,6 +335,8 @@ public abstract class Ptg
|
||||
|
||||
public abstract byte getDefaultOperandClass();
|
||||
|
||||
public abstract Object clone();
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
@ -69,6 +69,7 @@ import org.apache.poi.hssf.model.Workbook;
|
||||
* 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
|
||||
*/
|
||||
|
||||
@ -204,4 +205,12 @@ public class Ref3DPtg extends Ptg {
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -69,6 +69,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
/**
|
||||
* 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 @@ public class ReferencePtg extends Ptg
|
||||
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 @@ public class ReferencePtg extends Ptg
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@ -62,6 +62,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
* 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 class StringPtg
|
||||
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)
|
||||
@ -120,5 +124,11 @@ public class StringPtg
|
||||
return Ptg.CLASS_VALUE;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
StringPtg ptg = new StringPtg();
|
||||
ptg.field_1_value = field_1_value;
|
||||
return ptg;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -66,6 +66,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
/**
|
||||
*
|
||||
* @author andy
|
||||
* @author Jason Height (jheight at chariot dot net dot au)
|
||||
*/
|
||||
|
||||
public class SubtractPtg
|
||||
@ -118,4 +119,8 @@ public class SubtractPtg
|
||||
buffer.append(operands[ 1 ]);
|
||||
return buffer.toString();
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
return new SubtractPtg();
|
||||
}
|
||||
}
|
||||
|
@ -65,6 +65,7 @@ import org.apache.poi.hssf.util.SheetReferences;
|
||||
/**
|
||||
*
|
||||
* @author andy
|
||||
* @author Jason Height (jheight at chariot dot net dot au)
|
||||
*/
|
||||
|
||||
public class UnknownPtg
|
||||
@ -99,5 +100,9 @@ public class UnknownPtg
|
||||
}
|
||||
public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;}
|
||||
|
||||
public Object clone() {
|
||||
return new UnknownPtg();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -143,6 +143,10 @@ public class HSSFSheet
|
||||
setPropertiesFromSheet(sheet);
|
||||
}
|
||||
|
||||
HSSFSheet cloneSheet(Workbook book) {
|
||||
return new HSSFSheet(book, sheet.cloneSheet());
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* used internally to set the properties given a Sheet object
|
||||
|
@ -291,6 +291,28 @@ public class HSSFWorkbook
|
||||
return sheet;
|
||||
}
|
||||
|
||||
/**
|
||||
* 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.
|
||||
|
@ -177,6 +177,16 @@ public class <xsl:value-of select="@name"/>Record
|
||||
return this.sid;
|
||||
}
|
||||
|
||||
public Object clone() {
|
||||
<xsl:value-of select="@name"/>Record rec = new <xsl:value-of select="@name"/>Record();
|
||||
|
||||
<xsl:for-each select="//fields/field"><xsl:text> rec.</xsl:text><xsl:value-of select="recutil:getFieldName(position(),@name,0)"/><xsl:text> = </xsl:text><xsl:value-of select="recutil:getFieldName(position(),@name,0)"/><xsl:text>;
|
||||
</xsl:text></xsl:for-each>
|
||||
return rec;
|
||||
}
|
||||
|
||||
|
||||
|
||||
<xsl:apply-templates select="//field" mode="getset"/>
|
||||
<xsl:apply-templates select="//field" mode="bits"/>
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user