Class ExtendedFormatRecord


  • public final class ExtendedFormatRecord
    extends StandardRecord
    Title: Extended Format Record Description: Probably one of the more complex records. There are two breeds: Style and Cell.

    It should be noted that fields in the extended format record are somewhat arbitrary. Almost all of the fields are bit-level, but we name them as best as possible by functional group. In some places this is better than others.

    REFERENCE: PG 426 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)

    Since:
    2.0-pre
    • Constructor Detail

      • ExtendedFormatRecord

        public ExtendedFormatRecord()
        Constructor ExtendedFormatRecord
    • Method Detail

      • setFontIndex

        public void setFontIndex​(short index)
        set the index to the FONT record (which font to use 0 based)
        Parameters:
        index - to the font
        See Also:
        FontRecord
      • setFormatIndex

        public void setFormatIndex​(short index)
        set the index to the Format record (which FORMAT to use 0-based)
        Parameters:
        index - to the format record
        See Also:
        FormatRecord
      • setCellOptions

        public void setCellOptions​(short options)
        sets the options bitmask - you can also use corresponding option bit setters (see other methods that reference this one)
        Parameters:
        options - bitmask to set
      • setLocked

        public void setLocked​(boolean locked)
        set whether the cell is locked or not
        Parameters:
        locked - - if the cell is locked
        See Also:
        setCellOptions(short)
      • setHidden

        public void setHidden​(boolean hidden)
        set whether the cell is hidden or not
        Parameters:
        hidden - - if the cell is hidden
        See Also:
        setCellOptions(short)
      • setXFType

        public void setXFType​(short type)
        set whether the cell is a cell or style XFRecord
        Parameters:
        type - - cell or style (0/1)
        See Also:
        XF_STYLE, XF_CELL, setCellOptions(short)
      • set123Prefix

        public void set123Prefix​(boolean prefix)
        set some old holdover from lotus 123. Who cares, its all over for Lotus. RIP Lotus.
        Parameters:
        prefix - - the lotus thing to set.
        See Also:
        setCellOptions(short)
      • setParentIndex

        public void setParentIndex​(short parent)
        for cell XF types this is the parent style (usually 0/normal). For style this should be NULL.
        Parameters:
        parent - index of parent XF
        See Also:
        NULL, setCellOptions(short)
      • setAlignmentOptions

        public void setAlignmentOptions​(short options)
        set the alignment options bitmask. See corresponding bitsetter methods that reference this one.
        Parameters:
        options - - the bitmask to set
      • setWrapText

        public void setWrapText​(boolean wrapped)
        set whether to wrap the text in the cell
        Parameters:
        wrapped - - whether or not to wrap the cell text
        See Also:
        setAlignmentOptions(short)
      • setJustifyLast

        public void setJustifyLast​(short justify)
        Dunno. Docs just say this is for far east versions.. (I'm guessing it justifies for right-to-left read languages)
        Parameters:
        justify - use 0 for US
        See Also:
        setAlignmentOptions(short)
      • setRotation

        public void setRotation​(short rotation)
        set the degree of rotation.
        Parameters:
        rotation - the degree of rotation
        See Also:
        setAlignmentOptions(short)
      • setIndentionOptions

        public void setIndentionOptions​(short options)
        set the indent options bitmask (see corresponding bitmask setters that reference this field)
        Parameters:
        options - bitmask to set.
      • setIndent

        public void setIndent​(short indent)
        set indention (not sure of the units, think its spaces)
        Parameters:
        indent - - how far to indent the cell
        See Also:
        setIndentionOptions(short)
      • setShrinkToFit

        public void setShrinkToFit​(boolean shrink)
        set whether to shrink the text to fit
        Parameters:
        shrink - - shrink to fit or not
        See Also:
        setIndentionOptions(short)
      • setMergeCells

        public void setMergeCells​(boolean merge)
        set whether to merge cells
        Parameters:
        merge - - merge cells or not
        See Also:
        setIndentionOptions(short)
      • setReadingOrder

        public void setReadingOrder​(short order)
        set the reading order for far east versions (0 - Context, 1 - Left to right, 2 - right to left) - We could use some help with support for the far east.
        Parameters:
        order - - the reading order (0,1,2)
        See Also:
        setIndentionOptions(short)
      • setIndentNotParentFormat

        public void setIndentNotParentFormat​(boolean parent)
        set whether or not to use the format in this XF instead of the parent XF.
        Parameters:
        parent - - true if this XF has a different format value than its parent, false otherwise.
        See Also:
        setIndentionOptions(short)
      • setIndentNotParentFont

        public void setIndentNotParentFont​(boolean font)
        set whether or not to use the font in this XF instead of the parent XF.
        Parameters:
        font - - true if this XF has a different font value than its parent, false otherwise.
        See Also:
        setIndentionOptions(short)
      • setIndentNotParentAlignment

        public void setIndentNotParentAlignment​(boolean alignment)
        set whether or not to use the alignment in this XF instead of the parent XF.
        Parameters:
        alignment - true if this XF has a different alignment value than its parent, false otherwise.
        See Also:
        setIndentionOptions(short)
      • setIndentNotParentBorder

        public void setIndentNotParentBorder​(boolean border)
        set whether or not to use the border in this XF instead of the parent XF.
        Parameters:
        border - - true if this XF has a different border value than its parent, false otherwise.
        See Also:
        setIndentionOptions(short)
      • setIndentNotParentPattern

        public void setIndentNotParentPattern​(boolean pattern)

        Sets whether or not to use the pattern in this XF instead of the parent XF (foreground/background).

        Parameters:
        pattern - true if this XF has a different pattern value than its parent, false otherwise.
        See Also:
        setIndentionOptions(short)
      • setIndentNotParentCellOptions

        public void setIndentNotParentCellOptions​(boolean options)
        set whether or not to use the locking/hidden in this XF instead of the parent XF.
        Parameters:
        options - true if this XF has a different locking or hidden value than its parent, false otherwise.
        See Also:
        setIndentionOptions(short)
      • setBorderOptions

        public void setBorderOptions​(short options)
        set the border options bitmask (see the corresponding bitsetter methods that reference back to this one)
        Parameters:
        options - - the bit mask to set
      • setPaletteOptions

        public void setPaletteOptions​(short options)
        set the palette options bitmask (see the individual bitsetter methods that reference this one)
        Parameters:
        options - - the bitmask to set
      • setLeftBorderPaletteIdx

        public void setLeftBorderPaletteIdx​(short border)
        set the palette index for the left border color
        Parameters:
        border - - palette index
        See Also:
        setPaletteOptions(short)
      • setRightBorderPaletteIdx

        public void setRightBorderPaletteIdx​(short border)
        set the palette index for the right border color
        Parameters:
        border - - palette index
        See Also:
        setPaletteOptions(short)
      • setDiag

        public void setDiag​(short diag)
        Not sure what this is for (maybe fill lines?) 1 = down, 2 = up, 3 = both, 0 for none..
        Parameters:
        diag - - set whatever it is that this is.
        See Also:
        setPaletteOptions(short)
      • setAdtlPaletteOptions

        public void setAdtlPaletteOptions​(short options)
        set the additional palette options bitmask (see individual bitsetter methods that reference this method)
        Parameters:
        options - - bitmask to set
      • setTopBorderPaletteIdx

        public void setTopBorderPaletteIdx​(short border)
        set the palette index for the top border
        Parameters:
        border - - palette index
        See Also:
        setAdtlPaletteOptions(short)
      • setBottomBorderPaletteIdx

        public void setBottomBorderPaletteIdx​(short border)
        set the palette index for the bottom border
        Parameters:
        border - - palette index
        See Also:
        setAdtlPaletteOptions(short)
      • setAdtlDiag

        public void setAdtlDiag​(short diag)
        set for diagonal borders? No idea (its a palette color for the other function we didn't know what was?)
        Parameters:
        diag - - the palette index?
        See Also:
        setAdtlPaletteOptions(short)
      • setFillPaletteOptions

        public void setFillPaletteOptions​(short options)
        set the fill palette options bitmask (see bitfields for additional palette options)
        Parameters:
        options - the palette options
      • setFillForeground

        public void setFillForeground​(short color)
        set the foreground palette color index
        Parameters:
        color - - palette index
        See Also:
        setFillPaletteOptions(short)
      • setFillBackground

        public void setFillBackground​(short color)
        set the background palette color index
        Parameters:
        color - - palette index
        See Also:
        setFillPaletteOptions(short)
      • getFontIndex

        public short getFontIndex()
        get the index to the FONT record (which font to use 0 based)
        Returns:
        index to the font
        See Also:
        FontRecord
      • getFormatIndex

        public short getFormatIndex()
        get the index to the Format record (which FORMAT to use 0-based)
        Returns:
        index to the format record
        See Also:
        FormatRecord
      • getCellOptions

        public short getCellOptions()
        gets the options bitmask - you can also use corresponding option bit getters (see other methods that reference this one)
        Returns:
        options bitmask
      • isLocked

        public boolean isLocked()
        get whether the cell is locked or not
        Returns:
        locked - if the cell is locked
        See Also:
        getCellOptions()
      • isHidden

        public boolean isHidden()
        get whether the cell is hidden or not
        Returns:
        hidden - if the cell is hidden
        See Also:
        getCellOptions()
      • getXFType

        public short getXFType()
        get whether the cell is a cell or style XFRecord
        Returns:
        type - cell or style (0/1)
        See Also:
        XF_STYLE, XF_CELL, getCellOptions()
      • get123Prefix

        public boolean get123Prefix()
        get some old holdover from lotus 123. Who cares, its all over for Lotus. RIP Lotus.
        Returns:
        prefix - the lotus thing
        See Also:
        getCellOptions()
      • getParentIndex

        public short getParentIndex()
        for cell XF types this is the parent style (usually 0/normal). For style this should be NULL.
        Returns:
        index of parent XF
        See Also:
        NULL, getCellOptions()
      • getAlignmentOptions

        public short getAlignmentOptions()
        get the alignment options bitmask. See corresponding bitgetter methods that reference this one.
        Returns:
        options - the bitmask
      • getWrapText

        public boolean getWrapText()
        get whether to wrap the text in the cell
        Returns:
        wrapped - whether or not to wrap the cell text
        See Also:
        getAlignmentOptions()
      • getJustifyLast

        public short getJustifyLast()
        Dunno. Docs just say this is for far east versions.. (I'm guessing it justifies for right-to-left read languages)
        Returns:
        justify
        See Also:
        getAlignmentOptions()
      • getRotation

        public short getRotation()
        get the degree of rotation.
        Returns:
        rotation - the degree of rotation
        See Also:
        getAlignmentOptions()
      • getIndentionOptions

        public short getIndentionOptions()
        get the indent options bitmask (see corresponding bit getters that reference this field)
        Returns:
        options bitmask
      • getIndent

        public short getIndent()
        get indention (not sure of the units, think its spaces)
        Returns:
        indent - how far to indent the cell
        See Also:
        getIndentionOptions()
      • getShrinkToFit

        public boolean getShrinkToFit()
        get whether to shrink the text to fit
        Returns:
        shrink - shrink to fit or not
        See Also:
        getIndentionOptions()
      • getMergeCells

        public boolean getMergeCells()
        get whether to merge cells
        Returns:
        merge - merge cells or not
        See Also:
        getIndentionOptions()
      • getReadingOrder

        public short getReadingOrder()
        get the reading order for far east versions (0 - Context, 1 - Left to right, 2 - right to left) - We could use some help with support for the far east.
        Returns:
        order - the reading order (0,1,2)
        See Also:
        getIndentionOptions()
      • isIndentNotParentFormat

        public boolean isIndentNotParentFormat()
        get whether or not to use the format in this XF instead of the parent XF.
        Returns:
        parent - true if this XF has a different format value than its parent, false otherwise.
        See Also:
        getIndentionOptions()
      • isIndentNotParentFont

        public boolean isIndentNotParentFont()
        get whether or not to use the font in this XF instead of the parent XF.
        Returns:
        font - true if this XF has a different font value than its parent, false otherwise.
        See Also:
        getIndentionOptions()
      • isIndentNotParentAlignment

        public boolean isIndentNotParentAlignment()
        get whether or not to use the alignment in this XF instead of the parent XF.
        Returns:
        alignment true if this XF has a different alignment value than its parent, false otherwise.
        See Also:
        getIndentionOptions()
      • isIndentNotParentBorder

        public boolean isIndentNotParentBorder()
        get whether or not to use the border in this XF instead of the parent XF.
        Returns:
        border - true if this XF has a different border value than its parent, false otherwise.
        See Also:
        getIndentionOptions()
      • isIndentNotParentPattern

        public boolean isIndentNotParentPattern()
        get whether or not to use the pattern in this XF instead of the parent XF. (foregrount/background)
        Returns:
        pattern- true if this XF has a different pattern value than its parent, false otherwise.
        See Also:
        getIndentionOptions()
      • isIndentNotParentCellOptions

        public boolean isIndentNotParentCellOptions()
        get whether or not to use the locking/hidden in this XF instead of the parent XF.
        Returns:
        options- true if this XF has a different locking or hidden value than its parent, false otherwise.
        See Also:
        getIndentionOptions()
      • getBorderOptions

        public short getBorderOptions()
        get the border options bitmask (see the corresponding bit getter methods that reference back to this one)
        Returns:
        options - the bit mask to set
      • getPaletteOptions

        public short getPaletteOptions()
        get the palette options bitmask (see the individual bit getter methods that reference this one)
        Returns:
        options - the bitmask
      • getLeftBorderPaletteIdx

        public short getLeftBorderPaletteIdx()
        get the palette index for the left border color
        Returns:
        border - palette index
        See Also:
        getPaletteOptions()
      • getRightBorderPaletteIdx

        public short getRightBorderPaletteIdx()
        get the palette index for the right border color
        Returns:
        border - palette index
        See Also:
        getPaletteOptions()
      • getDiag

        public short getDiag()
        Not sure what this is for (maybe fill lines?) 1 = down, 2 = up, 3 = both, 0 for none..
        Returns:
        diag - whatever it is that this is.
        See Also:
        getPaletteOptions()
      • getAdtlPaletteOptions

        public int getAdtlPaletteOptions()
        get the additional palette options bitmask (see individual bit getter methods that reference this method)
        Returns:
        options - bitmask to set
      • getTopBorderPaletteIdx

        public short getTopBorderPaletteIdx()
        get the palette index for the top border
        Returns:
        border - palette index
        See Also:
        getAdtlPaletteOptions()
      • getBottomBorderPaletteIdx

        public short getBottomBorderPaletteIdx()
        get the palette index for the bottom border
        Returns:
        border - palette index
        See Also:
        getAdtlPaletteOptions()
      • getAdtlDiag

        public short getAdtlDiag()
        get for diagonal borders? No idea (its a palette color for the other function we didn't know what was?)
        Returns:
        diag - the palette index?
        See Also:
        getAdtlPaletteOptions()
      • getFillPaletteOptions

        public short getFillPaletteOptions()
        get the fill palette options bitmask (see indivdual bit getters that reference this method)
        Returns:
        options
      • getFillForeground

        public short getFillForeground()
        get the foreground palette color index
        Returns:
        color - palette index
        See Also:
        getFillPaletteOptions()
      • getFillBackground

        public short getFillBackground()
        get the background palette color index
        Returns:
        color palette index
        See Also:
        getFillPaletteOptions()
      • toString

        public java.lang.String toString()
        Description copied from class: Record
        get a string representation of the record (for biffview/debugging)
        Overrides:
        toString in class Record
      • getSid

        public short getSid()
        Description copied from class: Record
        return the non static version of the id for this record.
        Specified by:
        getSid in class Record
        Returns:
        he id for this record
      • cloneStyleFrom

        public void cloneStyleFrom​(ExtendedFormatRecord source)
        Clones all the style information from another ExtendedFormatRecord, onto this one. This will then hold all the same style options. If The source ExtendedFormatRecord comes from a different Workbook, you will need to sort out the font and format indices yourself!
        Parameters:
        source - the ExtendedFormatRecord to copy from
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Will consider two different records with the same contents as equals, as the various indexes that matter are embedded in the records
        Overrides:
        equals in class java.lang.Object
      • stateSummary

        public int[] stateSummary()