# Gtk::Layout Class Reference
[Widgets, Container Widgets]

Infinite scrollable area containing child widgets and/or custom drawing. More...

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

List of all members.

## Public Member Functions

virtual | ~Layout ()
GtkLayout* | gobj ()
| Provides access to the underlying C GtkObject.
const GtkLayout* | gobj () const
| Provides access to the underlying C GtkObject.
| Layout ()
| Layout (const Glib::RefPtr< Adjustment >& hadjustment, const Glib::RefPtr< Adjustment >& vadjustment)
Glib::RefPtr< Gdk::Window > | get_bin_window ()
| Retrieve the bin window of the layout used for drawing operations.
Glib::RefPtr< const Gdk::Window > | get_bin_window () const
| Retrieve the bin window of the layout used for drawing operations.
void | put (Widget& child_widget, int x, int y)
| Adds child_widget to layout, at position ( x, y).
void | move (Widget& child_widget, int x, int y)
| Moves a current child of layout to a new position.
void | set_size (guint width, guint height)
| Sets the size of the scrollable area of the layout.
void | get_size (guint& width, guint& height) const
| Gets the size that has been set on the layout, and that determines the total extents of the layout's scrollbar area.
Glib::PropertyProxy< guint > | property_width ()
| The width of the layout.
Glib::PropertyProxy_ReadOnly < guint > | property_width () const
| The width of the layout.
Glib::PropertyProxy< guint > | property_height ()
| The height of the layout.
Glib::PropertyProxy_ReadOnly < guint > | property_height () const
| The height of the layout.

## Related Functions

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

## Detailed Description

Infinite scrollable area containing child widgets and/or custom drawing.

Gtk::Layout is similar to Gtk::DrawingArea in that it's a "blank slate" and doesn't do anything but paint a blank background by default. It's different in that it supports scrolling natively (You can add it directly to a Gtk::ScrolledWindow), and it can contain child widgets, since it's a Gtk::Container. However if you're just going to draw, a Gtk::DrawingArea is a better choice since it has lower overhead.

## Constructor & Destructor Documentation

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

Gtk::Layout::Layout | ( | ) |

Gtk::Layout::Layout | ( | const Glib::RefPtr< Adjustment >& | hadjustment,
|  | const Glib::RefPtr< Adjustment >& | vadjustment
| ) |  | `[explicit]`

## Member Function Documentation

Glib::RefPtr<Gdk::Window> Gtk::Layout::get_bin_window | ( | ) |

Retrieve the bin window of the layout used for drawing operations.

Since gtkmm 2.14:

Returns:
  A Gdk::Window.

Glib::RefPtr<const Gdk::Window> Gtk::Layout::get_bin_window | ( | ) | const

Retrieve the bin window of the layout used for drawing operations.

Since gtkmm 2.14:

Returns:
  A Gdk::Window.

void Gtk::Layout::get_size | ( | guint & | width,
|  | guint & | height
| ) |  | const

Gets the size that has been set on the layout, and that determines the total extents of the layout's scrollbar area.

See set_size().

Parameters:

  width | Location to store the width set on layout, or `0`.
  height | Location to store the height set on layout, or `0`.

const GtkLayout* Gtk::Layout::gobj | ( | ) | const`[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Container.

GtkLayout* Gtk::Layout::gobj | ( | ) | `[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Container.

void Gtk::Layout::move | ( | Widget& | child_widget,
|  | int | x,
|  | int | y
| ) |  |

Moves a current child of layout to a new position.

Parameters:

  child_widget | A current child of layout.
  x | X position to move to.
  y | Y position to move to.

Glib::PropertyProxy_ReadOnly<guint> Gtk::Layout::property_height | ( | ) | const

The height of the layout.

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<guint> Gtk::Layout::property_height | ( | ) |

The height of the layout.

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<guint> Gtk::Layout::property_width | ( | ) | const

The width of the layout.

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<guint> Gtk::Layout::property_width | ( | ) |

The width of the layout.

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::Layout::put | ( | Widget& | child_widget,
|  | int | x,
|  | int | y
| ) |  |

Adds child_widget to layout, at position ( x, y).

layout becomes the new parent container of child_widget.

Parameters:

  child_widget | Child widget.
  x | X position of child widget.
  y | Y position of child widget.

void Gtk::Layout::set_size | ( | guint | width,
|  | guint | height
| ) |  |

Sets the size of the scrollable area of the layout.

Parameters:

  width | Width of entire scrollable area.
  height | Height of entire scrollable area.

## Friends And Related Function Documentation

Gtk::Layout* wrap | ( | GtkLayout * | 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/layout.h