org.apache.poi.ddf
Class EscherArrayProperty
java.lang.Object
org.apache.poi.ddf.EscherProperty
org.apache.poi.ddf.EscherComplexProperty
org.apache.poi.ddf.EscherArrayProperty
public class EscherArrayProperty
- extends EscherComplexProperty
Escher array properties are the most wierd construction ever invented
with all sorts of special cases. I'm hopeful I've got them all.
- Author:
- Glen Stampoultzis (glens at superlinksoftware.com)
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
EscherArrayProperty
public EscherArrayProperty(short id,
byte[] complexData)
EscherArrayProperty
public EscherArrayProperty(short propertyNumber,
boolean isBlipId,
byte[] complexData)
getNumberOfElementsInArray
public int getNumberOfElementsInArray()
setNumberOfElementsInArray
public void setNumberOfElementsInArray(int numberOfElements)
getNumberOfElementsInMemory
public int getNumberOfElementsInMemory()
setNumberOfElementsInMemory
public void setNumberOfElementsInMemory(int numberOfElements)
getSizeOfElements
public short getSizeOfElements()
setSizeOfElements
public void setSizeOfElements(int sizeOfElements)
getElement
public byte[] getElement(int index)
setElement
public void setElement(int index,
byte[] element)
toString
public java.lang.String toString()
- Description copied from class:
EscherComplexProperty
- Retrieves the string representation for this property.
- Overrides:
toString
in class EscherComplexProperty
setArrayData
public int setArrayData(byte[] data,
int offset)
- We have this method because the way in which arrays in escher works
is screwed for seemly arbitary reasons. While most properties are
fairly consistent and have a predictable array size, escher arrays
have special cases.
- Parameters:
data
- The data array containing the escher array informationoffset
- The offset into the array to start reading from.
- Returns:
- the number of bytes used by this complex property.
serializeSimplePart
public int serializeSimplePart(byte[] data,
int pos)
- Serializes the simple part of this property. ie the first 6 bytes.
Needs special code to handle the case when the size doesn't
include the size of the header block
- Overrides:
serializeSimplePart
in class EscherComplexProperty
getActualSizeOfElements
public static int getActualSizeOfElements(short sizeOfElements)
- Sometimes the element size is stored as a negative number. We
negate it and shift it to get the real value.
Copyright 2008 The Apache Software Foundation or
its licensors, as applicable.