GTK+ Reference Manual
<<< Previous Page | Home | Up | Next Page >>>

# GtkButtonBox

## Name

GtkButtonBox -- Base class for GtkHButtonBox and GtkVButtonBox

## Synopsis

    #include <gtk/gtk.h>

    struct      GtkButtonBox;
    #define     GTK_BUTTONBOX_DEFAULT
    void        gtk_button_box_get_child_size_default
                                                (gint *min_width,
                                                 gint *min_height);
    void        gtk_button_box_get_child_ipadding_default
                                                (gint *ipad_x,
                                                 gint *ipad_y);
    void        gtk_button_box_set_child_size_default
                                                (gint min_width,
                                                 gint min_height);
    void        gtk_button_box_set_child_ipadding_default
                                                (gint ipad_x,
                                                 gint ipad_y);
    gint        gtk_button_box_get_spacing      (GtkButtonBox *widget);
    GtkButtonBoxStyle gtk_button_box_get_layout (GtkButtonBox *widget);
    void        gtk_button_box_get_child_size   (GtkButtonBox *widget,
                                                 gint *min_width,
                                                 gint *min_height);
    void        gtk_button_box_get_child_ipadding
                                                (GtkButtonBox *widget,
                                                 gint *ipad_x,
                                                 gint *ipad_y);
    void        gtk_button_box_set_spacing      (GtkButtonBox *widget,
                                                 gint spacing);
    void        gtk_button_box_set_layout       (GtkButtonBox *widget,
                                                 GtkButtonBoxStyle layout_style);
    void        gtk_button_box_set_child_size   (GtkButtonBox *widget,
                                                 gint min_width,
                                                 gint min_height);
    void        gtk_button_box_set_child_ipadding
                                                (GtkButtonBox *widget,
                                                 gint ipad_x,
                                                 gint ipad_y);
    void        gtk_button_box_child_requisition
                                                (GtkWidget *widget,
                                                 int *nvis_children,
                                                 int *width,
                                                 int *height);

## Object Hierarchy

      GtkObject
       +----GtkWidget
             +----GtkContainer
                   +----GtkBox
                         +----GtkButtonBox

## Description

The primary purpose of this class is to keep track of the various properties of GtkHButtonBox and GtkVButtonBox widgets.

gtk_button_box_get_child_size_default() retrieves the default minimum width and height for widgets in any button box. gtk_button_box_set_child_size_default() changes the default minimum child widget size.

gtk_button_box_get_child_size() retrieves the minimum width and height for widgets in a given button box. gtk_button_box_set_child_size() allows those properties to be changed.

gtk_button_box_get_child_ipadding_default() gets the default number of pixels of horizontal and vertical padding that are applied to each button in every button box. gtk_button_box_set_child_ipadding_default() allows these defaults to be changed.

The internal padding of buttons can be retrieved and changed per button box using gtk_button_box_get_child_ipadding() and gtk_button_box_set_child_ipadding() respectively.

gtk_button_box_get_spacing() and gtk_button_box_set_spacing() retrieve and change default number of pixels between buttons, respectively.

gtk_button_box_get_layout() and gtk_button_box_set_layout() retrieve and alter the method used to spread the buttons in a button box across the container, respectively.

## Details

### struct GtkButtonBox

    struct GtkButtonBox;

This is a read-only struct; no members should be modified directly.

### GTK_BUTTONBOX_DEFAULT

    #define GTK_BUTTONBOX_DEFAULT -1

Used internally only.

### gtk_button_box_get_child_size_default ()

    void        gtk_button_box_get_child_size_default
                                                (gint *min_width,
                                                 gint *min_height);

Retrieves the default minimum width and height for all button boxes, and places the values in `min_width` and `min_height`, respectively.

`min_width` : | the default minimum width of a child widget.
`min_height` : | the default minimum height of a child widget.

### gtk_button_box_get_child_ipadding_default ()

    void        gtk_button_box_get_child_ipadding_default
                                                (gint *ipad_x,
                                                 gint *ipad_y);

The internal padding of a button is the amount of space between the outside of the button and the widget it contains. This function gets the default amount of horizontal and vertical padding, placing the results in `ipad_x` and `ipad_y`, respectively.

`ipad_x` : | the default horizontal internal button padding.
`ipad_y` : | the default vertical internal button padding.

### gtk_button_box_set_child_size_default ()

    void        gtk_button_box_set_child_size_default
                                                (gint min_width,
                                                 gint min_height);

Sets the default size of child buttons.

`min_width` : | minimum default width for child buttons.
`min_height` : | minimum default height for child buttons.

### gtk_button_box_set_child_ipadding_default ()

    void        gtk_button_box_set_child_ipadding_default
                                                (gint ipad_x,
                                                 gint ipad_y);

Sets the default number of pixels that pad each button in every button box.

`ipad_x` : | new default horizontal padding.
`ipad_y` : | new default vertical padding.

### gtk_button_box_get_spacing ()

    gint        gtk_button_box_get_spacing      (GtkButtonBox *widget);

Retrieves how much space a button box is placing between each child button.

`widget` : | a GtkButtonBox.
Returns : | the current spacing applied to the buttons in `widget`.

### gtk_button_box_get_layout ()

    GtkButtonBoxStyle gtk_button_box_get_layout (GtkButtonBox *widget);

Retrieves the method being used to arrange the buttons in a button box.

`widget` : | a GtkButtonBox.
Returns : | the method used to layout buttons in `widget`.

### gtk_button_box_get_child_size ()

    void        gtk_button_box_get_child_size   (GtkButtonBox *widget,
                                                 gint *min_width,
                                                 gint *min_height);

Retrieves the current width and height of all child widgets in a button box. `min_width` and `min_height` are filled with those values, respectively.

`widget` : | a GtkButtonBox.
`min_width` : | the width of the buttons contained by `widget`.
`min_height` : | the height of the buttons contained by `widget`.

### gtk_button_box_get_child_ipadding ()

    void        gtk_button_box_get_child_ipadding
                                                (GtkButtonBox *widget,
                                                 gint *ipad_x,
                                                 gint *ipad_y);

Gets the default number of pixels that pad the buttons in a given button box.

`widget` : | a GtkButtonBox.
`ipad_x` : | the horizontal padding used by buttons in `widget`.
`ipad_y` : | the vertical padding used by buttons in `widget`.

### gtk_button_box_set_spacing ()

    void        gtk_button_box_set_spacing      (GtkButtonBox *widget,
                                                 gint spacing);

Sets the amount of spacing between buttons in a given button box.

`widget` : | a GtkButtonBox.
`spacing` : | the number of pixels of spacing.

### gtk_button_box_set_layout ()

    void        gtk_button_box_set_layout       (GtkButtonBox *widget,
                                                 GtkButtonBoxStyle layout_style);

Changes the way buttons are arranged in their container.

`widget` : | a GtkButtonBox.
`layout_style` : | the new layout style.

### gtk_button_box_set_child_size ()

    void        gtk_button_box_set_child_size   (GtkButtonBox *widget,
                                                 gint min_width,
                                                 gint min_height);

Sets a new default size for the children of a given button box.

`widget` : | a GtkButtonBox.
`min_width` : | a default width for buttons in `widget`.
`min_height` : | a default height for buttons in `widget`.

### gtk_button_box_set_child_ipadding ()

    void        gtk_button_box_set_child_ipadding
                                                (GtkButtonBox *widget,
                                                 gint ipad_x,
                                                 gint ipad_y);

Changes the amount of internal padding used by all buttons in a given button box.

`widget` : | a GtkButtonBox.
`ipad_x` : | the horizontal padding that should be used by each button in `widget`.
`ipad_y` : | the vertical padding that should be used by each button in `widget`.

### gtk_button_box_child_requisition ()

    void        gtk_button_box_child_requisition
                                                (GtkWidget *widget,
                                                 int *nvis_children,
                                                 int *width,
                                                 int *height);

This is an internally used function and should never be called from an application.

`widget` : |
`nvis_children` : |
`width` : |
`height` : |

## See Also

GtkVButtonBox

  Vertical sub-class of GtkButtonBox.

GtkHButtonBox

  Horizontal sub-class of GtkButtonBox.

<<< Previous Page | Home | Up | Next Page >>>
GtkAspectFrame | GtkBin