gtkmm 3.1.16
Public Member Functions | Related Functions

Gtk::ButtonBox Class Reference

A container for arranging buttons. More...

Inheritance diagram for Gtk::ButtonBox:
Inheritance graph
[legend]
Collaboration diagram for Gtk::ButtonBox:
Collaboration graph
[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::ButtonBoxwrap (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:
childA 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:
childA 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.
const GtkButtonBox* Gtk::ButtonBox::gobj ( ) const [inline]

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Box.

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

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

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Box.

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

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:
childA child of widget.
non_homogeneousThe 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:
childA child of widget.
is_secondaryIf 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_styleThe 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:
objectThe C instance.
take_copyFalse 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: