GtkBox: GtkBox

Description Methods and Functions Hierarchy Interfaces Detailed Description Structures Properties Author(s) References


Base class for box containers

Methods and Functions

gtkBoxPackStart(object, child, expand = TRUE, fill = TRUE, padding = 0)
gtkBoxPackEnd(object, child, expand = TRUE, fill = TRUE, padding = 0)
gtkBoxPackStartDefaults(object, widget)
gtkBoxPackEndDefaults(object, widget)
gtkBoxSetHomogeneous(object, homogeneous)
gtkBoxSetSpacing(object, spacing)
gtkBoxReorderChild(object, child, position)
gtkBoxQueryChildPacking(object, child)
gtkBoxSetChildPacking(object, child, expand, fill, padding, pack.type)




GtkBox implements AtkImplementorIface, GtkBuildable and GtkOrientable.

Detailed Description

GtkBox is an abstract widget which encapsulates functionality for a particular kind of container, one that organizes a variable number of widgets into a rectangular area. GtkBox has a number of derived classes, e.g. GtkHBox and GtkVBox.

The rectangular area of a GtkBox is organized into either a single row or a single column of child widgets depending upon whether the box is of type GtkHBox or GtkVBox, respectively. Thus, all children of a GtkBox are allocated one dimension in common, which is the height of a row, or the width of a column.

GtkBox uses a notion of packing. Packing refers to adding widgets with reference to a particular position in a GtkContainer. For a GtkBox, there are two reference positions: the start and the end of the box. For a GtkVBox, the start is defined as the top of the box and the end is defined as the bottom. For a GtkHBox the start is defined as the left side and the end is defined as the right side.

Use repeated calls to gtkBoxPackStart to pack widgets into a GtkBox from start to end. Use gtkBoxPackEnd to add widgets from end to start. You may intersperse these calls and add widgets from both ends of the same GtkBox.

Use gtkBoxPackStartDefaults or gtkBoxPackEndDefaults to pack widgets into a GtkBox if you do not need to specify the "expand", "fill", or "padding" child properties for the child to be added.

Because GtkBox is a GtkContainer, you may also use gtkContainerAdd to insert widgets into the box, and they will be packed as if with gtkBoxPackStartDefaults. Use gtkContainerRemove to remove widgets from the GtkBox.

Use gtkBoxSetHomogeneous to specify whether or not all children of the GtkBox are forced to get the same amount of space.

Use gtkBoxSetSpacing to determine how much space will be minimally placed between all children in the GtkBox.

Use gtkBoxReorderChild to move a GtkBox child to a different place in the box.

Use gtkBoxSetChildPacking to reset the "expand", "fill" and "padding" child properties. Use gtkBoxQueryChildPacking to query these fields.



The GtkBox describes an instance of GtkBox and contains the following fields. (These fields should be considered read-only. They should never be set by an application.)






The GtkBoxChild holds a child widget of GtkBox and describes how the child is to be packed into the GtkBox. Use gtkBoxQueryChildPacking and gtkBoxSetChildPacking to query and reset the padding, expand, fill, and pack fields. GtkBoxChild contains the following fields. (These fields should be considered read-only. They should never be directly set by an application.)


[GtkWidget] the child widget, packed into the GtkBox.


[integer] the number of extra pixels to put between this child and its neighbors, set when packed, zero by default.


[numeric] flag indicates whether extra space should be given to this child. Any extra space given to the parent GtkBox is divided up among all children with this attribute set to TRUE; set when packed, TRUE by default.


[numeric] flag indicates whether any extra space given to this child due to its expand attribute being set is actually allocated to the child, rather than being used as padding around the widget; set when packed, TRUE by default.


[numeric] one of GtkPackType indicating whether the child is packed with reference to the start (top/left) or end (bottom/right) of the GtkBox.


[numeric] TRUE if the child is secondary


homogeneous [logical : Read / Write]

Whether the children should all be the same size. Default value: FALSE

spacing [integer : Read / Write]

The amount of space between children. Allowed values: >= 0 Default value: 0


Derived by RGtkGen from GTK+ documentation


RGtk2 documentation built on May 30, 2017, 5:53 a.m.

Related to GtkBox in RGtk2...