You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ni...@apache.org on 2015/07/12 20:16:13 UTC

svn commit: r1690500 - in /poi/trunk/src/java/org/apache/poi: hssf/record/CFHeaderRecord.java hssf/record/common/FtrHeader.java ss/util/CellRangeAddressBase.java

Author: nick
Date: Sun Jul 12 18:16:13 2015
New Revision: 1690500

URL: http://svn.apache.org/r1690500
Log:
Update FtrHeader and CFHeader clone/create

Modified:
    poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderRecord.java
    poi/trunk/src/java/org/apache/poi/hssf/record/common/FtrHeader.java
    poi/trunk/src/java/org/apache/poi/ss/util/CellRangeAddressBase.java

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderRecord.java?rev=1690500&r1=1690499&r2=1690500&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderRecord.java Sun Jul 12 18:16:13 2015
@@ -38,6 +38,7 @@ public class CFHeaderRecord extends Stan
 
     /** Creates new CFHeaderRecord */
     public CFHeaderRecord() {
+        field_3_enclosing_cell_range = new CellRangeAddress(0, 0, 0, 0);
         field_4_cell_ranges = new CellRangeAddressList();
     }
     public CFHeaderRecord(CellRangeAddress[] regions, int nRules) {
@@ -158,7 +159,7 @@ public class CFHeaderRecord extends Stan
         CFHeaderRecord result = new CFHeaderRecord();
         result.field_1_numcf = field_1_numcf;
         result.field_2_need_recalculation_and_id = field_2_need_recalculation_and_id;
-        result.field_3_enclosing_cell_range = field_3_enclosing_cell_range;
+        result.field_3_enclosing_cell_range = field_3_enclosing_cell_range.copy();
         result.field_4_cell_ranges = field_4_cell_ranges.copy();
         return result;
     }

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/common/FtrHeader.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/common/FtrHeader.java?rev=1690500&r1=1690499&r2=1690500&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/common/FtrHeader.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/common/FtrHeader.java Sun Jul 12 18:16:13 2015
@@ -18,6 +18,7 @@
 package org.apache.poi.hssf.record.common;
 
 import org.apache.poi.hssf.record.RecordInputStream;
+import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.util.LittleEndianOutput;
 
 /**
@@ -32,19 +33,18 @@ public final class FtrHeader {
     private short recordType;
     /** This is a FrtFlags */
     private short grbitFrt;
-    /** MUST be 8 bytes and all zero TODO Correct this! */
-    private byte[] reserved;
+    /** The range of cells the parent record applies to, or 0 if N/A */
+    private CellRangeAddress associatedRange;
 
     public FtrHeader() {
-        reserved = new byte[8];
+        associatedRange = new CellRangeAddress(0, 0, 0, 0);
     }
 
     public FtrHeader(RecordInputStream in) {
         recordType = in.readShort();
         grbitFrt   = in.readShort();
 
-        reserved = new byte[8];
-        in.read(reserved, 0, 8);
+        associatedRange = new CellRangeAddress(in);
     }
 
     public String toString() {
@@ -59,7 +59,7 @@ public final class FtrHeader {
     public void serialize(LittleEndianOutput out) {
         out.writeShort(recordType);
         out.writeShort(grbitFrt);
-        out.write(reserved);
+        associatedRange.serialize(out);
     }
 
     public static int getDataSize() {
@@ -80,18 +80,18 @@ public final class FtrHeader {
         this.grbitFrt = grbitFrt;
     }
 
-    public byte[] getReserved() {
-        return reserved;
+    public CellRangeAddress getAssociatedRange() {
+        return associatedRange;
     }
-    public void setReserved(byte[] reserved) {
-        this.reserved = reserved;
+    public void setAssociatedRange(CellRangeAddress associatedRange) {
+        this.associatedRange = associatedRange;
     }
 
     public Object clone() {
         FtrHeader result = new FtrHeader();
         result.recordType = recordType;
         result.grbitFrt = grbitFrt;
-        result.reserved = reserved;
+        result.associatedRange = associatedRange.copy();
         return result;
     }
 }
\ No newline at end of file

Modified: poi/trunk/src/java/org/apache/poi/ss/util/CellRangeAddressBase.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/util/CellRangeAddressBase.java?rev=1690500&r1=1690499&r2=1690500&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ss/util/CellRangeAddressBase.java (original)
+++ poi/trunk/src/java/org/apache/poi/ss/util/CellRangeAddressBase.java Sun Jul 12 18:16:13 2015
@@ -24,8 +24,6 @@ import org.apache.poi.ss.SpreadsheetVers
  * See OOO documentation: excelfileformat.pdf sec 2.5.14 - 'Cell Range Address'<p/>
  *
  * Common subclass of 8-bit and 16-bit versions
- *
- * @author Josh Micich
  */
 public abstract class CellRangeAddressBase {
 



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org