# Gtk::Paned Class Reference
Widgets | Container Widgets

This is the base class for widgets with two panes, arranged either horizontally (Gtk::HPaned) or vertically (Gtk::VPaned). More...

Inheritance diagram for Gtk::Paned:
[legend]
Collaboration diagram for Gtk::Paned:
[legend]

List of all members.

## Public Member Functions

virtual | ~Paned ()
GtkPaned* | gobj ()
| Provides access to the underlying C GtkObject.
const GtkPaned* | gobj () const
| Provides access to the underlying C GtkObject.
| Paned ()
void | add1 (Widget& child)
void | add2 (Widget& child)
void | pack1 (Widget& child, bool resize, bool shrink)
void | pack1 (Widget& child, AttachOptions options=Gtk::EXPAND)
void | pack2 (Widget& child, bool resize, bool shrink)
void | pack2 (Widget& child, AttachOptions options=Gtk::EXPAND)
int | get_position () const
| Obtains the position of the divider between the two panes.
void | set_position (int position)
| Sets the position of the divider between the two panes.
Widget* | get_child1 ()
| Obtains the first child of the paned widget.
const Widget* | get_child1 () const
| Obtains the first child of the paned widget.
Widget* | get_child2 ()
| Obtains the second child of the paned widget.
const Widget* | get_child2 () const
| Obtains the second child of the paned widget.
Glib::RefPtr< Gdk::Window > | get_handle_window ()
| Returns the Gdk::Window of the handle.
Glib::RefPtr< const Gdk::Window > | get_handle_window () const
| Returns the Gdk::Window of the handle.
Glib::PropertyProxy< int > | property_position ()
| Position of paned separator in pixels (0 means all the way to the left/top).
Glib::PropertyProxy_ReadOnly< int > | property_position () const
| Position of paned separator in pixels (0 means all the way to the left/top).
Glib::PropertyProxy< bool > | property_position_set ()
| TRUE if the Position property should be used.
Glib::PropertyProxy_ReadOnly < bool > | property_position_set () const
| TRUE if the Position property should be used.
Glib::PropertyProxy_ReadOnly< int > | property_min_position () const
| Smallest possible value for the 'position' property.
Glib::PropertyProxy_ReadOnly< int > | property_max_position () const
| Largest possible value for the 'position' property.

## Related Functions

(Note that these are not member functions.)
Gtk::Paned* | wrap (GtkPaned* object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

This is the base class for widgets with two panes, arranged either horizontally (Gtk::HPaned) or vertically (Gtk::VPaned).

Child widgets are added to the panes of the widget with pack1() and pack2(). The division beween the two children is set by default from the size requests of the children, but it can be adjusted by the user.

A paned widget draws a separator between the two child widgets and a small handle that the user can drag to adjust the division. It does not draw any relief around the children or around the separator. Often, it is useful to put each child inside a Gtk::Frame with the shadow type set to Gtk::SHADOW_IN so that the gutter appears as a ridge.

Each child has two options that can be set - resize and shrink. If resize is true, then when the GtkPaned is resized, that child will expand or shrink along with the paned widget. If shrink is true, then when that child can be made smaller than it's requisition. Setting shrink to false allows the application to set a minimum size. If resize is false for both children, then this is treated as if resize is true for both children.

The application can set the position of the slider as if it were set by the user, by calling set_position().

## Constructor & Destructor Documentation

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

Gtk::Paned::Paned | ( |  | ) |

## Member Function Documentation

void Gtk::Paned::add1 | ( | Widget& | child | ) |

void Gtk::Paned::add2 | ( | Widget& | child | ) |

Widget* Gtk::Paned::get_child1 | ( |  | ) |

Obtains the first child of the paned widget.

Since gtkmm 2.4:

Returns:
  First child, or `0` if it is not set.

const Widget* Gtk::Paned::get_child1 | ( |  | ) | const

Obtains the first child of the paned widget.

Since gtkmm 2.4:

Returns:
  First child, or `0` if it is not set.

Widget* Gtk::Paned::get_child2 | ( |  | ) |

Obtains the second child of the paned widget.

Since gtkmm 2.4:

Returns:
  Second child, or `0` if it is not set.

const Widget* Gtk::Paned::get_child2 | ( |  | ) | const

Obtains the second child of the paned widget.

Since gtkmm 2.4:

Returns:
  Second child, or `0` if it is not set.

Glib::RefPtr<const Gdk::Window> Gtk::Paned::get_handle_window | ( |  | ) | const

Returns the Gdk::Window of the handle.

This function is useful when handling button or motion events because it enables the callback to distinguish between the window of the paned, a child and the handle.

Since gtkmm 2.20:

Returns:
  The paned's handle window.

Glib::RefPtr<Gdk::Window> Gtk::Paned::get_handle_window | ( |  | ) |

Returns the Gdk::Window of the handle.

This function is useful when handling button or motion events because it enables the callback to distinguish between the window of the paned, a child and the handle.

Since gtkmm 2.20:

Returns:
  The paned's handle window.

int Gtk::Paned::get_position | ( |  | ) | const

Obtains the position of the divider between the two panes.

Returns:
  Position of the divider.

const GtkPaned* Gtk::Paned::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Container.

Reimplemented in Gtk::HPaned, and Gtk::VPaned.

GtkPaned* Gtk::Paned::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Container.

Reimplemented in Gtk::HPaned, and Gtk::VPaned.

void Gtk::Paned::pack1 | ( | Widget& | child,
|  | bool | resize,
|  | bool | shrink
| ) |  |

void Gtk::Paned::pack1 | ( | Widget& | child,
|  | AttachOptions | options = `Gtk::EXPAND`
| ) |  |

void Gtk::Paned::pack2 | ( | Widget& | child,
|  | AttachOptions | options = `Gtk::EXPAND`
| ) |  |

void Gtk::Paned::pack2 | ( | Widget& | child,
|  | bool | resize,
|  | bool | shrink
| ) |  |

Glib::PropertyProxy_ReadOnly<int> Gtk::Paned::property_max_position | ( |  | ) | const

Largest possible value for the 'position' property.

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<int> Gtk::Paned::property_min_position | ( |  | ) | const

Smallest possible value for the 'position' property.

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<int> Gtk::Paned::property_position | ( |  | ) |

Position of paned separator in pixels (0 means all the way to the left/top).

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<int> Gtk::Paned::property_position | ( |  | ) | const

Position of paned separator in pixels (0 means all the way to the left/top).

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<bool> Gtk::Paned::property_position_set | ( |  | ) | const

TRUE if the Position property should be used.

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<bool> Gtk::Paned::property_position_set | ( |  | ) |

TRUE if the Position property should be used.

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::Paned::set_position | ( | int | position | ) |

Sets the position of the divider between the two panes.

Parameters:

  position | Pixel position of divider, a negative value means that the position is unset.

## Friends And Related Function Documentation

Gtk::Paned* wrap | ( | GtkPaned * | 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/paned.h