org.apache.poi.xslf.usermodel
Class XSLFSheet

java.lang.Object
  extended by org.apache.poi.POIXMLDocumentPart
      extended by org.apache.poi.xslf.usermodel.XSLFSheet
All Implemented Interfaces:
java.lang.Iterable<XSLFShape>, XSLFShapeContainer
Direct Known Subclasses:
XSLFNotes, XSLFNotesMaster, XSLFSlide, XSLFSlideLayout, XSLFSlideMaster

@Beta
public abstract class XSLFSheet
extends POIXMLDocumentPart
implements XSLFShapeContainer


Field Summary
 
Fields inherited from class org.apache.poi.POIXMLDocumentPart
DEFAULT_XML_OPTIONS
 
Constructor Summary
XSLFSheet()
           
XSLFSheet(PackagePart part, PackageRelationship rel)
           
 
Method Summary
 XSLFSheet appendContent(XSLFSheet src)
          Append content to this sheet.
protected  java.util.List<XSLFShape> buildShapes(org.openxmlformats.schemas.presentationml.x2006.main.CTGroupShape spTree)
           
protected  boolean canDraw(XSLFShape shape)
          Checks if this sheet displays the specified shape.
 void clear()
          Removes all of the elements from this container (optional operation).
protected  void commit()
          Save the content in the underlying package part.
 XSLFAutoShape createAutoShape()
          create a new shape with a predefined geometry and add it to this shape container
 XSLFConnectorShape createConnector()
          create a connector
 XSLFFreeformShape createFreeform()
          create a new shape with a custom geometry
 XSLFGroupShape createGroup()
          create a group of shapes belonging to this container
 XSLFPictureShape createPicture(int pictureIndex)
          create a picture belonging to this container
 XSLFTable createTable()
           
 XSLFTextBox createTextBox()
          create a text box
 void draw(java.awt.Graphics2D graphics)
          Render this sheet into the supplied graphics object
 XSLFBackground getBackground()
           
 XSLFCommonSlideData getCommonSlideData()
           
 boolean getFollowMasterGraphics()
           
abstract  XSLFSheet getMasterSheet()
           
 XSLFTextShape getPlaceholder(int idx)
           
 XSLFTextShape[] getPlaceholders()
           
protected abstract  java.lang.String getRootElementName()
           
 XSLFShape[] getShapes()
          Returns an array containing all of the shapes in this sheet
 XMLSlideShow getSlideShow()
           
protected  org.openxmlformats.schemas.presentationml.x2006.main.CTGroupShape getSpTree()
           
protected  XSLFTextShape getTextShapeByType(Placeholder type)
           
abstract  org.apache.xmlbeans.XmlObject getXmlObject()
           
 XSLFSheet importContent(XSLFSheet src)
          Set the contents of this sheet to be a copy of the source sheet.
 java.util.Iterator<XSLFShape> iterator()
          Returns an iterator over the shapes in this sheet
 boolean removeShape(XSLFShape xShape)
          Removes the specified shape from this sheet, if it is present (optional operation).
protected  void setCommonSlideData(org.openxmlformats.schemas.presentationml.x2006.main.CTCommonSlideData data)
           
 
Methods inherited from class org.apache.poi.POIXMLDocumentPart
addRelation, createRelationship, createRelationship, createRelationship, getPackagePart, getPackageRelationship, getParent, getRelationById, getRelationId, getRelations, getTargetPart, onDocumentCreate, onDocumentRead, onDocumentRemove, onSave, read, rebase, removeRelation, removeRelation, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

XSLFSheet

public XSLFSheet()

XSLFSheet

public XSLFSheet(PackagePart part,
                 PackageRelationship rel)
Method Detail

getSlideShow

public XMLSlideShow getSlideShow()
Returns:
the XMLSlideShow this sheet belongs to

buildShapes

protected java.util.List<XSLFShape> buildShapes(org.openxmlformats.schemas.presentationml.x2006.main.CTGroupShape spTree)

getXmlObject

public abstract org.apache.xmlbeans.XmlObject getXmlObject()
Returns:
top-level Xml bean representing this sheet

getCommonSlideData

@Internal
public XSLFCommonSlideData getCommonSlideData()

setCommonSlideData

protected void setCommonSlideData(org.openxmlformats.schemas.presentationml.x2006.main.CTCommonSlideData data)

createAutoShape

public XSLFAutoShape createAutoShape()
Description copied from interface: XSLFShapeContainer
create a new shape with a predefined geometry and add it to this shape container

Specified by:
createAutoShape in interface XSLFShapeContainer

createFreeform

public XSLFFreeformShape createFreeform()
Description copied from interface: XSLFShapeContainer
create a new shape with a custom geometry

Specified by:
createFreeform in interface XSLFShapeContainer

createTextBox

public XSLFTextBox createTextBox()
Description copied from interface: XSLFShapeContainer
create a text box

Specified by:
createTextBox in interface XSLFShapeContainer

createConnector

public XSLFConnectorShape createConnector()
Description copied from interface: XSLFShapeContainer
create a connector

Specified by:
createConnector in interface XSLFShapeContainer

createGroup

public XSLFGroupShape createGroup()
Description copied from interface: XSLFShapeContainer
create a group of shapes belonging to this container

Specified by:
createGroup in interface XSLFShapeContainer

createPicture

public XSLFPictureShape createPicture(int pictureIndex)
Description copied from interface: XSLFShapeContainer
create a picture belonging to this container

Specified by:
createPicture in interface XSLFShapeContainer
Returns:

createTable

public XSLFTable createTable()

getShapes

public XSLFShape[] getShapes()
Returns an array containing all of the shapes in this sheet

Specified by:
getShapes in interface XSLFShapeContainer
Returns:
an array of all shapes in this sheet

iterator

public java.util.Iterator<XSLFShape> iterator()
Returns an iterator over the shapes in this sheet

Specified by:
iterator in interface java.lang.Iterable<XSLFShape>
Returns:
an iterator over the shapes in this sheet

removeShape

public boolean removeShape(XSLFShape xShape)
Removes the specified shape from this sheet, if it is present (optional operation). If this sheet does not contain the element, it is unchanged.

Specified by:
removeShape in interface XSLFShapeContainer
Parameters:
xShape - shape to be removed from this sheet, if present
Returns:
true if this sheet contained the specified element
Throws:
java.lang.IllegalArgumentException - if the type of the specified shape is incompatible with this sheet (optional)

clear

public void clear()
Removes all of the elements from this container (optional operation). The container will be empty after this call returns.

Specified by:
clear in interface XSLFShapeContainer

getRootElementName

protected abstract java.lang.String getRootElementName()

getSpTree

protected org.openxmlformats.schemas.presentationml.x2006.main.CTGroupShape getSpTree()

commit

protected final void commit()
                     throws java.io.IOException
Description copied from class: POIXMLDocumentPart
Save the content in the underlying package part. Default implementation is empty meaning that the package part is left unmodified. Sub-classes should override and add logic to marshal the "model" into Ooxml4J. For example, the code saving a generic XML entry may look as follows:

 protected void commit() throws IOException {
   PackagePart part = getPackagePart();
   OutputStream out = part.getOutputStream();
   XmlObject bean = getXmlBean(); //the "model" which holds changes in memory
   bean.save(out, DEFAULT_XML_OPTIONS);
   out.close();
 }
  

Overrides:
commit in class POIXMLDocumentPart
Throws:
java.io.IOException

importContent

public XSLFSheet importContent(XSLFSheet src)
Set the contents of this sheet to be a copy of the source sheet. This method erases any existing shapes and replaces them with object from the source sheet.

Parameters:
src - the source sheet to copy data from
Returns:
modified 'this'

appendContent

public XSLFSheet appendContent(XSLFSheet src)
Append content to this sheet.

Parameters:
src - the source sheet
Returns:
modified this.

getMasterSheet

public abstract XSLFSheet getMasterSheet()
Returns:
master of this sheet.

getTextShapeByType

protected XSLFTextShape getTextShapeByType(Placeholder type)

getPlaceholder

public XSLFTextShape getPlaceholder(int idx)
Parameters:
idx - 0-based index of a placeholder in the sheet
Returns:
placeholder

getPlaceholders

public XSLFTextShape[] getPlaceholders()
Returns:
all placeholder shapes in this sheet

canDraw

protected boolean canDraw(XSLFShape shape)
Checks if this sheet displays the specified shape. Subclasses can override it and skip certain shapes from drawings, for instance, slide masters and layouts don't display placeholders


getFollowMasterGraphics

public boolean getFollowMasterGraphics()
Returns:
whether shapes on the master sheet should be shown. By default master graphics is turned off. Sheets that support the notion of master (slide, slideLayout) should override it and check this setting in the sheet XML

getBackground

public XSLFBackground getBackground()
Returns:
background for this sheet

draw

public void draw(java.awt.Graphics2D graphics)
Render this sheet into the supplied graphics object

Parameters:
graphics -


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