org.apache.poi.ddf
Class EscherSpRecord

java.lang.Object
  extended by org.apache.poi.ddf.EscherRecord
      extended by org.apache.poi.ddf.EscherSpRecord
All Implemented Interfaces:
java.lang.Cloneable

public class EscherSpRecord
extends EscherRecord

Together the the EscherOptRecord this record defines some of the basic properties of a shape.


Field Summary
static int FLAG_BACKGROUND
           
static int FLAG_CHILD
           
static int FLAG_CONNECTOR
           
static int FLAG_DELETED
           
static int FLAG_FLIPHORIZ
           
static int FLAG_FLIPVERT
           
static int FLAG_GROUP
           
static int FLAG_HASSHAPETYPE
           
static int FLAG_HAVEANCHOR
           
static int FLAG_HAVEMASTER
           
static int FLAG_OLESHAPE
           
static int FLAG_PATRIARCH
           
static java.lang.String RECORD_DESCRIPTION
           
static short RECORD_ID
           
 
Constructor Summary
EscherSpRecord()
           
 
Method Summary
 int fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)
          The contract of this method is to deserialize an escher record including it's children.
protected  java.lang.Object[][] getAttributeMap()
          For the purpose of providing toString() and toXml() a subclass can either override those methods or provide a Object[][] array in the form { { "Attribute Name (Header)", value, "optional attribute", value }, ...
 int getFlags()
          The flags that apply to this shape.
 short getRecordId()
          Return the current record id.
 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 getShapeId()
           
 short getShapeType()
          Returns shape type.
 int serialize(int offset, byte[] data, EscherSerializationListener listener)
          This method serializes this escher record into a byte array.
 void setFlags(int field_2_flags)
          The flags that apply to this shape.
 void setShapeId(int field_1_shapeId)
          Sets a number that identifies this shape.
 void setShapeType(short value)
          Sets shape type.
 
Methods inherited from class org.apache.poi.ddf.EscherRecord
clone, display, fillFields, getChild, getChildRecords, getInstance, getOptions, getVersion, isContainerRecord, readHeader, readInstance, serialize, serialize, setChildRecords, setInstance, setOptions, setRecordId, setVersion, toString, toXml, toXml
 
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

FLAG_GROUP

public static final int FLAG_GROUP
See Also:
Constant Field Values

FLAG_CHILD

public static final int FLAG_CHILD
See Also:
Constant Field Values

FLAG_PATRIARCH

public static final int FLAG_PATRIARCH
See Also:
Constant Field Values

FLAG_DELETED

public static final int FLAG_DELETED
See Also:
Constant Field Values

FLAG_OLESHAPE

public static final int FLAG_OLESHAPE
See Also:
Constant Field Values

FLAG_HAVEMASTER

public static final int FLAG_HAVEMASTER
See Also:
Constant Field Values

FLAG_FLIPHORIZ

public static final int FLAG_FLIPHORIZ
See Also:
Constant Field Values

FLAG_FLIPVERT

public static final int FLAG_FLIPVERT
See Also:
Constant Field Values

FLAG_CONNECTOR

public static final int FLAG_CONNECTOR
See Also:
Constant Field Values

FLAG_HAVEANCHOR

public static final int FLAG_HAVEANCHOR
See Also:
Constant Field Values

FLAG_BACKGROUND

public static final int FLAG_BACKGROUND
See Also:
Constant Field Values

FLAG_HASSHAPETYPE

public static final int FLAG_HASSHAPETYPE
See Also:
Constant Field Values
Constructor Detail

EscherSpRecord

public EscherSpRecord()
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)
This method serializes this escher record into a byte array.

Specified by:
serialize in class EscherRecord
Parameters:
offset - The offset into data to start writing the record data to.
data - The byte array to serialize to.
listener - A listener to retrieve start and end callbacks. Use a NullEscherSerailizationListener to ignore these events.
Returns:
The number of bytes written.
See Also:
NullEscherSerializationListener

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

getRecordId

public short getRecordId()
Description copied from class: EscherRecord
Return the current record id.

Overrides:
getRecordId in class EscherRecord
Returns:
The 16 bit record id.

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
Returns:
the short name for this escher record

getShapeId

public int getShapeId()
Returns:
A number that identifies this shape

setShapeId

public void setShapeId(int field_1_shapeId)
Sets a number that identifies this shape.

Parameters:
field_1_shapeId - the shape id

getFlags

public int getFlags()
The flags that apply to this shape.

Returns:
the flags
See Also:
FLAG_GROUP, FLAG_CHILD, FLAG_PATRIARCH, FLAG_DELETED, FLAG_OLESHAPE, FLAG_HAVEMASTER, FLAG_FLIPHORIZ, FLAG_FLIPVERT, FLAG_CONNECTOR, FLAG_HAVEANCHOR, FLAG_BACKGROUND, FLAG_HASSHAPETYPE

setFlags

public void setFlags(int field_2_flags)
The flags that apply to this shape.

Parameters:
field_2_flags - the flags
See Also:
FLAG_GROUP, FLAG_CHILD, FLAG_PATRIARCH, FLAG_DELETED, FLAG_OLESHAPE, FLAG_HAVEMASTER, FLAG_FLIPHORIZ, FLAG_FLIPVERT, FLAG_CONNECTOR, FLAG_HAVEANCHOR, FLAG_BACKGROUND, FLAG_HASSHAPETYPE

getShapeType

public short getShapeType()
Returns shape type. Must be one of MSOSPT values (see [MS-ODRAW] for details).

Returns:
shape type

setShapeType

public void setShapeType(short value)
Sets shape type. Must be one of MSOSPT values (see [MS-ODRAW] for details).

Parameters:
value - new shape type

getAttributeMap

protected java.lang.Object[][] getAttributeMap()
Description copied from class: EscherRecord
For the purpose of providing toString() and toXml() a subclass can either override those methods or provide a Object[][] array in the form { { "Attribute Name (Header)", value, "optional attribute", value }, ... } .

Null values won't be printed.

The attributes record, version, instance, options must not be returned.

Specified by:
getAttributeMap in class EscherRecord
Returns:
the attribute map