## ClutterGroup

ClutterGroup — A fixed layout container

## Synopsis

    struct              ClutterGroup;
    struct              ClutterGroupClass;
    ClutterActor *      clutter_group_new                   (void);
    void                clutter_group_remove_all            (ClutterGroup *group);
    gint                clutter_group_get_n_children        (ClutterGroup *self);
    ClutterActor *      clutter_group_get_nth_child         (ClutterGroup *self,
                                                             gint index_);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----ClutterActor
                   +----ClutterGroup
                         +----ClutterStage

## Implemented Interfaces

ClutterGroup implements ClutterScriptable, ClutterAnimatable, AtkImplementorIface and ClutterContainer.

## Description

A ClutterGroup is an Actor which contains multiple child actors positioned relative to the ClutterGroup position. Other operations such as scaling, rotating and clipping of the group will apply to the child actors.

A ClutterGroup's size is defined by the size and position of its children; it will be the smallest non-negative size that covers the right and bottom edges of all of its children.

Setting the size on a Group using ClutterActor methods like `clutter_actor_set_size()` will override the natural size of the Group, however this will not affect the size of the children and they may still be painted outside of the allocation of the group. One way to constrain the visible area of a ClutterGroup to a specified allocation is to explicitly set the size of the ClutterGroup and then use the "clip-to-allocation" property.

## Details

### struct ClutterGroup

    struct ClutterGroup;

The ClutterGroup structure contains only private data and should be accessed using the provided API

Since 0.1

### struct ClutterGroupClass

    struct ClutterGroupClass {
    };

The ClutterGroupClass structure contains only private data

Since 0.1

### clutter_group_new ()

    ClutterActor *      clutter_group_new                   (void);

Create a new ClutterGroup.

Returns : | the newly created ClutterGroup actor

### clutter_group_remove_all ()

    void                clutter_group_remove_all            (ClutterGroup *group);

Removes all children actors from the ClutterGroup.

`group` : | A ClutterGroup

### clutter_group_get_n_children ()

    gint                clutter_group_get_n_children        (ClutterGroup *self);

Gets the number of actors held in the group.

`self` : | A ClutterGroup
Returns : | The number of child actors held in the group.

Since 0.2

### clutter_group_get_nth_child ()

    ClutterActor *      clutter_group_get_nth_child         (ClutterGroup *self,
                                                             gint index_);

Gets a groups child held at `index_` in stack.

`self` : | A ClutterGroup
`index_` : | the position of the requested actor.
Returns : | A Clutter actor, or `NULL` if `index_` is invalid. [transfer none]

Since 0.2