org.apache.poi.xssf.usermodel

## Class XSSFShapeGroup

- java.lang.Object
- - org.apache.poi.xssf.usermodel.XSSFShape
  - - org.apache.poi.xssf.usermodel.XSSFShapeGroup

- All Implemented Interfaces:
    java.lang.Iterable<XSSFShape>, Shape, ShapeContainer<XSSFShape>

      public final class XSSFShapeGroup
      extends XSSFShape
      implements ShapeContainer<XSSFShape>

  This object specifies a group shape that represents many shapes grouped together. This shape is to be treated just as if it were a regular shape but instead of being described by a single geometry it is made up of all the shape geometries encompassed within it. Within a group shape each of the shapes that make up the group are specified just as they normally would.

- - ### Field Summary

    - ### Fields inherited from class org.apache.poi.xssf.usermodel.XSSFShape

      `anchor, drawing, parent`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `XSSFShapeGroup(XSSFDrawing drawing, org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTGroupShape ctGroup)` Construct a new XSSFSimpleShape object.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `XSSFConnector` | `createConnector(XSSFChildAnchor anchor)` Creates a simple shape.
    `XSSFShapeGroup` | `createGroup(XSSFChildAnchor anchor)` Creates a group shape.
    `XSSFPicture` | `createPicture(XSSFClientAnchor anchor, int pictureIndex)` Creates a picture.
    `XSSFSimpleShape` | `createSimpleShape(XSSFChildAnchor anchor)` Creates a simple shape.
    `XSSFTextBox` | `createTextbox(XSSFChildAnchor anchor)` Constructs a textbox.
    `org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTGroupShape` | `getCTGroupShape()`
    `java.lang.String` | `getShapeName()`
    `protected org.openxmlformats.schemas.drawingml.x2006.main.CTShapeProperties` | `getShapeProperties()` Returns xml bean with shape properties.
    `java.util.Iterator<XSSFShape>` | `iterator()`
    `protected static org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTGroupShape` | `prototype()` Initialize default structure of a new shape group
    `void` | `setCoordinates(int x1, int y1, int x2, int y2)` Sets the coordinate space of this group.

    - ### Methods inherited from class org.apache.poi.xssf.usermodel.XSSFShape

      `getAnchor, getDrawing, getParent, isNoFill, setFillColor, setLineStyle, setLineStyleColor, setLineWidth, setNoFill`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, spliterator`

- - ### Constructor Detail

    - #### XSSFShapeGroup

          protected XSSFShapeGroup(XSSFDrawing drawing,
                                   org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTGroupShape ctGroup)

      Construct a new XSSFSimpleShape object.
      Parameters:
        `drawing` - the XSSFDrawing that owns this shape
        `ctGroup` - the XML bean that stores this group content

  - ### Method Detail

    - #### prototype

          protected static org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTGroupShape prototype()

      Initialize default structure of a new shape group

    - #### createTextbox

          public XSSFTextBox createTextbox(XSSFChildAnchor anchor)

      Constructs a textbox.
      Parameters:
        `anchor` - the child anchor describes how this shape is attached to the group.
      Returns:
        the newly created textbox.

    - #### createSimpleShape

          public XSSFSimpleShape createSimpleShape(XSSFChildAnchor anchor)

      Creates a simple shape. This includes such shapes as lines, rectangles, and ovals.
      Parameters:
        `anchor` - the child anchor describes how this shape is attached to the group.
      Returns:
        the newly created shape.

    - #### createConnector

          public XSSFConnector createConnector(XSSFChildAnchor anchor)

      Creates a simple shape. This includes such shapes as lines, rectangles, and ovals.
      Parameters:
        `anchor` - the child anchor describes how this shape is attached to the group.
      Returns:
        the newly created shape.

    - #### createPicture

          public XSSFPicture createPicture(XSSFClientAnchor anchor,
                                           int pictureIndex)

      Creates a picture.
      Parameters:
        `anchor` - the client anchor describes how this picture is attached to the sheet.
        `pictureIndex` - the index of the picture in the workbook collection of pictures, `XSSFWorkbook.getAllPictures()` .
      Returns:
        the newly created picture shape.

    - #### createGroup

          public XSSFShapeGroup createGroup(XSSFChildAnchor anchor)

      Creates a group shape.
      Parameters:
        `anchor` - the client anchor describes how this group is attached to the group.
      Returns:
        the newly created group shape.

    - #### getCTGroupShape

          @Internal
          public org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTGroupShape getCTGroupShape()

    - #### setCoordinates

          public void setCoordinates(int x1,
                                     int y1,
                                     int x2,
                                     int y2)

      Sets the coordinate space of this group. All children are constrained to these coordinates.

    - #### getShapeProperties

          protected org.openxmlformats.schemas.drawingml.x2006.main.CTShapeProperties getShapeProperties()

      Description copied from class: `XSSFShape`
      Returns xml bean with shape properties.
      Specified by:
        `getShapeProperties` in class `XSSFShape`
      Returns:
        xml bean with shape properties.

    - #### iterator

          public java.util.Iterator<XSSFShape> iterator()

      Specified by:
        `iterator` in interface `java.lang.Iterable<XSSFShape>`

    - #### getShapeName

          public java.lang.String getShapeName()

      Specified by:
        `getShapeName` in interface `Shape`
      Returns:
        the name of this shape

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