Class AreaPtgBase

All Implemented Interfaces:
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.
Author:
andy, Jason Height (jheight at chariot dot net dot au)
  • Constructor Details

    • 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 Details

    • notImplemented

      protected final 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 String formatReferenceAsString()
    • toFormulaString

      public 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