Author: nick
Date: Sun Dec 27 16:46:38 2009
New Revision: 894078

URL: http://svn.apache.org/viewvc?rev=894078&view=rev
Log:
Looks like we already had Ref8U but with a different name... Switch to using 
CellRangeAddress instead!

Added:
    poi/trunk/src/testcases/org/apache/poi/ss/util/TestCellRangeAddress.java
      - copied, changed from r894015, 
poi/trunk/src/testcases/org/apache/poi/hssf/record/common/TestRef8U.java
Removed:
    poi/trunk/src/java/org/apache/poi/hssf/record/common/Ref8U.java
    poi/trunk/src/testcases/org/apache/poi/hssf/record/common/TestRef8U.java
Modified:
    poi/trunk/src/java/org/apache/poi/hssf/record/FeatRecord.java
    poi/trunk/src/java/org/apache/poi/ss/util/CellRangeAddress.java

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/FeatRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/FeatRecord.java?rev=894078&r1=894077&r2=894078&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/FeatRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/FeatRecord.java Sun Dec 27 
16:46:38 2009
@@ -18,7 +18,7 @@
 package org.apache.poi.hssf.record;
 
 import org.apache.poi.hssf.record.common.FtrHeader;
-import org.apache.poi.hssf.record.common.Ref8U;
+import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.util.LittleEndianOutput;
 
 /**
@@ -41,7 +41,7 @@
        /** Only matters if type is ISFFEC2 */
        private long cbFeatData;
        private int reserved3; // Should always be zero
-       private Ref8U[] cellRefs;
+       private CellRangeAddress[] cellRefs;
 
        private byte[] rgbFeat; 
        
@@ -64,9 +64,9 @@
                cbFeatData = in.readInt();
                reserved3 = in.readShort();
 
-               cellRefs = new Ref8U[cref];
+               cellRefs = new CellRangeAddress[cref];
                for(int i=0; i<cellRefs.length; i++) {
-                       cellRefs[i] = new Ref8U(in);
+                       cellRefs[i] = new CellRangeAddress(in);
                }
                
                rgbFeat = in.readRemainder();
@@ -100,6 +100,8 @@
        }
 
        protected int getDataSize() {
-               return 12 + 2+1+4+2+4+2+Ref8U.getDataSize()+rgbFeat.length;
+               return 12 + 2+1+4+2+4+2+
+                       (cellRefs.length * CellRangeAddress.ENCODED_SIZE)
+                       +rgbFeat.length;
        }
 }

Modified: poi/trunk/src/java/org/apache/poi/ss/util/CellRangeAddress.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/util/CellRangeAddress.java?rev=894078&r1=894077&r2=894078&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ss/util/CellRangeAddress.java (original)
+++ poi/trunk/src/java/org/apache/poi/ss/util/CellRangeAddress.java Sun Dec 27 
16:46:38 2009
@@ -24,6 +24,9 @@
 
 /**
  * See OOO documentation: excelfileformat.pdf sec 2.5.14 - 'Cell Range 
Address'<p/>
+ * 
+ * <p>In the Microsoft documentation, this is also known as a 
+ *  Ref8U - see page 831 of version 1.0 of the documentation.
  *
  * Note - {...@link SelectionRecord} uses the BIFF5 version of this structure
  * @author Dragos Buleandra ([email protected])

Copied: 
poi/trunk/src/testcases/org/apache/poi/ss/util/TestCellRangeAddress.java (from 
r894015, 
poi/trunk/src/testcases/org/apache/poi/hssf/record/common/TestRef8U.java)
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/ss/util/TestCellRangeAddress.java?p2=poi/trunk/src/testcases/org/apache/poi/ss/util/TestCellRangeAddress.java&p1=poi/trunk/src/testcases/org/apache/poi/hssf/record/common/TestRef8U.java&r1=894015&r2=894078&rev=894078&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/record/common/TestRef8U.java 
(original)
+++ poi/trunk/src/testcases/org/apache/poi/ss/util/TestCellRangeAddress.java 
Sun Dec 27 16:46:38 2009
@@ -15,16 +15,17 @@
 limitations under the License.
 ==================================================================== */
 
-package org.apache.poi.hssf.record.common;
+package org.apache.poi.ss.util;
 
 import java.io.ByteArrayOutputStream;
 
 import org.apache.poi.hssf.record.TestcaseRecordInputStream;
+import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.util.LittleEndianOutputStream;
 
 import junit.framework.TestCase;
 
-public final class TestRef8U extends TestCase {
+public final class TestCellRangeAddress extends TestCase {
  byte[] data = new byte[] {
      (byte)0x02,(byte)0x00, 
      (byte)0x04,(byte)0x00, 
@@ -33,20 +34,20 @@
  };
 
  public void testLoad() {
-    Ref8U ref = new Ref8U(
+        CellRangeAddress ref = new CellRangeAddress(
           TestcaseRecordInputStream.create(0x000, data)
     );
     assertEquals(2, ref.getFirstRow());
     assertEquals(4, ref.getLastRow());
-    assertEquals(0, ref.getFirstCol());
-    assertEquals(3, ref.getLastCol());
+    assertEquals(0, ref.getFirstColumn());
+    assertEquals(3, ref.getLastColumn());
   
-    assertEquals( 8, Ref8U.getDataSize() );
+    assertEquals( 8, CellRangeAddress.ENCODED_SIZE );
  }
 
  public void testStore()
  {
-       Ref8U ref = new Ref8U();
+        CellRangeAddress ref = new CellRangeAddress(0,0,0,0);
        
        byte[] recordBytes;
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
@@ -63,8 +64,8 @@
        // Now set the flags
     ref.setFirstRow((short)2);
     ref.setLastRow((short)4);
-    ref.setFirstCol((short)0);
-    ref.setLastCol((short)3);
+    ref.setFirstColumn((short)0);
+    ref.setLastColumn((short)3);
        
        // Re-test
     baos.reset();



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to