This is the base class of HBox and VBox. It has the code
necessary to maintain the contained list of widgets, but it does not
position them.
Box uses a notion of
packing. Packing refers to adding widgets
with reference to a particular position in a Container. For a Box, there
are two reference positions: the start and the end of the box. For a
VBox, the start is defined as the top of the box and the end is defined as
the bottom. For a HBox the start is defined as the left side and the end is
defined as the right side.
Use repeated calls to
packStart
to pack widgets into a
Box from start to end. Use
packEnd
to add widgets from end
to start. You may intersperse these calls and add widgets from both ends
of the same Box.
getHomogeneous
public boolean getHomogeneous()
Returns whether the box is homogeneous (all children are the same size).
- TRUE if the box is homogeneous.
setHomogeneous(boolean)
getSpacing
public int getSpacing()
Gets the spacing between the children of the box.
- Spacing between children
getType
public static Type getType()
Retrieve the runtime type used by the GLib library.
- getType in interface Container
gtk_box_get_homogeneous
protected static final boolean gtk_box_get_homogeneous(Handle box)
gtk_box_get_spacing
protected static final int gtk_box_get_spacing(Handle box)
gtk_box_get_type
protected static final int gtk_box_get_type()
gtk_box_pack_end
protected static final void gtk_box_pack_end(Handle box,
Handle child,
boolean expand,
boolean fill,
int padding)
gtk_box_pack_end_defaults
protected static final void gtk_box_pack_end_defaults(Handle box,
Handle child)
gtk_box_pack_start
protected static final void gtk_box_pack_start(Handle box,
Handle child,
boolean expand,
boolean fill,
int padding)
gtk_box_pack_start_defaults
protected static final void gtk_box_pack_start_defaults(Handle box,
Handle child)
gtk_box_query_child_packing
protected static final void gtk_box_query_child_packing(Handle box,
Handle child,
boolean[] expand,
boolean[] fill,
int[] padding,
int[] packType)
gtk_box_reorder_child
protected static final void gtk_box_reorder_child(Handle box,
Handle child,
int position)
gtk_box_set_child_packing
protected static final void gtk_box_set_child_packing(Handle box,
Handle child,
boolean expand,
boolean fill,
int padding,
int packType)
gtk_box_set_homogeneous
protected static final void gtk_box_set_homogeneous(Handle box,
boolean homogenous)
gtk_box_set_spacing
protected static final void gtk_box_set_spacing(Handle box,
int spacing)
packEnd
public void packEnd(Widget child)
Adds child to the box, packed with reference to the end of box.
The child is packed before any other child packed with reference to the
end of box. This method takes the default values for expansion, fill
and padding.
child
- The widget to be added to the box.
packEnd
public void packEnd(Widget child,
boolean expand,
boolean fill,
int padding)
Adds child to the box, packed with reference to the end of box.
The child is packed after any other child packed with reference to the
end of box. This method allows you to define the properties of the
packing.
child
- The widget to be added.expand
- TRUE if the new child is to be given extra space
allocated to box. The extra space will be divided evenly between all
children of box that use this option.fill
- TRUE if space given to child by the expand option is
actually allocated to child, rather than just padding it. This parameter
has no effect if expand is set to FALSE. A child is always allocated the
full height of a HBox and the full width of a VBox. This option affects
the other dimension.padding
- Extra space in pixels to put between this child and its
neighbors, over and above the global amount specified by spacing in Box.
If child is a widget at one of the reference ends of box, then padding
pixels are also put between child and the reference edge of Box.
packStart
public void packStart(Widget child)
Adds child to the box, packed with reference to the start of box.
The child is packed after any other child packed with reference to the
start of box. This method takes the default values for expansion, fill
and padding.
child
- The widget to be added to the box.
packStart
public void packStart(Widget child,
boolean expand,
boolean fill,
int padding)
Adds child to the box, packed with reference to the start of box.
The child is packed after any other child packed with reference to the
start of box. This method allows you to define the properties of the
packing.
child
- The widget to be added.expand
- TRUE if the new child is to be given extra space
allocated to box. The extra space will be divided evenly between all
children of box that use this option.fill
- TRUE if space given to child by the expand option is
actually allocated to child, rather than just padding it. This parameter
has no effect if expand is set to FALSE. A child is always allocated the
full height of a HBox and the full width of a VBox. This option affects
the other dimension.padding
- Extra space in pixels to put between this child and its
neighbors, over and above the global amount specified by spacing in Box.
If child is a widget at one of the reference ends of box, then padding
pixels are also put between child and the reference edge of Box.
reorderChild
public void reorderChild(Widget child,
int position)
Moves child to a new position in the list of box children.
A widget's position in the box children list determines where the
widget is packed into box. A child widget at some position in the list
will be packed just after all other widgets of the same packing type
that appear earlier in the list.
child
- The widget to moveposition
- The new position for child in the box, starting from 0.
If negative, the end of the list is used.
setHomogeneous
public void setHomogeneous(boolean homogenous)
Sets the homogeneous field of Box, controlling whether or not
all children of box are given equal space in the box.
homogenous
- A boolean value, TRUE to create equal allotments,
FALSE for variable allotments.
setSpacing
public void setSpacing(int spacing)
Sets the number of pixels to place between children of the box.
spacing
- The number of pixels to put between children.