org.apache.poi.ss.formula.ptg
Class AreaPtgBase

java.lang.Object
  extended by org.apache.poi.ss.formula.ptg.Ptg
      extended by org.apache.poi.ss.formula.ptg.OperandPtg
          extended by org.apache.poi.ss.formula.ptg.AreaPtgBase
All Implemented Interfaces:
java.lang.Cloneable, AreaI
Direct Known Subclasses:
Area2DPtgBase, Area3DPtg, Area3DPxg

public abstract class AreaPtgBase
extends OperandPtg
implements AreaI

Specifies a rectangular area of cells A1:A4 for instance.


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.apache.poi.ss.formula.ptg.AreaI
AreaI.OffsetArea
 
Field Summary
 
Fields inherited from class org.apache.poi.ss.formula.ptg.Ptg
CLASS_ARRAY, CLASS_REF, CLASS_VALUE, EMPTY_PTG_ARRAY
 
Constructor Summary
protected AreaPtgBase()
           
protected AreaPtgBase(AreaReference ar)
           
protected AreaPtgBase(int firstRow, int lastRow, int firstColumn, int lastColumn, boolean firstRowRelative, boolean lastRowRelative, boolean firstColRelative, boolean lastColRelative)
           
 
Method Summary
protected  java.lang.String formatReferenceAsString()
           
 byte getDefaultOperandClass()
           
 int getFirstColumn()
           
 short getFirstColumnRaw()
           
 int getFirstRow()
           
 int getLastColumn()
           
 short getLastColumnRaw()
           
 int getLastRow()
           
 boolean isFirstColRelative()
           
 boolean isFirstRowRelative()
           
 boolean isLastColRelative()
           
 boolean isLastRowRelative()
           
protected  java.lang.RuntimeException notImplemented()
          TODO - (May-2008) fix subclasses of AreaPtg 'AreaN~' which are used in shared formulas.
protected  void readCoordinates(LittleEndianInput in)
           
 void setFirstColRelative(boolean rel)
          set whether the first column is relative
 void setFirstColumn(int colIx)
          set the first column in the area
 void setFirstColumnRaw(int column)
          set the first column irrespective of the bitmasks
 void setFirstRow(int rowIx)
          sets the first row
 void setFirstRowRelative(boolean rel)
          sets the first row to relative or not
 void setLastColRelative(boolean rel)
          set whether the last column should be relative or not
 void setLastColumn(int colIx)
          set the last column in the area
 void setLastColumnRaw(short column)
          set the last column irrespective of the bitmasks
 void setLastRow(int rowIx)
           
 void setLastRowRelative(boolean rel)
          set whether the last row is relative or not
 void sortTopLeftToBottomRight()
          Sort the first and last row and columns in-place to the preferred (top left:bottom right) order Note: Sort only occurs when an instance is constructed or when this method is called.
 java.lang.String toFormulaString()
          return a string representation of this token alone
protected  void writeCoordinates(LittleEndianOutput out)
           
 
Methods inherited from class org.apache.poi.ss.formula.ptg.OperandPtg
copy, isBaseToken
 
Methods inherited from class org.apache.poi.ss.formula.ptg.Ptg
createPtg, doesFormulaReferToDeletedCell, getEncodedSize, getEncodedSizeWithoutArrayData, getPtgClass, getRVAType, getSize, readTokens, serializePtgs, setClass, toString, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AreaPtgBase

protected AreaPtgBase()

AreaPtgBase

protected AreaPtgBase(AreaReference ar)

AreaPtgBase

protected AreaPtgBase(int firstRow,
                      int lastRow,
                      int firstColumn,
                      int lastColumn,
                      boolean firstRowRelative,
                      boolean lastRowRelative,
                      boolean firstColRelative,
                      boolean lastColRelative)
Method Detail

notImplemented

protected final java.lang.RuntimeException notImplemented()
TODO - (May-2008) fix subclasses of AreaPtg 'AreaN~' which are used in shared formulas. see similar comment in ReferencePtg


sortTopLeftToBottomRight

public void sortTopLeftToBottomRight()
Sort the first and last row and columns in-place to the preferred (top left:bottom right) order Note: Sort only occurs when an instance is constructed or when this method is called.

For example, $E5:B$10 becomes B5:$E$10


readCoordinates

protected final void readCoordinates(LittleEndianInput in)

writeCoordinates

protected final void writeCoordinates(LittleEndianOutput out)

getFirstRow

public final int getFirstRow()
Specified by:
getFirstRow in interface AreaI
Returns:
the first row in the area

setFirstRow

public final void setFirstRow(int rowIx)
sets the first row

Parameters:
rowIx - number (0-based)

getLastRow

public final int getLastRow()
Specified by:
getLastRow in interface AreaI
Returns:
last row in the range (x2 in x1,y1-x2,y2)

setLastRow

public final void setLastRow(int rowIx)
Parameters:
rowIx - last row number in the area

getFirstColumn

public final int getFirstColumn()
Specified by:
getFirstColumn in interface AreaI
Returns:
the first column number in the area.

getFirstColumnRaw

public final short getFirstColumnRaw()
Returns:
the first column number + the options bit settings unstripped

isFirstRowRelative

public final boolean isFirstRowRelative()
Returns:
whether or not the first row is a relative reference or not.

setFirstRowRelative

public final void setFirstRowRelative(boolean rel)
sets the first row to relative or not

Parameters:
rel - is relative or not.

isFirstColRelative

public final boolean isFirstColRelative()
Returns:
isrelative first column to relative or not

setFirstColRelative

public final void setFirstColRelative(boolean rel)
set whether the first column is relative


setFirstColumn

public final void setFirstColumn(int colIx)
set the first column in the area


setFirstColumnRaw

public final void setFirstColumnRaw(int column)
set the first column irrespective of the bitmasks


getLastColumn

public final int getLastColumn()
Specified by:
getLastColumn in interface AreaI
Returns:
lastcolumn in the area

getLastColumnRaw

public final short getLastColumnRaw()
Returns:
last column and bitmask (the raw field)

isLastRowRelative

public final boolean isLastRowRelative()
Returns:
last row relative or not

setLastRowRelative

public final void setLastRowRelative(boolean rel)
set whether the last row is relative or not

Parameters:
rel - true if the last row relative, else false

isLastColRelative

public final boolean isLastColRelative()
Returns:
lastcol relative or not

setLastColRelative

public final void setLastColRelative(boolean rel)
set whether the last column should be relative or not


setLastColumn

public final void setLastColumn(int colIx)
set the last column in the area


setLastColumnRaw

public final void setLastColumnRaw(short column)
set the last column irrespective of the bitmasks


formatReferenceAsString

protected final java.lang.String formatReferenceAsString()

toFormulaString

public java.lang.String toFormulaString()
Description copied from class: Ptg
return a string representation of this token alone

Specified by:
toFormulaString in class Ptg

getDefaultOperandClass

public byte getDefaultOperandClass()
Specified by:
getDefaultOperandClass in class Ptg