## ClutterGroup

ClutterGroup — A fixed layout container

## Functions

ClutterActor * | clutter_group_new ()
void | clutter_group_remove_all ()
gint | clutter_group_get_n_children ()
ClutterActor * | clutter_group_get_nth_child ()

## Types and Values

struct | ClutterGroup
struct | ClutterGroupClass

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── ClutterActor
                ╰── ClutterGroup
                    ╰── ClutterStage

## Implemented Interfaces

ClutterGroup implements ClutterContainer, ClutterScriptable, ClutterAnimatable and AtkImplementorIface.

## 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.

ClutterGroup as a concrete class has been superceded by ClutterActor since Clutter 1.10. The type itself is not deprecated as it is used by ClutterStage. You should instantiate ClutterActor and use its API to manage child actors.

## Functions

### clutter_group_new ()

    ClutterActor *
    clutter_group_new (void);

`clutter_group_new` has been deprecated since version 1.10 and should not be used in newly-written code.

Use `clutter_actor_new()` instead.

Create a new ClutterGroup.

#### Returns

the newly created ClutterGroup actor

### clutter_group_remove_all ()

    void
    clutter_group_remove_all (ClutterGroup *self);

`clutter_group_remove_all` has been deprecated since version 1.10 and should not be used in newly-written code.

Use `clutter_actor_remove_all_children()` instead.

Removes all children actors from the ClutterGroup.

#### Parameters

self | A ClutterGroup |

### clutter_group_get_n_children ()

    gint
    clutter_group_get_n_children (ClutterGroup *self);

`clutter_group_get_n_children` has been deprecated since version 1.10 and should not be used in newly-written code.

Use `clutter_actor_get_n_children()` instead.

Gets the number of actors held in the group.

#### Parameters

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_);

`clutter_group_get_nth_child` has been deprecated since version 1.10 and should not be used in newly-written code.

Use `clutter_actor_get_child_at_index()` instead.

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

#### Parameters

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

## Types and Values

### struct ClutterGroup

    struct ClutterGroup;

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

Since: 0.2

### struct ClutterGroupClass

    struct ClutterGroupClass {
    };

The ClutterGroupClass structure contains only private data

Since: 0.2