org.apache.poi.hslf.usermodel
Class HSLFTableCell

java.lang.Object
  extended by org.apache.poi.hslf.usermodel.HSLFShape
      extended by org.apache.poi.hslf.usermodel.HSLFSimpleShape
          extended by org.apache.poi.hslf.usermodel.HSLFTextShape
              extended by org.apache.poi.hslf.usermodel.HSLFTextBox
                  extended by org.apache.poi.hslf.usermodel.HSLFTableCell
All Implemented Interfaces:
java.lang.Iterable<HSLFTextParagraph>, IAdjustableShape, AutoShape<HSLFShape,HSLFTextParagraph>, PlaceableShape<HSLFShape,HSLFTextParagraph>, Shape<HSLFShape,HSLFTextParagraph>, SimpleShape<HSLFShape,HSLFTextParagraph>, TableCell<HSLFShape,HSLFTextParagraph>, TextBox<HSLFShape,HSLFTextParagraph>, TextShape<HSLFShape,HSLFTextParagraph>

public final class HSLFTableCell
extends HSLFTextBox
implements TableCell<HSLFShape,HSLFTextParagraph>

Represents a cell in a ppt table


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.apache.poi.sl.usermodel.TableCell
TableCell.BorderEdge
 
Nested classes/interfaces inherited from interface org.apache.poi.sl.usermodel.TextShape
TextShape.TextAutofit, TextShape.TextDirection, TextShape.TextPlaceholder
 
Field Summary
protected static int DEFAULT_HEIGHT
           
protected static int DEFAULT_WIDTH
           
 
Fields inherited from class org.apache.poi.hslf.usermodel.HSLFTextShape
WrapByPoints, WrapNone, WrapSquare, WrapThrough, WrapTopBottom
 
Fields inherited from class org.apache.poi.hslf.usermodel.HSLFSimpleShape
_hyperlink, DEFAULT_LINE_WIDTH
 
Constructor Summary
protected HSLFTableCell(EscherContainerRecord escherRecord, HSLFTable parent)
          Create a TableCell object and initialize it from the supplied Record container.
  HSLFTableCell(HSLFTable parent)
          Create a new TableCell.
 
Method Summary
protected  HSLFLine addLine(TableCell.BorderEdge edge)
           
protected  void applyLineProperties(TableCell.BorderEdge edge, HSLFLine other)
           
protected  EscherContainerRecord createSpContainer(boolean isChild)
          Create a new TextBox and initialize its internal structures
 java.awt.Color getBorderColor(TableCell.BorderEdge edge)
           
 StrokeStyle.LineCompound getBorderCompound(TableCell.BorderEdge edge)
           
 StrokeStyle.LineDash getBorderDash(TableCell.BorderEdge edge)
           
 StrokeStyle getBorderStyle(TableCell.BorderEdge edge)
          Return line style of given edge or null if border is not defined
 java.lang.Double getBorderWidth(TableCell.BorderEdge edge)
           
 int getGridSpan()
          Get the number of columns to be spanned/merged
 HSLFTable getParent()
           
 int getRowSpan()
          Get the number of rows to be spanned/merged
protected  HSLFTableCell getSiblingCell(int row, int col)
           
 boolean isMerged()
          Return if this cell is part of a merged cell.
 void removeBorder(TableCell.BorderEdge edge)
          Remove all line attributes of the given border edge
 void setAnchor(java.awt.geom.Rectangle2D anchor)
          Sets the anchor (the bounding box rectangle) of this shape.
 void setBorderColor(TableCell.BorderEdge edge, java.awt.Color color)
          Convenience method for setting the border color.
 void setBorderCompound(TableCell.BorderEdge edge, StrokeStyle.LineCompound compound)
          Convenience method for setting the border line compound.
 void setBorderDash(TableCell.BorderEdge edge, StrokeStyle.LineDash dash)
          Convenience method for setting the border line dash.
 void setBorderStyle(TableCell.BorderEdge edge, StrokeStyle style)
          Sets the StrokeStyle of the given border edge.
 void setBorderWidth(TableCell.BorderEdge edge, double width)
          Convenience method for setting the border width.
protected  void setGridSpan(int gridSpan)
          Set the gridSpan (aka col-span)
protected  void setRowSpan(int rowSpan)
          Set the rowSpan
 
Methods inherited from class org.apache.poi.hslf.usermodel.HSLFTextBox
setDefaultTextProperties
 
Methods inherited from class org.apache.poi.hslf.usermodel.HSLFTextShape
afterInsert, appendText, getBottomInset, getEscherTextboxWrapper, getHFPlaceholderAtom, getHyperlinks, getInsets, getLeftInset, getMetroShape, getPlaceholderAtom, getRawText, getRightInset, getRunType, getText, getTextDirection, getTextHeight, getTextHeight, getTextId, getTextParagraphs, getTextPlaceholder, getTextRotation, getTopInset, getVerticalAlignment, getWordWrap, getWordWrapEx, isAlignToBaseline, isHorizontalCentered, isPlaceholder, iterator, resizeToFitText, resizeToFitText, setAlignToBaseline, setBottomInset, setHorizontalCentered, setInsets, setLeftInset, setRightInset, setRunType, setSheet, setText, setTextDirection, setTextId, setTextPlaceholder, setTextRotation, setTopInset, setVerticalAlignment, setWordWrap, setWordWrapEx, storeText
 
Methods inherited from class org.apache.poi.hslf.usermodel.HSLFSimpleShape
createHyperlink, getAdjustValue, getFillColor, getGeometry, getHyperlink, getLineBackgroundColor, getLineCap, getLineColor, getLineCompound, getLineDash, getLineDecoration, getLineHeadDecoration, getLineHeadLength, getLineHeadWidth, getLineTailDecoration, getLineTailLength, getLineTailWidth, getLineWidth, getPlaceholder, getShadow, getShadowAngle, getShadowColor, getShadowDistance, getStrokeStyle, setFillColor, setHyperlink, setLineBackgroundColor, setLineCap, setLineColor, setLineCompound, setLineDash, setLineHeadDecoration, setLineHeadLength, setLineHeadWidth, setLineTailDecoration, setLineTailLength, setLineTailWidth, setLineWidth, setPlaceholder, setStrokeStyle
 
Methods inherited from class org.apache.poi.hslf.usermodel.HSLFShape
draw, getAnchor, getClientData, getClientDataRecord, getClientRecords, getEscherChild, getEscherChild, getEscherChild, getEscherChild, getEscherOptRecord, getEscherProperty, getEscherProperty, getEscherProperty, getFill, getFillStyle, getFlipHorizontal, getFlipVertical, getRotation, getShapeId, getShapeName, getShapeType, getSheet, getSpContainer, moveTo, setEscherProperty, setEscherProperty, setFlipHorizontal, setFlipVertical, setRotation, setShapeId, setShapeType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.poi.sl.usermodel.TextShape
appendText, getInsets, getText, getTextDirection, getTextHeight, getTextHeight, getTextParagraphs, getTextPlaceholder, getTextRotation, getVerticalAlignment, getWordWrap, isHorizontalCentered, resizeToFitText, resizeToFitText, setHorizontalCentered, setInsets, setText, setTextDirection, setTextPlaceholder, setTextRotation, setVerticalAlignment, setWordWrap
 
Methods inherited from interface org.apache.poi.sl.usermodel.SimpleShape
createHyperlink, getFillColor, getFillStyle, getGeometry, getHyperlink, getLineDecoration, getPlaceholder, getShadow, getShapeType, getStrokeStyle, setFillColor, setPlaceholder, setShapeType, setStrokeStyle
 
Methods inherited from interface org.apache.poi.sl.usermodel.Shape
draw, getAnchor, getSheet
 
Methods inherited from interface org.apache.poi.sl.draw.geom.IAdjustableShape
getAdjustValue
 
Methods inherited from interface org.apache.poi.sl.usermodel.PlaceableShape
getAnchor, getFlipHorizontal, getFlipVertical, getRotation, getSheet, setFlipHorizontal, setFlipVertical, setRotation
 
Methods inherited from interface java.lang.Iterable
iterator
 

Field Detail

DEFAULT_WIDTH

protected static final int DEFAULT_WIDTH
See Also:
Constant Field Values

DEFAULT_HEIGHT

protected static final int DEFAULT_HEIGHT
See Also:
Constant Field Values
Constructor Detail

HSLFTableCell

protected HSLFTableCell(EscherContainerRecord escherRecord,
                        HSLFTable parent)
Create a TableCell object and initialize it from the supplied Record container.

Parameters:
escherRecord - EscherSpContainer which holds information about this shape
parent - the parent of the shape

HSLFTableCell

public HSLFTableCell(HSLFTable parent)
Create a new TableCell. This constructor is used when a new shape is created.

Parameters:
parent - the parent of this Shape. For example, if this text box is a cell in a table then the parent is Table.
Method Detail

createSpContainer

protected EscherContainerRecord createSpContainer(boolean isChild)
Description copied from class: HSLFTextBox
Create a new TextBox and initialize its internal structures

Overrides:
createSpContainer in class HSLFTextBox
Parameters:
isChild - true if the Line is inside a group, false otherwise
Returns:
the created EscherContainerRecord which holds shape data

setAnchor

public void setAnchor(java.awt.geom.Rectangle2D anchor)
Description copied from class: HSLFShape
Sets the anchor (the bounding box rectangle) of this shape. All coordinates should be expressed in points (72 dpi).

Specified by:
setAnchor in interface PlaceableShape<HSLFShape,HSLFTextParagraph>
Overrides:
setAnchor in class HSLFShape
Parameters:
anchor - new anchor

getBorderStyle

public StrokeStyle getBorderStyle(TableCell.BorderEdge edge)
Description copied from interface: TableCell
Return line style of given edge or null if border is not defined

Specified by:
getBorderStyle in interface TableCell<HSLFShape,HSLFTextParagraph>
Parameters:
edge - the border edge
Returns:
line style of given edge or null if border is not defined

setBorderStyle

public void setBorderStyle(TableCell.BorderEdge edge,
                           StrokeStyle style)
Description copied from interface: TableCell
Sets the StrokeStyle of the given border edge. A null property of the style is ignored.

Specified by:
setBorderStyle in interface TableCell<HSLFShape,HSLFTextParagraph>
Parameters:
edge - border edge
style - the new stroke style

getBorderWidth

public java.lang.Double getBorderWidth(TableCell.BorderEdge edge)

setBorderWidth

public void setBorderWidth(TableCell.BorderEdge edge,
                           double width)
Description copied from interface: TableCell
Convenience method for setting the border width.

Specified by:
setBorderWidth in interface TableCell<HSLFShape,HSLFTextParagraph>
Parameters:
edge - border edge
width - the new border width

getBorderColor

public java.awt.Color getBorderColor(TableCell.BorderEdge edge)

setBorderColor

public void setBorderColor(TableCell.BorderEdge edge,
                           java.awt.Color color)
Description copied from interface: TableCell
Convenience method for setting the border color.

Specified by:
setBorderColor in interface TableCell<HSLFShape,HSLFTextParagraph>
Parameters:
edge - border edge
color - the new border color

getBorderDash

public StrokeStyle.LineDash getBorderDash(TableCell.BorderEdge edge)

setBorderDash

public void setBorderDash(TableCell.BorderEdge edge,
                          StrokeStyle.LineDash dash)
Description copied from interface: TableCell
Convenience method for setting the border line dash.

Specified by:
setBorderDash in interface TableCell<HSLFShape,HSLFTextParagraph>
Parameters:
edge - border edge
dash - the new border line dash

getBorderCompound

public StrokeStyle.LineCompound getBorderCompound(TableCell.BorderEdge edge)

setBorderCompound

public void setBorderCompound(TableCell.BorderEdge edge,
                              StrokeStyle.LineCompound compound)
Description copied from interface: TableCell
Convenience method for setting the border line compound.

Specified by:
setBorderCompound in interface TableCell<HSLFShape,HSLFTextParagraph>
Parameters:
edge - border edge
compound - the new border line compound

addLine

protected HSLFLine addLine(TableCell.BorderEdge edge)

removeBorder

public void removeBorder(TableCell.BorderEdge edge)
Description copied from interface: TableCell
Remove all line attributes of the given border edge

Specified by:
removeBorder in interface TableCell<HSLFShape,HSLFTextParagraph>
Parameters:
edge - the border edge to be cleared

getSiblingCell

protected HSLFTableCell getSiblingCell(int row,
                                       int col)

applyLineProperties

protected void applyLineProperties(TableCell.BorderEdge edge,
                                   HSLFLine other)

getParent

public HSLFTable getParent()
Specified by:
getParent in interface PlaceableShape<HSLFShape,HSLFTextParagraph>
Specified by:
getParent in interface Shape<HSLFShape,HSLFTextParagraph>
Overrides:
getParent in class HSLFShape
Returns:
the parent of this shape

setGridSpan

protected void setGridSpan(int gridSpan)
Set the gridSpan (aka col-span)

Parameters:
gridSpan - the number of columns to be spanned/merged
Since:
POI 3.15-beta2

setRowSpan

protected void setRowSpan(int rowSpan)
Set the rowSpan

Parameters:
rowSpan - the number of rows to be spanned/merged
Since:
POI 3.15-beta2

getGridSpan

public int getGridSpan()
Description copied from interface: TableCell
Get the number of columns to be spanned/merged

Specified by:
getGridSpan in interface TableCell<HSLFShape,HSLFTextParagraph>
Returns:
the grid span

getRowSpan

public int getRowSpan()
Description copied from interface: TableCell
Get the number of rows to be spanned/merged

Specified by:
getRowSpan in interface TableCell<HSLFShape,HSLFTextParagraph>
Returns:
the row span

isMerged

public boolean isMerged()
Description copied from interface: TableCell
Return if this cell is part of a merged cell. The top/left cell of a merged region is not regarded as merged - its grid and/or row span is greater than one.

Specified by:
isMerged in interface TableCell<HSLFShape,HSLFTextParagraph>
Returns:
true if this a merged cell


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