GtkButtonBox

GtkButtonBox — Base class for GtkHButtonBox and GtkVButtonBox

Synopsis

#include <gtk/gtk.h>

struct              GtkButtonBox;
#define             GTK_BUTTONBOX_DEFAULT
#define             gtk_button_box_get_spacing          (b)
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);
gboolean            gtk_button_box_get_child_secondary  (GtkButtonBox *widget,
                                                         GtkWidget *child);
#define             gtk_button_box_set_spacing          (b,
                                                         s)
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_set_child_secondary  (GtkButtonBox *widget,
                                                         GtkWidget *child,
                                                         gboolean is_secondary);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----GtkBox
                                 +----GtkButtonBox
                                       +----GtkHButtonBox
                                       +----GtkVButtonBox

Implemented Interfaces

GtkButtonBox implements AtkImplementorIface, GtkBuildable and GtkOrientable.

Properties

  "layout-style"             GtkButtonBoxStyle     : Read / Write

Child Properties

  "secondary"                gboolean              : Read / Write

Style Properties

  "child-internal-pad-x"     gint                  : Read
  "child-internal-pad-y"     gint                  : Read
  "child-min-height"         gint                  : Read
  "child-min-width"          gint                  : Read

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() retrieves the minimum width and height for widgets in a given button box.

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.

The main purpose of GtkButtonBox is to make sure the children have all the same size. Therefore it ignores the homogeneous property which it inherited from GtkBox, and always behaves as if homogeneous was TRUE.

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_spacing()

#define gtk_button_box_get_spacing(b)   gtk_box_get_spacing (GTK_BOX (b))

Warning

gtk_button_box_get_spacing is deprecated and should not be used in newly-written code. Use gtk_box_get_spacing() instead.

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

b :

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);

Warning

gtk_button_box_get_child_size is deprecated and should not be used in newly-written code. Use the style properties "child-min-width/-height" instead.

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);

Warning

gtk_button_box_get_child_ipadding is deprecated and should not be used in newly-written code. Use the style properties "child-internal-pad-x" and "child-internal-pad-y" instead.

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_get_child_secondary ()

gboolean            gtk_button_box_get_child_secondary  (GtkButtonBox *widget,
                                                         GtkWidget *child);

Returns whether child should appear in a secondary group of children.

widget :

a GtkButtonBox

child :

a child of widget

Returns :

whether child should appear in a secondary group of children.

Since 2.4


gtk_button_box_set_spacing()

#define gtk_button_box_set_spacing(b,s) gtk_box_set_spacing (GTK_BOX (b), s)

Warning

gtk_button_box_set_spacing is deprecated and should not be used in newly-written code. Use gtk_box_set_spacing() instead.

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

b :

a GtkButtonBox

s :

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);

Warning

gtk_button_box_set_child_size is deprecated and should not be used in newly-written code. This is not supported anymore and can only be set through the theme changing the style properties: "child-min-width" and "child-min-height" instead.

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);

Warning

gtk_button_box_set_child_ipadding is deprecated and should not be used in newly-written code. Use the style properties "child-internal-pad-x/-y" instead.

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_set_child_secondary ()

void                gtk_button_box_set_child_secondary  (GtkButtonBox *widget,
                                                         GtkWidget *child,
                                                         gboolean is_secondary);

Sets whether child should appear in a secondary group of children. A typical use of a secondary child is the help button in a dialog.

This group appears after the other children if the style is GTK_BUTTONBOX_START, GTK_BUTTONBOX_SPREAD or GTK_BUTTONBOX_EDGE, and before the other children if the style is GTK_BUTTONBOX_END. For horizontal button boxes, the definition of before/after depends on direction of the widget (see gtk_widget_set_direction()). If the style is GTK_BUTTONBOX_START or GTK_BUTTONBOX_END, then the secondary children are aligned at the other end of the button box from the main children. For the other styles, they appear immediately next to the main children.

widget :

a GtkButtonBox

child :

a child of widget

is_secondary :

if TRUE, the child appears in a secondary group of the button box.

Property Details

The "layout-style" property

  "layout-style"             GtkButtonBoxStyle     : Read / Write

How to lay out the buttons in the box. Possible values are: default, spread, edge, start and end.

Default value: GTK_BUTTONBOX_DEFAULT_STYLE

Child Property Details

The "secondary" child property

  "secondary"                gboolean              : Read / Write

If TRUE, the child appears in a secondary group of children, suitable for, e.g., help buttons.

Default value: FALSE

Style Property Details

The "child-internal-pad-x" style property

  "child-internal-pad-x"     gint                  : Read

Amount to increase child's size on either side.

Allowed values: >= 0

Default value: 4


The "child-internal-pad-y" style property

  "child-internal-pad-y"     gint                  : Read

Amount to increase child's size on the top and bottom.

Allowed values: >= 0

Default value: 0


The "child-min-height" style property

  "child-min-height"         gint                  : Read

Minimum height of buttons inside the box.

Allowed values: >= 0

Default value: 27


The "child-min-width" style property

  "child-min-width"          gint                  : Read

Minimum width of buttons inside the box.

Allowed values: >= 0

Default value: 85

See Also

GtkVButtonBox

Vertical sub-class of GtkButtonBox.

GtkHButtonBox

Horizontal sub-class of GtkButtonBox.