Clutter.BinLayout
Description: Reference for Clutter.BinLayout

### Class

# ClutterBinLayout

since: 13

#### Description [src]

    class Clutter.BinLayout : Clutter.LayoutManager
    {
      /* No available fields */
    }

A simple layout manager

`ClutterBinLayout` is a layout manager which implements the following policy:

- the preferred size is the maximum preferred size between all the children of the container using the layout;
- each child is allocated in “layers”, on on top of the other;
- for each layer there are horizontal and vertical alignment policies.

The bin-layout example shows how to pack actors inside a `ClutterBinLayout`.

Available since: 13

#### Ancestors

- ClutterLayoutManager
- GInitiallyUnowned
- GObject

#### Constructors

###### clutter_bin_layout_new

Creates a new `ClutterBinLayout` layout manager.

since: 13

#### Instance methods

##### Methods inherited from ClutterLayoutManager (12)

###### clutter_layout_manager_allocate

Allocates the children of `container` given an area.

since: 13

###### clutter_layout_manager_child_get

Retrieves the values for a list of properties out of the `ClutterLayoutMeta` created by `manager` and attached to the child of a `container`.

since: 13

###### clutter_layout_manager_child_get_property

Gets a property on the `ClutterLayoutMeta` created by `manager` and attached to a child of `container`.

since: 13

###### clutter_layout_manager_child_set

Sets a list of properties and their values on the `ClutterLayoutMeta` associated by `manager` to a child of `container`.

since: 13

###### clutter_layout_manager_child_set_property

Sets a property on the `ClutterLayoutMeta` created by `manager` and attached to a child of `container`.

since: 13

###### clutter_layout_manager_find_child_property

Retrieves the `GParamSpec` for the layout property `name` inside the `ClutterLayoutMeta` sub-class used by `manager`.

since: 13

###### clutter_layout_manager_get_child_meta

Retrieves the `ClutterLayoutMeta` that the layout `manager` associated to the `actor` child of `container`, eventually by creating one if the `ClutterLayoutManager` supports layout properties.

since: 13

###### clutter_layout_manager_get_preferred_height

Computes the minimum and natural heights of the `container` according to `manager`.

since: 13

###### clutter_layout_manager_get_preferred_width

Computes the minimum and natural widths of the `container` according to `manager`.

since: 13

###### clutter_layout_manager_layout_changed

Emits the `ClutterLayoutManager::layout-changed` signal on `manager`.

since: 13

###### clutter_layout_manager_list_child_properties

Retrieves all the `GParamSpec`s for the layout properties stored inside the `ClutterLayoutMeta` sub-class used by `manager`.

since: 13

###### clutter_layout_manager_set_container

If the `ClutterLayoutManager` sub-class allows it, allow adding a weak reference of the `container` using `manager` from within the layout manager.

since: 13

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### Clutter.BinLayout:x-align

The default horizontal alignment policy for actors managed by the `ClutterBinLayout`.

deprecated: 1.12 since: 13

###### Clutter.BinLayout:y-align

The default vertical alignment policy for actors managed by the `ClutterBinLayout`.

deprecated: 1.12 since: 13

#### Signals

##### Signals inherited from ClutterLayoutManager (1)

###### ClutterLayoutManager::layout-changed

The signal is emitted each time a layout manager has been changed. Every `ClutterActor` using the `manager` instance as a layout manager should connect a handler to the `ClutterLayoutManager::layout-changed` signal and queue a relayout on themselves:

since: 13

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

since: 2.0

#### Class structure

    struct ClutterBinLayoutClass {
      /* no available fields */
    }

The `ClutterBinLayoutClass` structure contains only private data and should be accessed using the provided API.