### Class

# Gtk CenterBox

#### Description [src]

    final class Gtk.CenterBox : Gtk.Widget {
      /* No available fields */
    }

`GtkCenterBox` arranges three children in a row, keeping the middle child centered as well as possible.

To add children to `GtkCenterBox`, use gtk_center_box_set_start_widget(), gtk_center_box_set_center_widget() and gtk_center_box_set_end_widget().

The sizing and positioning of children can be influenced with the align and expand properties of the children.

# GtkCenterBox as GtkBuildable

The `GtkCenterBox` implementation of the `GtkBuildable` interface supports placing children in the 3 positions by specifying “start”, “center” or “end” as the “type” attribute of a element.

# CSS nodes

`GtkCenterBox` uses a single CSS node with the name “box”,

The first child of the `GtkCenterBox` will be allocated depending on the text direction, i.e. in left-to-right layouts it will be allocated on the left and in right-to-left layouts on the right.

In vertical orientation, the nodes of the children are arranged from top to bottom.

# Accessibility

`GtkCenterBox` uses the `GTK_ACCESSIBLE_ROLE_GROUP` role.

#### Hierarchy

#### Ancestors

- GtkWidget
- GInitiallyUnowned
- GObject

#### Implements

- GtkAccessible
- GtkBuildable
- GtkConstraintTarget
- GtkOrientable

#### Constructors

###### gtk_center_box_new

Creates a new `GtkCenterBox`.

#### Instance methods

###### gtk_center_box_get_baseline_position

Gets the value set by gtk_center_box_set_baseline_position().

###### gtk_center_box_get_center_widget

Gets the center widget, or `NULL` if there is none.

###### gtk_center_box_get_end_widget

Gets the end widget, or `NULL` if there is none.

###### gtk_center_box_get_start_widget

Gets the start widget, or `NULL` if there is none.

###### gtk_center_box_set_baseline_position

Sets the baseline position of a center box.

###### gtk_center_box_set_center_widget

Sets the center widget.

###### gtk_center_box_set_end_widget

Sets the end widget.

###### gtk_center_box_set_start_widget

Sets the start widget.

##### Methods inherited from GtkWidget (159)

##### Methods inherited from GtkAccessible (10)

###### gtk_accessible_get_accessible_role

Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.

###### gtk_accessible_reset_property

Resets the accessible `property` to its default value.

###### gtk_accessible_reset_relation

Resets the accessible `relation` to its default value.

###### gtk_accessible_reset_state

Resets the accessible `state` to its default value.

###### gtk_accessible_update_property

Updates a list of accessible properties.

###### gtk_accessible_update_property_value

Updates an array of accessible properties.

###### gtk_accessible_update_relation

Updates a list of accessible relations.

###### gtk_accessible_update_relation_value

Updates an array of accessible relations.

###### gtk_accessible_update_state

Updates a list of accessible states. See the `GtkAccessibleState` documentation for the value types of accessible states.

###### gtk_accessible_update_state_value

Updates an array of accessible states.

##### Methods inherited from GtkBuildable (1)

###### gtk_buildable_get_buildable_id

Gets the ID of the `buildable` object.

##### Methods inherited from GtkOrientable (2)

###### gtk_orientable_get_orientation

Retrieves the orientation of the `orientable`.

###### gtk_orientable_set_orientation

Sets the orientation of the `orientable`.

#### Properties

###### Gtk.CenterBox:baseline-position

The position of the baseline aligned widget if extra space is available.

##### Properties inherited from GtkWidget (34)

###### Gtk.Widget:can-focus

Whether the widget or any of its descendents can accept the input focus.

###### Gtk.Widget:can-target

Whether the widget can receive pointer events.

###### Gtk.Widget:css-classes

A list of css classes applied to this widget.

###### Gtk.Widget:css-name

The name of this widget in the CSS tree.

###### Gtk.Widget:cursor

The cursor used by `widget`.

###### Gtk.Widget:focus-on-click

Whether the widget should grab focus when it is clicked with the mouse.

###### Gtk.Widget:focusable

Whether this widget itself will accept the input focus.

###### Gtk.Widget:halign

How to distribute horizontal space if widget gets extra space.

###### Gtk.Widget:has-default

Whether the widget is the default widget.

###### Gtk.Widget:has-focus

Whether the widget has the input focus.

###### Gtk.Widget:has-tooltip

Enables or disables the emission of the ::query-tooltip signal on `widget`.

###### Gtk.Widget:height-request

Override for height request of the widget.

###### Gtk.Widget:hexpand

Whether to expand horizontally.

###### Gtk.Widget:hexpand-set

Whether to use the `hexpand` property.

###### Gtk.Widget:layout-manager

The `GtkLayoutManager` instance to use to compute the preferred size of the widget, and allocate its children.

###### Gtk.Widget:margin-bottom

Margin on bottom side of widget.

###### Gtk.Widget:margin-end

Margin on end of widget, horizontally.

###### Gtk.Widget:margin-start

Margin on start of widget, horizontally.

###### Gtk.Widget:margin-top

Margin on top side of widget.

###### Gtk.Widget:name

The name of the widget.

###### Gtk.Widget:opacity

The requested opacity of the widget.

###### Gtk.Widget:overflow

How content outside the widget’s content area is treated.

###### Gtk.Widget:parent

The parent widget of this widget.

###### Gtk.Widget:receives-default

Whether the widget will receive the default action when it is focused.

###### Gtk.Widget:root

The `GtkRoot` widget of the widget tree containing this widget.

###### Gtk.Widget:scale-factor

The scale factor of the widget.

###### Gtk.Widget:sensitive

Whether the widget responds to input.

###### Gtk.Widget:tooltip-markup

Sets the text of tooltip to be the given string, which is marked up with Pango markup.

###### Gtk.Widget:tooltip-text

Sets the text of tooltip to be the given string.

###### Gtk.Widget:valign

How to distribute vertical space if widget gets extra space.

###### Gtk.Widget:vexpand

Whether to expand vertically.

###### Gtk.Widget:vexpand-set

Whether to use the `vexpand` property.

###### Gtk.Widget:visible

Whether the widget is visible.

###### Gtk.Widget:width-request

Override for width request of the widget.

##### Properties inherited from GtkAccessible (1)

###### Gtk.Accessible:accessible-role

The accessible role of the given `GtkAccessible` implementation.

##### Properties inherited from GtkOrientable (1)

###### Gtk.Orientable:orientation

The orientation of the orientable.

#### Class structure

    struct GtkCenterBoxClass {
      /* no available fields */
    }