org.apache.poi.hssf.record
Class PaletteRecord

java.lang.Object
  extended by org.apache.poi.hssf.record.Record
      extended by org.apache.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
static short FIRST_COLOR_INDEX
          The byte index of the first color
static short sid
           
static byte STANDARD_PALETTE_SIZE
          The standard size of an XLS palette
 
Constructor Summary
PaletteRecord()
           
PaletteRecord(RecordInputStream in)
          Constructs a PaletteRecord record and sets its fields appropriately.
 
Method Summary
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 index
 int 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.
 java.lang.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 org.apache.poi.hssf.record.Record
clone, cloneViaReserialise, isInValueSection, isValue, serialize
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

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 class Record
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 class Record
Parameters:
in - the RecordInputstream to read the record from

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

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.

Specified by:
serialize in class Record
Parameters:
offset - to begin writing at
data - byte array containing instance data
Returns:
number of bytes written

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

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


Copyright 2008 The Apache Software Foundation or its licensors, as applicable.