acoliver    02/04/27 19:04:58

  Modified:    src/java/org/apache/poi/hssf/record FormulaRecord.java
               src/java/org/apache/poi/hssf/record/formula
                        FormulaParser.java
               src/java/org/apache/poi/hssf/usermodel HSSFCell.java
  Log:
  Now provides string formula, reads simple formulas, mmmm formulas
  
  Revision  Changes    Path
  1.8       +2 -2      
jakarta-poi/src/java/org/apache/poi/hssf/record/FormulaRecord.java
  
  Index: FormulaRecord.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-poi/src/java/org/apache/poi/hssf/record/FormulaRecord.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- FormulaRecord.java        28 Apr 2002 00:44:40 -0000      1.7
  +++ FormulaRecord.java        28 Apr 2002 02:04:58 -0000      1.8
  @@ -157,7 +157,7 @@
                                               int offset)
       {
           Stack stack = new Stack();
  -        /*int   pos   = 22 + offset;
  +        int   pos   = 22 + offset;
   
           while (pos < size)
           {
  @@ -165,7 +165,7 @@
   
               pos += ptg.getSize();
               stack.push(ptg);
  -        }*/
  +        }
           return stack;
       }
   
  
  
  
  1.4       +12 -0     
jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FormulaParser.java
  
  Index: FormulaParser.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-poi/src/java/org/apache/poi/hssf/record/formula/FormulaParser.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- FormulaParser.java        27 Apr 2002 17:26:06 -0000      1.3
  +++ FormulaParser.java        28 Apr 2002 02:04:58 -0000      1.4
  @@ -390,6 +390,18 @@
               return (Ptg[]) tokens.toArray(retval);
          }
       }
  +  
  +    /**
  +     * Convience method which takes in a list then passes it to the other 
toFormulaString
  +     * signature
  +     */
  +    public static String toFormulaString(List lptgs) {
  +        String retval = null;
  +        Ptg[] ptgs = new Ptg[lptgs.size()];
  +        ptgs = (Ptg[])lptgs.toArray(ptgs);
  +        retval = toFormulaString(ptgs);
  +        return retval;
  +    }
       
       /** Static method to convert an array of Ptgs in RPN order 
        *  to a human readable string format in infix mode
  
  
  
  1.8       +9 -0      jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFCell.java
  
  Index: HSSFCell.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFCell.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- HSSFCell.java     27 Apr 2002 17:26:06 -0000      1.7
  +++ HSSFCell.java     28 Apr 2002 02:04:58 -0000      1.8
  @@ -712,6 +712,15 @@
           }
       }
       
  +    public String getCellFormula() {
  +        String retval=null;
  +        
  +        retval = 
  +              
FormulaParser.toFormulaString(((FormulaRecord)record).getParsedExpression());
  +        
  +        return retval;   
  +    }
  +    
       
       /**
        * get the value of the cell as a number.  For strings we throw an exception.
  
  
  


Reply via email to