Package loci.poi.hssf.record
Class PaletteRecord
- java.lang.Object
-
- loci.poi.hssf.record.Record
-
- loci.poi.hssf.record.PaletteRecord
-
public class PaletteRecord extends Record
PaletteRecord - Supports custom palettes.- Version:
- 2.0-pre
- Author:
- Andrew C. Oliver (acoliver at apache dot org), Brian Sanders (bsanders at risklabs dot com) - custom palette editing
-
-
Field Summary
Fields Modifier and Type Field Description static short
FIRST_COLOR_INDEX
The byte index of the first colorstatic short
sid
static byte
STANDARD_PALETTE_SIZE
The standard size of an XLS palette
-
Constructor Summary
Constructors Constructor Description PaletteRecord()
PaletteRecord(RecordInputStream in)
Constructs a PaletteRecord record and sets its fields appropriately.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
fillFields(RecordInputStream in)
called by the constructor, should set class level fields.byte[]
getColor(short byteIndex)
Returns the color value at a given indexint
getRecordSize()
gives the current serialized size of the record.short
getSid()
return the non static version of the id for this record.int
serialize(int offset, byte[] data)
called by the class that is responsible for writing this sucker.void
setColor(short byteIndex, byte red, byte green, byte blue)
Sets the color value at a given index If the given index is greater than the current last color index, then black is inserted at every index required to make the palette continuous.String
toString()
get a string representation of the record (for biffview/debugging)protected void
validateSid(short id)
called by constructor, should throw runtime exception in the event of a record passed with a differing ID.-
Methods inherited from class loci.poi.hssf.record.Record
clone, isInValueSection, isValue, serialize
-
-
-
-
Field Detail
-
sid
public static final short sid
- See Also:
- Constant Field Values
-
STANDARD_PALETTE_SIZE
public static final byte STANDARD_PALETTE_SIZE
The standard size of an XLS palette- See Also:
- Constant Field Values
-
FIRST_COLOR_INDEX
public static final short FIRST_COLOR_INDEX
The byte index of the first color- See Also:
- Constant Field Values
-
-
Constructor Detail
-
PaletteRecord
public PaletteRecord()
-
PaletteRecord
public PaletteRecord(RecordInputStream in)
Constructs a PaletteRecord record and sets its fields appropriately.- Parameters:
in
- the RecordInputstream to read the record from
-
-
Method Detail
-
validateSid
protected void validateSid(short id)
Description copied from class:Record
called by constructor, should throw runtime exception in the event of a record passed with a differing ID.- Specified by:
validateSid
in classRecord
- Parameters:
id
- alleged id for this record
-
fillFields
protected void fillFields(RecordInputStream in)
Description copied from class:Record
called by the constructor, should set class level fields. Should throw runtime exception for bad/icomplete data.- Specified by:
fillFields
in classRecord
- Parameters:
in
- the RecordInputstream to read the record from
-
toString
public String toString()
Description copied from class:Record
get a string representation of the record (for biffview/debugging)
-
serialize
public int serialize(int offset, byte[] data)
Description copied from class:Record
called by the class that is responsible for writing this sucker. Subclasses should implement this so that their data is passed back in a byte array.
-
getRecordSize
public int getRecordSize()
Description copied from class:Record
gives the current serialized size of the record. Should include the sid and reclength (4 bytes).- Overrides:
getRecordSize
in classRecord
-
getSid
public short getSid()
Description copied from class:Record
return the non static version of the id for this record.
-
getColor
public byte[] getColor(short byteIndex)
Returns the color value at a given index- Returns:
- the RGB triplet for the color, or null if the specified index does not exist
-
setColor
public void setColor(short byteIndex, byte red, byte green, byte blue)
Sets the color value at a given index If the given index is greater than the current last color index, then black is inserted at every index required to make the palette continuous.- Parameters:
byteIndex
- the index to set; if this index is less than 0x8 or greater than 0x40, then no modification is made
-
-