org.apache.poi.ddf
Class EscherTextboxRecord

java.lang.Object
  extended by org.apache.poi.ddf.EscherRecord
      extended by org.apache.poi.ddf.EscherTextboxRecord

public class EscherTextboxRecord
extends EscherRecord

Holds data from the parent application. Most commonly used to store text in the format of the parent application, rather than in Escher format. We don't attempt to understand the contents, since they will be in the parent's format, not Escher format.

Author:
Glen Stampoultzis (glens at apache.org), Nick Burch (nick at torchbox dot com)

Field Summary
static java.lang.String RECORD_DESCRIPTION
           
static short RECORD_ID
           
 
Constructor Summary
EscherTextboxRecord()
           
 
Method Summary
 java.lang.Object clone()
          Escher records may need to be clonable in the future.
 int fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)
          The contract of this method is to deserialize an escher record including it's children.
 byte[] getData()
          Returns any extra data associated with this record.
 java.lang.String getRecordName()
          Subclasses should return the short name for this escher record.
 int getRecordSize()
          Subclasses should effeciently return the number of bytes required to serialize the record.
 int serialize(int offset, byte[] data, EscherSerializationListener listener)
          Serializes the record to an existing byte array.
 void setData(byte[] b)
           
 void setData(byte[] b, int start, int length)
          Sets the extra data (in the parent application's format) to be contained by the record.
 java.lang.String toString()
           
 
Methods inherited from class org.apache.poi.ddf.EscherRecord
display, fillFields, getChild, getChildRecords, getInstance, getOptions, getRecordId, getVersion, isContainerRecord, readHeader, readInstance, serialize, serialize, setChildRecords, setInstance, setOptions, setRecordId, setVersion
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

RECORD_ID

public static final short RECORD_ID
See Also:
Constant Field Values

RECORD_DESCRIPTION

public static final java.lang.String RECORD_DESCRIPTION
See Also:
Constant Field Values
Constructor Detail

EscherTextboxRecord

public EscherTextboxRecord()
Method Detail

fillFields

public int fillFields(byte[] data,
                      int offset,
                      EscherRecordFactory recordFactory)
Description copied from class: EscherRecord
The contract of this method is to deserialize an escher record including it's children.

Specified by:
fillFields in class EscherRecord
Parameters:
data - The byte array containing the serialized escher records.
offset - The offset into the byte array.
recordFactory - A factory for creating new escher records.
Returns:
The number of bytes written.

serialize

public int serialize(int offset,
                     byte[] data,
                     EscherSerializationListener listener)
Description copied from class: EscherRecord
Serializes the record to an existing byte array.

Specified by:
serialize in class EscherRecord
Parameters:
offset - the offset within the byte array
data - the data array to serialize to
listener - a listener for begin and end serialization events. This is useful because the serialization is hierarchical/recursive and sometimes you need to be able break into that.
Returns:
the number of bytes written.

getData

public byte[] getData()
Returns any extra data associated with this record. In practice excel does not seem to put anything here, but with PowerPoint this will contain the bytes that make up a TextHeaderAtom followed by a TextBytesAtom/TextCharsAtom


setData

public void setData(byte[] b,
                    int start,
                    int length)
Sets the extra data (in the parent application's format) to be contained by the record. Used when the parent application changes the contents.


setData

public void setData(byte[] b)

getRecordSize

public int getRecordSize()
Description copied from class: EscherRecord
Subclasses should effeciently return the number of bytes required to serialize the record.

Specified by:
getRecordSize in class EscherRecord
Returns:
number of bytes

clone

public java.lang.Object clone()
Description copied from class: EscherRecord
Escher records may need to be clonable in the future.

Overrides:
clone in class EscherRecord

getRecordName

public java.lang.String getRecordName()
Description copied from class: EscherRecord
Subclasses should return the short name for this escher record.

Specified by:
getRecordName in class EscherRecord

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


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