]> source.dussan.org Git - poi.git/commitdiff
In the ooxml branch, convert the formula stuff from using hssf.HSSFWorkbook to ss...
authorNick Burch <nick@apache.org>
Tue, 15 Apr 2008 23:18:25 +0000 (23:18 +0000)
committerNick Burch <nick@apache.org>
Tue, 15 Apr 2008 23:18:25 +0000 (23:18 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/branches/ooxml@648454 13f79535-47bb-0310-9956-ffa450edef68

60 files changed:
src/java/org/apache/poi/hssf/model/FormulaParser.java
src/java/org/apache/poi/hssf/record/formula/AbstractFunctionPtg.java
src/java/org/apache/poi/hssf/record/formula/AddPtg.java
src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java
src/java/org/apache/poi/hssf/record/formula/AreaAPtg.java
src/java/org/apache/poi/hssf/record/formula/AreaErrPtg.java
src/java/org/apache/poi/hssf/record/formula/AreaNAPtg.java
src/java/org/apache/poi/hssf/record/formula/AreaNPtg.java
src/java/org/apache/poi/hssf/record/formula/AreaNVPtg.java
src/java/org/apache/poi/hssf/record/formula/AreaPtg.java
src/java/org/apache/poi/hssf/record/formula/AreaVPtg.java
src/java/org/apache/poi/hssf/record/formula/ArrayPtg.java
src/java/org/apache/poi/hssf/record/formula/ArrayPtgA.java
src/java/org/apache/poi/hssf/record/formula/ArrayPtgV.java
src/java/org/apache/poi/hssf/record/formula/AttrPtg.java
src/java/org/apache/poi/hssf/record/formula/BoolPtg.java
src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java
src/java/org/apache/poi/hssf/record/formula/DividePtg.java
src/java/org/apache/poi/hssf/record/formula/EqualPtg.java
src/java/org/apache/poi/hssf/record/formula/ErrPtg.java
src/java/org/apache/poi/hssf/record/formula/ExpPtg.java
src/java/org/apache/poi/hssf/record/formula/GreaterEqualPtg.java
src/java/org/apache/poi/hssf/record/formula/GreaterThanPtg.java
src/java/org/apache/poi/hssf/record/formula/IntPtg.java
src/java/org/apache/poi/hssf/record/formula/IntersectionPtg.java
src/java/org/apache/poi/hssf/record/formula/LessEqualPtg.java
src/java/org/apache/poi/hssf/record/formula/LessThanPtg.java
src/java/org/apache/poi/hssf/record/formula/MemAreaPtg.java
src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java
src/java/org/apache/poi/hssf/record/formula/MemFuncPtg.java
src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java
src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java
src/java/org/apache/poi/hssf/record/formula/NamePtg.java
src/java/org/apache/poi/hssf/record/formula/NameXPtg.java
src/java/org/apache/poi/hssf/record/formula/NotEqualPtg.java
src/java/org/apache/poi/hssf/record/formula/NumberPtg.java
src/java/org/apache/poi/hssf/record/formula/ParenthesisPtg.java
src/java/org/apache/poi/hssf/record/formula/PercentPtg.java
src/java/org/apache/poi/hssf/record/formula/PowerPtg.java
src/java/org/apache/poi/hssf/record/formula/Ptg.java
src/java/org/apache/poi/hssf/record/formula/RangePtg.java
src/java/org/apache/poi/hssf/record/formula/Ref3DPtg.java
src/java/org/apache/poi/hssf/record/formula/RefErrorPtg.java
src/java/org/apache/poi/hssf/record/formula/RefNAPtg.java
src/java/org/apache/poi/hssf/record/formula/RefNPtg.java
src/java/org/apache/poi/hssf/record/formula/RefNVPtg.java
src/java/org/apache/poi/hssf/record/formula/ReferencePtg.java
src/java/org/apache/poi/hssf/record/formula/StringPtg.java
src/java/org/apache/poi/hssf/record/formula/SubtractPtg.java
src/java/org/apache/poi/hssf/record/formula/UnaryMinusPtg.java
src/java/org/apache/poi/hssf/record/formula/UnaryPlusPtg.java
src/java/org/apache/poi/hssf/record/formula/UnionPtg.java
src/java/org/apache/poi/hssf/record/formula/UnknownPtg.java
src/java/org/apache/poi/hssf/usermodel/HSSFName.java
src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java
src/java/org/apache/poi/hssf/util/SheetReferences.java
src/java/org/apache/poi/ss/usermodel/FormulaEvaluator.java
src/java/org/apache/poi/ss/util/SheetReferences.java [new file with mode: 0644]
src/ooxml/interfaces-jdk15/org/apache/poi/ss/usermodel/Workbook.java
src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java

index 05b4d80f4a2b57f397a074419f8c5427a6959aea..33966e932ecfe3e2a21ab28816ac39816e16310c 100644 (file)
@@ -27,7 +27,7 @@ import java.util.regex.Pattern;
 import org.apache.poi.hssf.record.formula.*;
 import org.apache.poi.hssf.record.formula.function.FunctionMetadata;
 import org.apache.poi.hssf.record.formula.function.FunctionMetadataRegistry;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 
 /**
  * This class parses a formula string into a List of tokens in RPN order.
@@ -87,7 +87,7 @@ public final class FormulaParser {
      */
     private char look;
 
-    private HSSFWorkbook book;
+    private Workbook book;
 
 
     /**
@@ -102,14 +102,14 @@ public final class FormulaParser {
      *  model.Workbook, then use the convenience method on
      *  usermodel.HSSFFormulaEvaluator
      */
-    public FormulaParser(String formula, HSSFWorkbook book){
+    public FormulaParser(String formula, Workbook book){
         formulaString = formula;
         pointer=0;
         this.book = book;
         formulaLength = formulaString.length();
     }
 
-    public static Ptg[] parse(String formula, HSSFWorkbook book) {
+    public static Ptg[] parse(String formula, Workbook book) {
         FormulaParser fp = new FormulaParser(formula, book);
         fp.parse();
         return fp.getRPNPtg();
@@ -252,7 +252,7 @@ public final class FormulaParser {
             Match('!');
             String sheetName = name;
             String first = GetName();
-            short externIdx = book.getExternalSheetIndex(book.getSheetIndex(sheetName));
+            short externIdx = (short)book.getExternalSheetIndex(book.getSheetIndex(sheetName));
             if (look == ':') {
                 Match(':');
                 String second=GetName();
@@ -927,7 +927,7 @@ end;
      * @param lptgs  list of Ptg, can be null or empty
      * @return a human readable String
      */
-    public static String toFormulaString(HSSFWorkbook book, List lptgs) {
+    public static String toFormulaString(Workbook book, List lptgs) {
         String retval = null;
         if (lptgs == null || lptgs.size() == 0) return "#NAME";
         Ptg[] ptgs = new Ptg[lptgs.size()];
@@ -953,7 +953,7 @@ end;
      * @param ptgs  array of Ptg, can be null or empty
      * @return a human readable String
      */
-    public static String toFormulaString(HSSFWorkbook book, Ptg[] ptgs) {
+    public static String toFormulaString(Workbook book, Ptg[] ptgs) {
         if (ptgs == null || ptgs.length == 0) {
             // TODO - what is the justification for returning "#NAME" (which is not "#NAME?", btw)
             return "#NAME";
index 82d85ccebbb16c86131ea67f7f057a86534a0cfa..5133eca2064cb601838ca35d3b5c86f401af1b11 100644 (file)
@@ -17,7 +17,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.formula.function.FunctionMetadata;
 import org.apache.poi.hssf.record.formula.function.FunctionMetadataRegistry;
 
@@ -73,7 +73,7 @@ public abstract class AbstractFunctionPtg extends OperationPtg {
         return field_2_fnc_index == FUNCTION_INDEX_EXTERNAL;
     }
 
-    public String toFormulaString(HSSFWorkbook book) {
+    public String toFormulaString(Workbook book) {
         return getName();
     }
 
index 4f79d76027c5e32fee678d09b259d62db4b54c2c..69bbdce7010c525f15a8268a52130a7c3b8e3507 100644 (file)
@@ -23,7 +23,7 @@
  */
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -75,7 +75,7 @@ public class AddPtg
     }
     
     /** Implementation of method from Ptg */
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "+";
     }
index 5a02394c7c221278cf4b85051b2c0a03a1a629f4..458bd1e5948d0105b7bc8fa8d04c2c8e6c6ca05e 100644 (file)
@@ -17,7 +17,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.util.AreaReference;
 import org.apache.poi.hssf.util.CellReference;
@@ -273,7 +273,7 @@ public class Area3DPtg extends Ptg implements AreaI
         * @return text representation of this area reference that can be used in text
         *  formulas. The sheet name will get properly delimited if required.
         */
-       public String toFormulaString(HSSFWorkbook book)
+       public String toFormulaString(Workbook book)
        {
                // First do the sheet name
                StringBuffer retval = new StringBuffer();
index 6ff0b05b1632a59bc98c5702e5c63e14fbc5df20..e984b69f2f117c202fcc7b0f356572160e978c9e 100644 (file)
@@ -29,7 +29,7 @@ import org.apache.poi.util.BitField;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.util.AreaReference;
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 
 /**
  * Specifies a rectangular area of cells A1:A4 for instance.
index 187957e587f9aa96b23c2b068e3cd9b9ca9fbece..182b8b43e3c10ea041d26e47fc0f20085b8bdea7 100644 (file)
@@ -20,7 +20,7 @@ package org.apache.poi.hssf.record.formula;
 import org.apache.poi.util.LittleEndian;
 import org.apache.poi.util.BitField;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -66,7 +66,7 @@ public class AreaErrPtg extends AreaPtg
         array[offset] = (byte) (sid + ptgClass);
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "#REF!";
     }
index 6b0eb908ac4fff9306597a5d852438a7bfa11f59..3d406d3e39e0562590c39d2edba07b543bab9c2b 100644 (file)
@@ -29,7 +29,7 @@ import org.apache.poi.util.BitField;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.util.AreaReference;
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 
 /**
  * Specifies a rectangular area of cells A1:A4 for instance.
@@ -58,7 +58,7 @@ public class AreaNAPtg
       return "AreaNAPtg";
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
       throw new RuntimeException("Coding Error: This method should never be called. This ptg should be converted");
     }
index 71e413fead0fbd6451036521d3c8c88b089be160..4ff10d55f910a1bbd821917d15c75a62e5888674 100644 (file)
@@ -29,7 +29,7 @@ import org.apache.poi.util.BitField;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.util.AreaReference;
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 
 /**
  * Specifies a rectangular area of cells A1:A4 for instance.
@@ -61,7 +61,7 @@ public class AreaNPtg
     return "AreaNPtg";
   }
 
-  public String toFormulaString(HSSFWorkbook book)
+  public String toFormulaString(Workbook book)
   {
     throw new RuntimeException("Coding Error: This method should never be called. This ptg should be converted");
   }
index 2ebf01982962430048da11c262011f3b8ff3bc15..53ef8c8ee25872c6562b9bbcc1e55eb074ab58bb 100644 (file)
@@ -29,7 +29,7 @@ import org.apache.poi.util.BitField;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.util.AreaReference;
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 
 /**
  * Specifies a rectangular area of cells A1:A4 for instance.
@@ -59,7 +59,7 @@ public class AreaNVPtg
     return "AreaNVPtg";
   }
 
-  public String toFormulaString(HSSFWorkbook book)
+  public String toFormulaString(Workbook book)
   {
     throw new RuntimeException("Coding Error: This method should never be called. This ptg should be converted");
   }
index 27e4d1759cb8ba036252cc3757e03cd16dd907af..3e3e6c8faeb9bc3184dd1e1b20b035606e0dafe8 100644 (file)
@@ -24,7 +24,7 @@ import org.apache.poi.util.BitFieldFactory;
 
 import org.apache.poi.hssf.util.AreaReference;
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -303,11 +303,11 @@ public class AreaPtg
         field_4_last_column = column;
     }
     
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
        return toFormulaString(this, book);
     }
-    protected static String toFormulaString(AreaI area, HSSFWorkbook book) {
+    protected static String toFormulaString(AreaI area, Workbook book) {
        CellReference topLeft = new CellReference(area.getFirstRow(),area.getFirstColumn(),!area.isFirstRowRelative(),!area.isFirstColRelative());
        CellReference botRight = new CellReference(area.getLastRow(),area.getLastColumn(),!area.isLastRowRelative(),!area.isLastColRelative());
        
index e5e3d525cc8aa14be432a304fcd14b79422bcb2e..77c02bf77f59bee00a3ddb381a7f968bb6f076ee 100644 (file)
@@ -29,7 +29,7 @@ import org.apache.poi.util.BitField;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.util.AreaReference;
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 
 /**
  * Specifies a rectangular area of cells A1:A4 for instance.
index 01942be55cf869881c61b51ef3b2e1242d35b2c6..2a0117862505dc014ac39a92ce46d5bb5db41137 100644 (file)
@@ -23,7 +23,7 @@ import org.apache.poi.util.BitFieldFactory;
 import org.apache.poi.util.StringUtil;
 
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordFormatException;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.record.SSTRecord;
@@ -198,7 +198,7 @@ public class ArrayPtg extends Ptg
         return size;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
        StringBuffer b = new StringBuffer();
        b.append("{");
index 616f737b84793b7fd80a2ca769df1697c964404d..8f567c967c4db58f115e7c21fa259f56d90a925f 100644 (file)
@@ -23,7 +23,7 @@ import org.apache.poi.util.BitFieldFactory;
 import org.apache.poi.util.StringUtil;
 
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordFormatException;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.record.SSTRecord;
index 94aa32383f42d3feedae5cb068fa0ab29a848bb8..4c3e17c5ef6a71b1b0e86d03a49d27b52ab19974 100644 (file)
@@ -23,7 +23,7 @@ import org.apache.poi.util.BitFieldFactory;
 import org.apache.poi.util.StringUtil;
 
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordFormatException;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.record.SSTRecord;
index 351d44a421a5f4e920e119687250b7b2cd616b47..c2ff29116f268db943de6e2e53181f0f0255c8c6 100644 (file)
@@ -18,7 +18,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 import org.apache.poi.util.LittleEndian;
@@ -209,11 +209,11 @@ public final class AttrPtg extends OperationPtg {
         if(space.isSet(field_1_options)) {
             return operands[ 0 ];
         } else if (optiIf.isSet(field_1_options)) {
-            return toFormulaString((HSSFWorkbook)null) + "(" + operands[ 0 ]             +")";
+            return toFormulaString((Workbook)null) + "(" + operands[ 0 ]             +")";
         } else if (optGoto.isSet(field_1_options)) {
-            return toFormulaString((HSSFWorkbook)null) + operands[0];   //goto isn't a real formula element should not show up
+            return toFormulaString((Workbook)null) + operands[0];   //goto isn't a real formula element should not show up
         } else {
-            return toFormulaString((HSSFWorkbook)null) + "(" + operands[ 0 ] + ")";
+            return toFormulaString((Workbook)null) + "(" + operands[ 0 ] + ")";
         }
     }
   
@@ -228,7 +228,7 @@ public final class AttrPtg extends OperationPtg {
         return -1;
     }
         
-   public String toFormulaString(HSSFWorkbook book) {
+   public String toFormulaString(Workbook book) {
       if(semiVolatile.isSet(field_1_options)) {
         return "ATTR(semiVolatile)";
       }
index 80c9f39d79c2f5816363c8944e99948af52cfdb1..a738653951bd42c12b592b85c51f703dc4a32eaa 100644 (file)
@@ -17,7 +17,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -70,7 +70,7 @@ public class BoolPtg
         return SIZE;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return field_1_value ? "TRUE" : "FALSE";
     }
index 951872f43b9f99e1abd858bd5389ed45f82b024e..366a2ad3c2a3d4ec17f115b7eaf18e4779394787 100644 (file)
@@ -18,7 +18,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -64,7 +64,7 @@ public class ConcatPtg
         return 2;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return CONCAT;
     }    
index 70fa62e58badef1554e704b522cd84d46de2f42e..f471c8a3ce0d793b05a5fdcba8c87052fe3eb031 100644 (file)
@@ -18,7 +18,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -65,7 +65,7 @@ public class DividePtg
         return 2;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "/";
     }
@@ -74,7 +74,7 @@ public class DividePtg
         StringBuffer buffer = new StringBuffer();
 
         buffer.append(operands[ 0 ]);
-        buffer.append(toFormulaString((HSSFWorkbook)null));
+        buffer.append(toFormulaString((Workbook)null));
         buffer.append(operands[ 1 ]);
         return buffer.toString();
     }      
index a08a863d1c8046de0ecdd7d06c8b802acb9eb288..b31a6fa14c6ef7c90badf1e3dd07edda0193bf25 100644 (file)
@@ -18,7 +18,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -64,7 +64,7 @@ public class EqualPtg
         return 2;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "=";
     }
@@ -74,7 +74,7 @@ public class EqualPtg
 
         
         buffer.append(operands[ 0 ]);
-        buffer.append(toFormulaString((HSSFWorkbook)null));
+        buffer.append(toFormulaString((Workbook)null));
         buffer.append(operands[ 1 ]);
         return buffer.toString();
     }       
index a16992f94385d0ee49586e07be58e163c9295cdb..3343238b9960a0c02123d77511ae99a667fa1f82 100644 (file)
@@ -19,7 +19,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.usermodel.HSSFErrorConstants;
 
@@ -70,7 +70,7 @@ public final class ErrPtg extends Ptg {
         array[offset + 1] = (byte)field_1_error_code;
     }
 
-    public String toFormulaString(HSSFWorkbook book) {
+    public String toFormulaString(Workbook book) {
         return HSSFErrorConstants.getText(field_1_error_code);
     }
 
index 0cd54e5f55f827067b47ee4ac31f62aa81e3d32e..05b0fbe8648dbdc2240aa6ff4593da9ceeab3138 100644 (file)
@@ -18,7 +18,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordFormatException;
 import org.apache.poi.hssf.record.RecordInputStream;
 
@@ -73,7 +73,7 @@ public class ExpPtg
       return field_2_first_col;
     }    
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         throw new RecordFormatException("Coding Error: Expected ExpPtg to be converted from Shared to Non-Shared Formula by ValueRecordsAggregate, but it wasn't");
     }
index 677d78c3e5c665380cba4e5ae10e656b2ac0cdb3..88cfa84d4fd87db7ed349750bc412040f933d460 100755 (executable)
@@ -19,7 +19,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 
@@ -67,7 +67,7 @@ public class GreaterEqualPtg
         return 2;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return ">=";
     }
@@ -77,7 +77,7 @@ public class GreaterEqualPtg
 
         buffer.append(operands[ 0 ]);
 
-        buffer.append(toFormulaString((HSSFWorkbook)null));
+        buffer.append(toFormulaString((Workbook)null));
         buffer.append(operands[ 1 ]);
 
         return buffer.toString();
index 6501203edcc9b070d4dabd1e8fbe2f44f818174b..cfe45a404ae246434215a3045168b5ebd8dff079 100644 (file)
@@ -25,7 +25,7 @@ package org.apache.poi.hssf.record.formula;
 
 import java.util.List;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -97,7 +97,7 @@ public class GreaterThanPtg
      * Implementation of method from Ptg 
      * @param book the Sheet References
      */
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return this.GREATERTHAN;
     }
index f3dd16f068a6750bf69c8238742f2bf8bf71fd3f..a1753f5ac14fc33401d89c9c98964f78c6b07d5e 100644 (file)
@@ -18,7 +18,7 @@
 package org.apache.poi.hssf.record.formula;
 
 import org.apache.poi.util.LittleEndian;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -72,7 +72,7 @@ public final class IntPtg extends Ptg {
         return SIZE;
     }
 
-    public String toFormulaString(HSSFWorkbook book) {
+    public String toFormulaString(Workbook book) {
         return String.valueOf(getValue());
     }
     public byte getDefaultOperandClass() {
index 8f5bddc190b6a3c5107c9e10a059f01f25621c28..61d02edaa7ae14af0fa0125310737f0816435185 100644 (file)
@@ -17,7 +17,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -59,7 +59,7 @@ public class IntersectionPtg extends OperationPtg
     }
 
     /** Implementation of method from Ptg */
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return " ";
     }
index f42966394b749f8fb9306e8f8406cc6e802af79e..e63fda02d3b9b4cfc96bbbb66cca7486ed806bef 100755 (executable)
@@ -20,7 +20,7 @@
 package org.apache.poi.hssf.record.formula;
 
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 
@@ -68,7 +68,7 @@ public class LessEqualPtg
         return 2;
     }
 
-    public String toFormulaString( HSSFWorkbook book )
+    public String toFormulaString( Workbook book )
     {
         return "<=";
     }
@@ -77,7 +77,7 @@ public class LessEqualPtg
     {
         StringBuffer buffer = new StringBuffer();
         buffer.append( operands[0] );
-        buffer.append( toFormulaString( (HSSFWorkbook) null ) );
+        buffer.append( toFormulaString( (Workbook) null ) );
         buffer.append( operands[1] );
         return buffer.toString();
     }
index c23658d2db4302995e5c2baa2d779d929d1f892b..6f3c0b0a29d36436840dba3c92978d5e3fd113cd 100644 (file)
@@ -27,7 +27,7 @@ package org.apache.poi.hssf.record.formula;
 import java.util.List;
 
 //POI
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -106,7 +106,7 @@ public class LessThanPtg
      * Implementation of method from Ptg 
      * @param book the Sheet References
      */
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return this.LESSTHAN;
     }
index ec33d10921475187d5234ccd5d01372781b597dd..add7b0461b8b5b308a1f39394e067a6328a11a41 100644 (file)
@@ -25,7 +25,7 @@
 package org.apache.poi.hssf.record.formula;
 
 import org.apache.poi.util.LittleEndian;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -83,7 +83,7 @@ public class MemAreaPtg
         return SIZE;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return ""; // TODO: Not sure how to format this. -- DN
     }
index 359c76e6681dc69c6c5bd36770f358bcb92cb660..4c9156a904194e7cb96cec9fec84855fbaf8dc0b 100644 (file)
@@ -25,7 +25,7 @@
 package org.apache.poi.hssf.record.formula;
 
 import org.apache.poi.util.LittleEndian;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -57,7 +57,7 @@ public class MemErrPtg
         array[offset] = (byte) (sid + ptgClass);
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "ERR#";
     }
index 63c07a79e71def40c614e648255b4120ccb65167..ac23e8aab7e14cd93fab98a778393436a07e7c48 100644 (file)
@@ -24,7 +24,7 @@
 package org.apache.poi.hssf.record.formula;
 
 import org.apache.poi.util.LittleEndian;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -60,7 +60,7 @@ public class MemFuncPtg extends ControlPtg
         LittleEndian.putShort( array, offset + 1, (short)field_1_len_ref_subexpression );
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "";
     }
index d539405cd061c899349d9b6e8ac14909464b8f02..32ba801406539e5a9232fa25d35b532f12f30fba 100644 (file)
@@ -17,7 +17,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -55,7 +55,7 @@ public class MissingArgPtg
     }
 
    
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return " ";
     }
index cbc0b6700216df9d0f7cb1c049e2a7527d058bda..04589c1a864f197dd2672577f1824e226ee1e381 100644 (file)
@@ -16,7 +16,7 @@
 ==================================================================== */
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -68,7 +68,7 @@ public class MultiplyPtg
     }
     
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "*";
     }
@@ -77,9 +77,9 @@ public class MultiplyPtg
     {
         StringBuffer buffer = new StringBuffer();
 
-        buffer.append(operands[ 0 ].toFormulaString((HSSFWorkbook)null));
+        buffer.append(operands[ 0 ].toFormulaString((Workbook)null));
         buffer.append("*");
-        buffer.append(operands[ 1 ].toFormulaString((HSSFWorkbook)null));
+        buffer.append(operands[ 1 ].toFormulaString((Workbook)null));
         return buffer.toString();
     }
     
@@ -87,7 +87,7 @@ public class MultiplyPtg
         StringBuffer buffer = new StringBuffer();
 
         buffer.append(operands[ 0 ]);
-        buffer.append(toFormulaString((HSSFWorkbook)null));
+        buffer.append(toFormulaString((Workbook)null));
         buffer.append(operands[ 1 ]);
         return buffer.toString();
     }                  
index 9d93f1e9827bb4b4df60745d3c041dfe645a8fb1..f501f2b3da4eb0876915a4df19bef1ed6cbfef10 100644 (file)
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.util.LittleEndian;
-import org.apache.poi.hssf.usermodel.HSSFName;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
-import org.apache.poi.hssf.record.NameRecord;
 import org.apache.poi.hssf.record.RecordInputStream;
+import org.apache.poi.ss.usermodel.Name;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.util.LittleEndian;
 
 /**
  *
@@ -49,13 +48,13 @@ public class NamePtg
      * in the workbook.  The search for the name record is case insensitive.  If it is not found, 
      * it gets created.
      */
-    public NamePtg(String name, HSSFWorkbook book) {
+    public NamePtg(String name, Workbook book) {
         field_1_label_index = (short)(1+getOrCreateNameRecord(book, name)); // convert to 1-based
     }
     /**
      * @return zero based index of the found or newly created defined name record. 
      */
-    private static final int getOrCreateNameRecord(HSSFWorkbook book, String name) {
+    private static final int getOrCreateNameRecord(Workbook book, String name) {
         // perhaps this logic belongs in Workbook?
         int countNames = book.getNumberOfNames();
         for (int i = 0; i < countNames; i++) {
@@ -64,7 +63,7 @@ public class NamePtg
             }
         }
         
-        HSSFName nameObj = book.createName();
+        Name nameObj = book.createName();
         nameObj.setNameName(name);
         
         return countNames;
@@ -99,7 +98,7 @@ public class NamePtg
         return SIZE;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
        return book.getNameName(field_1_label_index - 1);
     }
index 3036800b1032f89b5fe11070ba5abde16fc0e89c..39e05262a7cc5989c9e74a5e06f51a8d1fc2737f 100644 (file)
@@ -18,7 +18,7 @@
 package org.apache.poi.hssf.record.formula;
 
 import org.apache.poi.util.LittleEndian;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -61,7 +61,7 @@ public final class NameXPtg extends Ptg {
         return SIZE;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         // -1 to convert definedNameIndex from 1-based to zero-based
         return book.resolveNameXText(field_1_ixals, field_2_ilbl-1); 
index 5dbbec875494e01c85d6cebbb59bac1008abb653..713e8fb04613f7567fdd0ea2dab79617175cfb4d 100755 (executable)
@@ -18,7 +18,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -64,7 +64,7 @@ public class NotEqualPtg
         return 2;
     }
 
-    public String toFormulaString( HSSFWorkbook book )
+    public String toFormulaString( Workbook book )
     {
         return "<>";
     }
@@ -75,7 +75,7 @@ public class NotEqualPtg
 
         buffer.append( operands[0] );
 
-        buffer.append( toFormulaString( (HSSFWorkbook) null ) );
+        buffer.append( toFormulaString( (Workbook) null ) );
         buffer.append( operands[1] );
 
         return buffer.toString();
index 8ec67345b41d7f5137ce7e127cc12534d5731458..f74faf091721dfcde4cb3736f48954e3ea4a9f27 100644 (file)
@@ -18,7 +18,7 @@
 package org.apache.poi.hssf.record.formula;
 
 import org.apache.poi.util.LittleEndian;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -78,7 +78,7 @@ public class NumberPtg
         return SIZE;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "" + getValue();
     }
index 402dbd377428b0900cd39b5737f107f4212082eb..9d977f5eb807ff14a08268d640b4acb198943026 100644 (file)
@@ -20,7 +20,7 @@ package org.apache.poi.hssf.record.formula;
 
 import java.util.List;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -71,7 +71,7 @@ public class ParenthesisPtg
         return 1;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "()";
     }
index 0c59bb7acb55a6d90ba025a8e6cc2b5842a85f49..3e1d650dcd2b5d5ab4530bbc65a521b864633f4d 100644 (file)
@@ -23,7 +23,7 @@
  */
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -74,7 +74,7 @@ public class PercentPtg
     }
     
     /** Implementation of method from Ptg */
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "%";
     }
index 0dbb3ba283991e9473c78c0e2a76345ec70fc635..327f9c566a71da8aec243d24ec96e5e2f07b0b28 100644 (file)
@@ -19,7 +19,7 @@ package org.apache.poi.hssf.record.formula;
 
 import java.util.List;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -66,7 +66,7 @@ public class PowerPtg
         return 2;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "^";
     }
@@ -76,7 +76,7 @@ public class PowerPtg
 
         
         buffer.append(operands[ 0 ]);
-        buffer.append(toFormulaString((HSSFWorkbook)null));
+        buffer.append(toFormulaString((Workbook)null));
         buffer.append(operands[ 1 ]);
         return buffer.toString();
     }       
index 0e8c7741ac27568717184c6a968808703820a95a..24c80d8f7bac7ebd307b6c0785ad3d2134166f81 100644 (file)
@@ -21,7 +21,7 @@ import java.util.List;
 import java.util.ArrayList;
 import java.util.Stack;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -418,7 +418,7 @@ public abstract class Ptg
     /**
      * return a string representation of this token alone
      */
-    public abstract String toFormulaString(HSSFWorkbook book);
+    public abstract String toFormulaString(Workbook book);
     /**
      * dump a debug representation (hexdump) to a string
      */
index 4726a70c17265db0b1f454c7ec07d039438099fa..09bedaecf6fb2006eccf1ff6d48f5e1ac0f035cb 100644 (file)
@@ -17,7 +17,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -59,7 +59,7 @@ public class RangePtg extends OperationPtg
     }
 
     /** Implementation of method from Ptg */
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return ":";
     }
index f9f5c6e20289f1e77da594a897ac3b4fe5bd2847..1ae56cf52e78503400962e137e59cb49bf72e5e2 100644 (file)
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
-import org.apache.poi.hssf.util.CellReference;
 import org.apache.poi.hssf.util.RangeAddress;
-import org.apache.poi.hssf.util.SheetReferences;
+import org.apache.poi.ss.util.CellReference;
+import org.apache.poi.ss.util.SheetReferences;
 import org.apache.poi.util.BitField;
 import org.apache.poi.util.BitFieldFactory;
 import org.apache.poi.util.LittleEndian;
@@ -162,8 +162,8 @@ public class Ref3DPtg extends Ptg {
     }
 
     // TODO - find a home for this method
-    // There is already a method on HSSFWorkbook called getSheetName but it seems to do something different.
-       static String getSheetName(HSSFWorkbook book, int externSheetIndex) {
+    // There is already a method on Workbook called getSheetName but it seems to do something different.
+       static String getSheetName(Workbook book, int externSheetIndex) {
         // TODO - there are 3 ways this method can return null. Is each valid?
         if (book == null) {
             return null;
@@ -179,7 +179,7 @@ public class Ref3DPtg extends Ptg {
      * @return text representation of this cell reference that can be used in text 
      * formulas. The sheet name will get properly delimited if required.
      */
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         StringBuffer retval = new StringBuffer();
         String sheetName = getSheetName(book, field_1_index_extern_sheet);
index c29b55bf94948dc9a61ec98931f95816eaf2862d..031fa411203a330e36d20778ee6b9020b4fd7496 100755 (executable)
@@ -21,7 +21,7 @@ import org.apache.poi.util.LittleEndian;
 import org.apache.poi.util.BitField;
 
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -74,7 +74,7 @@ public class RefErrorPtg extends Ptg
         return SIZE;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         //TODO -- should we store a cellreference instance in this ptg?? but .. memory is an issue, i believe!
         return "#REF!";
index 6f18e4b94efc670962a002b1e713fd06eaa609a6..f813ea23ce1315fd6c4c6a04e9b42047eab11761 100644 (file)
@@ -28,7 +28,7 @@ import org.apache.poi.util.BitField;
 
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 
 /**
  * RefNAPtg
@@ -57,7 +57,7 @@ public class RefNAPtg extends ReferencePtg
       return "RefNAPtg";
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
       throw new RuntimeException("Coding Error: This method should never be called. This ptg should be converted");
     }
index e7522e7e5f1f3653f2451f0fce40ddc66d5d1ff1..fc19859b50458355e7ca976850ead1a808d99dfc 100644 (file)
@@ -27,7 +27,7 @@ import org.apache.poi.util.BitField;
 
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 
 /**
  * RefNPtg
@@ -58,7 +58,7 @@ public class RefNPtg extends ReferencePtg
       return "RefNPtg";
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
       throw new RuntimeException("Coding Error: This method should never be called. This ptg should be converted");
     }
index 40b111b3ecd26ada2b0692acf7f7b6f137ac1cf7..52b2e51fb2db20bdfd0ac3dac86f46a0d3fb638e 100644 (file)
@@ -23,7 +23,7 @@ import org.apache.poi.util.BitField;
 
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 
 /**
  * RefNVPtg
@@ -54,7 +54,7 @@ public class RefNVPtg extends ReferencePtg
     return "RefNVPtg";
   }
 
-  public String toFormulaString(HSSFWorkbook book)
+  public String toFormulaString(Workbook book)
   {
     throw new RuntimeException("Coding Error: This method should never be called. This ptg should be converted");
   }
index 3df731c7ace74866a9b5e4f399c57ddfdd5d7213..ff6f4a20eea3df16a9e4d0a9a2e01ffba672d763 100644 (file)
@@ -22,7 +22,7 @@ import org.apache.poi.util.BitField;
 import org.apache.poi.util.BitFieldFactory;
 
 import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -176,7 +176,7 @@ public class ReferencePtg extends Ptg {
         return SIZE;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         //TODO -- should we store a cellreference instance in this ptg?? but .. memory is an issue, i believe!
         return (new CellReference(getRowAsInt(),getColumn(),!isRowRelative(),!isColRelative())).formatAsString();
index ca6fb55dc67e2b32ecd6c7c607f28a9574991e5c..b6615182d3838e84fc1a6fcb69b8acf35f654c88 100644 (file)
@@ -17,7 +17,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.util.BitField;
 import org.apache.poi.util.BitFieldFactory;
 import org.apache.poi.util.StringUtil;
@@ -109,7 +109,7 @@ public class StringPtg
         }
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "\""+getValue()+"\"";
     }
index 37af74ba9ec2e1eee8b9eb2101e40434e8670992..6d1d1e860dc2a7bedc4620dbfa128074b3d8dcdf 100644 (file)
@@ -18,7 +18,7 @@
 package org.apache.poi.hssf.record.formula;
 
 import java.util.List;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -63,7 +63,7 @@ public class SubtractPtg
         return 2;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "-";
     }
index 7c134b97d136f677d39b3d64ecdac5b138f03f19..d85cc4913eefad2e8d6ee6c772fcb32a394326a8 100644 (file)
@@ -19,7 +19,7 @@ package org.apache.poi.hssf.record.formula;
 
 import java.util.List;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -69,7 +69,7 @@ public class UnaryMinusPtg extends OperationPtg
     }
     
     /** Implementation of method from Ptg */
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "+";
     }
index 148c83fa4157535599750fc76bbfb33c33da10ae..6ae89cf2c1c32af5db9a2579a7d34753fd795154 100644 (file)
@@ -19,7 +19,7 @@ package org.apache.poi.hssf.record.formula;
 
 import java.util.List;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -69,7 +69,7 @@ public class UnaryPlusPtg extends OperationPtg
     }
     
     /** Implementation of method from Ptg */
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "+";
     }
index 8d00ec34dff3a5f111b82fe20542f14d2f257625..3b671e22fd499cfd123cfc94a007478471a6ad09 100644 (file)
@@ -17,7 +17,7 @@
 
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -59,7 +59,7 @@ public class UnionPtg extends OperationPtg
     }
 
     /** Implementation of method from Ptg */
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return ",";
     }
index 56493d906ab0104300334364333159046b73029e..af5ebc84416a850d687140407b8c999a73ae8842 100644 (file)
@@ -16,7 +16,7 @@
 ==================================================================== */
 package org.apache.poi.hssf.record.formula;
 
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.hssf.record.RecordInputStream;
 
 /**
@@ -51,7 +51,7 @@ public class UnknownPtg
         return size;
     }
 
-    public String toFormulaString(HSSFWorkbook book)
+    public String toFormulaString(Workbook book)
     {
         return "UNKNOWN";
     }
index 4152e3ae19175810a4b946907580b51b8da67bcf..bd955f8254c6c33181b3198c361423b715b525db 100644 (file)
@@ -112,7 +112,8 @@ public class HSSFName implements Name {
     private void setSheetName(String sheetName){
         int sheetNumber = book.getSheetIndex(sheetName);
 
-        short externSheetNumber = book.getExternalSheetIndex(sheetNumber);
+        short externSheetNumber = (short)
+               book.getExternalSheetIndex(sheetNumber);
         name.setExternSheetNumber(externSheetNumber);
 //        name.setIndexToSheet(externSheetNumber);
 
index 41356948306609d84abd75a818f360b81d4b5ec5..4b44fb5c4c14d4b1d5936241f9511c5d2e391e08 100644 (file)
@@ -548,7 +548,7 @@ public class HSSFWorkbook extends POIDocument implements org.apache.poi.ss.userm
      * Used by some of the more obscure formula and 
      *  named range things.
      */
-    public short getExternalSheetIndex(int internalSheetIndex) {
+    public int getExternalSheetIndex(int internalSheetIndex) {
        return workbook.checkExternSheet(internalSheetIndex);
     }
 
index 9fe8dd1f3d50747dc7172b15d92613f2a00d46ab..d23ed27c6b89a3fd46aa74c1a5c7561c931b830c 100644 (file)
@@ -17,9 +17,6 @@
 
 package org.apache.poi.hssf.util;
 
-import java.util.HashMap;
-import java.util.Map;
-
 /**
  * Holds a collection of Sheet names and their associated
  * reference numbers.
@@ -27,20 +24,6 @@ import java.util.Map;
  * @author Andrew C. Oliver (acoliver at apache dot org)
  *
  */
-public class SheetReferences
+public class SheetReferences extends org.apache.poi.ss.util.SheetReferences
 {
-    Map map;
-    public SheetReferences()
-    {
-      map = new HashMap(5);
-    }
-    public void addSheetReference(String sheetName, int number) {
-       map.put(new Integer(number), sheetName);
-    } 
-
-    public String getSheetName(int number) {
-       return (String)map.get(new Integer(number));
-    }
-
 }
index 80287f5ec468d78332e4022a7afbe30d75327549..b133c0ff333fad4c9ce10c973623d77ebbc597c4 100644 (file)
@@ -60,7 +60,6 @@ import org.apache.poi.hssf.record.formula.eval.RefEval;
 import org.apache.poi.hssf.record.formula.eval.StringEval;
 import org.apache.poi.hssf.record.formula.eval.ValueEval;
 import org.apache.poi.hssf.usermodel.HSSFFormulaEvaluator;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 
 /**
  * @author Amol S. Deshmukh &lt; amolweb at ya hoo dot com &gt;
@@ -333,16 +332,8 @@ public class FormulaEvaluator {
     private static ValueEval evaluateCell(Workbook workbook, Sheet sheet, 
             int srcRowNum, short srcColNum, String cellFormulaText) {
        
-       FormulaParser parser;
-       if(workbook instanceof HSSFWorkbook) {
-               parser = HSSFFormulaEvaluator.getUnderlyingParser(
-                               (HSSFWorkbook)workbook,
-                               cellFormulaText
-               );
-       } else {
-               // Hope for the best...
-               parser = new FormulaParser(cellFormulaText, null);
-       }
+       FormulaParser parser =
+               new FormulaParser(cellFormulaText, workbook);
        
         parser.parse();
         Ptg[] ptgs = parser.getRPNPtg();
diff --git a/src/java/org/apache/poi/ss/util/SheetReferences.java b/src/java/org/apache/poi/ss/util/SheetReferences.java
new file mode 100644 (file)
index 0000000..74b84f5
--- /dev/null
@@ -0,0 +1,46 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.ss.util;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Holds a collection of Sheet names and their associated
+ * reference numbers.
+ *
+ * @author Andrew C. Oliver (acoliver at apache dot org)
+ *
+ */
+public class SheetReferences
+{
+    Map map;
+    public SheetReferences()
+    {
+      map = new HashMap(5);
+    }
+    public void addSheetReference(String sheetName, int number) {
+       map.put(new Integer(number), sheetName);
+    } 
+
+    public String getSheetName(int number) {
+       return (String)map.get(new Integer(number));
+    }
+
+}
index 5605752d0acbd6cdf95f3bcb2bbd2881f5343fb5..53f439b71388ec1cdc73f58d0453624a47e85566 100644 (file)
@@ -21,6 +21,8 @@ import java.io.IOException;
 import java.io.OutputStream;
 import java.util.List;
 
+import org.apache.poi.ss.util.SheetReferences;
+
 public interface Workbook {
 
     /**
@@ -141,6 +143,15 @@ public interface Workbook {
      */
     int getSheetIndex(Sheet sheet);
 
+    /**
+     * Returns the external sheet index of the sheet
+     *  with the given internal index, creating one
+     *  if needed.
+     * Used by some of the more obscure formula and 
+     *  named range things.
+     */
+    int getExternalSheetIndex(int internalSheetIndex);
+    
     /**
      * create an HSSFSheet for this HSSFWorkbook, adds it to the sheets and returns
      * the high level representation.  Use this to create new sheets.
@@ -206,6 +217,8 @@ public interface Workbook {
 
     void removeSheetAt(int index);
 
+    SheetReferences getSheetReferences();
+    
     /**
      * determine whether the Excel GUI will backup the workbook when saving.
      *
@@ -352,6 +365,14 @@ public interface Workbook {
      */
     String getNameName(int index);
 
+    /**
+     * TODO - make this less cryptic / move elsewhere
+     * @param refIndex Index to REF entry in EXTERNSHEET record in the Link Table
+     * @param definedNameIndex zero-based to DEFINEDNAME or EXTERNALNAME record
+     * @return the string representation of the defined or external name
+     */
+    String resolveNameXText(int refIndex, int definedNameIndex);
+
     /**
      * Sets the printarea for the sheet provided
      * <p>
index 72432380568d23f934bdf67d0f3497507e237417..37f130a74e9b39db8ca8f11f7288805a0ad20cc4 100644 (file)
@@ -39,6 +39,7 @@ import org.apache.poi.ss.usermodel.SharedStringSource;
 import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.StylesSource;
 import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.ss.util.SheetReferences;
 import org.apache.poi.util.POILogFactory;
 import org.apache.poi.util.POILogger;
 import org.apache.poi.xssf.model.CommentsTable;
@@ -498,8 +499,17 @@ public class XSSFWorkbook extends POIXMLDocument implements Workbook {
        }
        return -1;
     }
+    
+    /**
+     * TODO - figure out what the hell this methods does in
+     *  HSSF...
+     */
+    public String resolveNameXText(int refIndex, int definedNameIndex) {
+               // TODO Replace with something proper
+               return null;
+       }
 
-    public short getNumCellStyles() {
+       public short getNumCellStyles() {
         // TODO Auto-generated method stub
         return 0;
     }
@@ -573,12 +583,33 @@ public class XSSFWorkbook extends POIXMLDocument implements Workbook {
     public int getSheetIndex(Sheet sheet) {
         return this.sheets.indexOf(sheet);
     }
+    
+    /**
+     * Returns the external sheet index of the sheet
+     *  with the given internal index, creating one
+     *  if needed.
+     * Used by some of the more obscure formula and 
+     *  named range things.
+     * Fairly easy on XSSF (we think...) since the
+     *  internal and external indicies are the same
+     */
+    public int getExternalSheetIndex(int internalSheetIndex) {
+       return internalSheetIndex;
+    }
 
     public String getSheetName(int sheet) {
         return this.workbook.getSheets().getSheetArray(sheet).getName();
     }
+    
+    public SheetReferences getSheetReferences() {
+       SheetReferences sr = new SheetReferences();
+       for(int i=0; i<getNumberOfSheets(); i++) {
+               sr.addSheetReference(getSheetName(i), i);
+       }
+       return sr;
+       }
 
-    public void insertChartRecord() {
+       public void insertChartRecord() {
         // TODO Auto-generated method stub
 
     }