Package loci.poi.hssf.record
Class MergeCellsRecord
- java.lang.Object
-
- loci.poi.hssf.record.Record
-
- loci.poi.hssf.record.MergeCellsRecord
-
public class MergeCellsRecord extends Record
Title: Merged Cells Record
Description: Optional record defining a square area of cells to "merged" into one cell.
REFERENCE: NONE (UNDOCUMENTED PRESENTLY)- Version:
- 2.0-pre
- Author:
- Andrew C. Oliver (acoliver at apache dot org)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
MergeCellsRecord.MergedRegion
this is a low level representation of a MergedRegion of cells.
-
Field Summary
Fields Modifier and Type Field Description static short
sid
-
Constructor Summary
Constructors Constructor Description MergeCellsRecord()
MergeCellsRecord(RecordInputStream in)
Constructs a MergedCellsRecord and sets its fields appropriately
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description int
addArea(int rowfrom, short colfrom, int rowto, short colto)
Add an area to consider a merged cell.Object
clone()
protected void
fillFields(RecordInputStream in)
called by the constructor, should set class level fields.MergeCellsRecord.MergedRegion
getAreaAt(int index)
return the MergedRegion at the given index.short
getNumAreas()
get the number of merged areas.int
getRecordSize()
gives the current serialized size of the record.short
getSid()
return the non static version of the id for this record.void
removeAreaAt(int area)
essentially unmerge the cells in the "area" stored at the passed in indexint
serialize(int offset, byte[] data)
called by the class that is responsible for writing this sucker.void
setNumAreas(short numareas)
Deprecated.We now link the size to the actual array of merged regionsString
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
isInValueSection, isValue, serialize
-
-
-
-
Field Detail
-
sid
public static final short sid
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
MergeCellsRecord
public MergeCellsRecord()
-
MergeCellsRecord
public MergeCellsRecord(RecordInputStream in)
Constructs a MergedCellsRecord and sets its fields appropriately- Parameters:
in
- the RecordInputstream to read the record from
-
-
Method Detail
-
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
-
getNumAreas
public short getNumAreas()
get the number of merged areas. If this drops down to 0 you should just go ahead and delete the record.- Returns:
- number of areas
-
setNumAreas
public void setNumAreas(short numareas)
Deprecated.We now link the size to the actual array of merged regionsset the number of merged areas. You do not need to call this if you use addArea, it will be incremented automatically or decremented when an area is removed. If you are setting this to 0 then you are a terrible person. Just remove the record. (just kidding about you being a terrible person..hehe)- Parameters:
numareas
- number of areas- See Also:
getNumAreas()
-
addArea
public int addArea(int rowfrom, short colfrom, int rowto, short colto)
Add an area to consider a merged cell. The index returned is only gauranteed to be correct provided you do not add ahead of or remove ahead of it (in which case you should increment or decrement appropriately....in other words its an arrayList)- Parameters:
rowfrom
- - the upper left hand corner's rowcolfrom
- - the upper left hand corner's colrowto
- - the lower right hand corner's rowcolto
- - the lower right hand corner's col- Returns:
- new index of said area (don't depend on it if you add/remove)
-
removeAreaAt
public void removeAreaAt(int area)
essentially unmerge the cells in the "area" stored at the passed in index- Parameters:
area
- index
-
getAreaAt
public MergeCellsRecord.MergedRegion getAreaAt(int index)
return the MergedRegion at the given index.- Returns:
- MergedRegion representing the area that is Merged (r1,c1 - r2,c2)
-
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.
-
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.
-
toString
public String toString()
Description copied from class:Record
get a string representation of the record (for biffview/debugging)
-
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
-
-