gtkmm: Gtk::ButtonBox Class Reference

gtkmm 3.4.0

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Related Functions
Gtk::ButtonBox Class Reference

A container for arranging buttons. More...

Inheritance diagram for Gtk::ButtonBox:
[legend]

List of all members.

## Public Member Functions
virtual | ~ButtonBox ()
GtkButtonBox* | gobj ()
| Provides access to the underlying C GtkObject.
const GtkButtonBox* | gobj () const
| Provides access to the underlying C GtkObject.
| ButtonBox (Orientation orientation=ORIENTATION_HORIZONTAL)
ButtonBoxStyle | get_layout () const
| Retrieves the method being used to arrange the buttons in a button box.
void | set_layout (ButtonBoxStyle layout_style)
| Changes the way buttons are arranged in their container.
void | set_child_secondary (Widget& child, bool is_secondary=true)
| Sets whether child should appear in a secondary group of children.
bool | get_child_secondary (const Gtk::Widget& child) const
| Returns whether child should appear in a secondary group of children.
bool | get_child_non_homogeneous (const Gtk::Widget& child) const
| Returns whether the child is exempted from homogenous sizing.
void | set_child_non_homogeneous (Gtk::Widget& child, bool non_homogeneous=true)
| Sets whether the child is exempted from homogeous sizing.
Glib::PropertyProxy < ButtonBoxStyle > | property_layout_style ()
| How to lay out the buttons in the box.
Glib::PropertyProxy_ReadOnly < ButtonBoxStyle > | property_layout_style () const
| How to lay out the buttons in the box.
## Related Functions
(Note that these are not member functions.)
Gtk::ButtonBox* | wrap (GtkButtonBox* object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

A container for arranging buttons.

A button box should be used to provide a consistent layout of buttons throughout your application. The layout/spacing can be altered by the programmer, or if desired, by the user to alter the 'feel' of a program to a small degree.

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

The main purpose of ButtonBox is to make sure the children have all the same size. ButtonBox gives all children the same size, but it does allow 'outliers' to keep their own larger size. To force all children to be strictly the same size without exceptions, you can set the homogeneous property to true.

To excempt individual children from homogeneous sizing regardless of their 'outlier' status, you can set the non-homogeneous child property.

## Constructor & Destructor Documentation

virtual Gtk::ButtonBox::~ButtonBox | ( |  | ) | `[virtual]`

Gtk::ButtonBox::ButtonBox | ( | Orientation | orientation = `ORIENTATION_HORIZONTAL` | ) | `[explicit]`

## Member Function Documentation

bool Gtk::ButtonBox::get_child_non_homogeneous | ( | const Gtk::Widget& | child | ) | const

Returns whether the child is exempted from homogenous sizing.

Since gtkmm 3.2:

Parameters:

  child | A child of widget.

Returns:
  `true` if the child is not subject to homogenous sizing.

bool Gtk::ButtonBox::get_child_secondary | ( | const Gtk::Widget& | child | ) | const

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

Since gtkmm 2.4:

Parameters:

  child | A child of widget.

Returns:
  Whether child should appear in a secondary group of children.

ButtonBoxStyle Gtk::ButtonBox::get_layout | ( |  | ) | const

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

Returns:
  The method used to lay out buttons in widget.

GtkButtonBox* Gtk::ButtonBox::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Box.

Reimplemented in Gtk::HButtonBox, and Gtk::VButtonBox.

const GtkButtonBox* Gtk::ButtonBox::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Box.

Reimplemented in Gtk::HButtonBox, and Gtk::VButtonBox.

Glib::PropertyProxy< ButtonBoxStyle > Gtk::ButtonBox::property_layout_style | ( |  | ) |

How to lay out the buttons in the box.

Possible values are: spread, edge, start and end.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< ButtonBoxStyle > Gtk::ButtonBox::property_layout_style | ( |  | ) | const

How to lay out the buttons in the box.

Possible values are: spread, edge, start and end.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

void Gtk::ButtonBox::set_child_non_homogeneous | ( | Gtk::Widget& | child,
|  | bool | non_homogeneous = `true`
| ) |  |

Sets whether the child is exempted from homogeous sizing.

Since gtkmm 3.2:

Parameters:

  child | A child of widget.
  non_homogeneous | The new value.

void Gtk::ButtonBox::set_child_secondary | ( | Widget& | child,
|  | bool | is_secondary = `true`
| ) |  |

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.

Parameters:

  child | A child of widget.
  is_secondary | If `true`, the child appears in a secondary group of the button box.

void Gtk::ButtonBox::set_layout | ( | ButtonBoxStyle | layout_style | ) |

Changes the way buttons are arranged in their container.

Parameters:

  layout_style | The new layout style.

## Friends And Related Function Documentation

Gtk::ButtonBox* wrap | ( | GtkButtonBox * | object,
|  | bool | take_copy = `false`
| ) |  | `[related]`

A Glib::wrap() method for this object.

Parameters:

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns:
  A C++ instance that wraps this C instance.

The documentation for this class was generated from the following file:

- gtkmm/buttonbox.h