gtkmm: Gtk::OffscreenWindow 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::OffscreenWindow Class Reference
Container Widgets | Widgets

A top-level container widget used to manage offscreen rendering of child widgets. More...

Inheritance diagram for Gtk::OffscreenWindow:
[legend]

List of all members.

## Public Member Functions
virtual | ~OffscreenWindow ()
GtkOffscreenWindow* | gobj ()
| Provides access to the underlying C GtkObject.
const GtkOffscreenWindow* | gobj () const
| Provides access to the underlying C GtkObject.
| OffscreenWindow ()
Cairo::RefPtr< Cairo::Surface > | get_surface ()
| Retrieves a snapshot of the contained widget in the form of a #cairo_surface_t.
Cairo::RefPtr< const Cairo::Surface > | get_surface () const
| Retrieves a snapshot of the contained widget in the form of a #cairo_surface_t.
Glib::RefPtr< Gdk::Pixbuf > | get_pixbuf ()
| Retrieves a snapshot of the contained widget in the form of a Gdk::Pixbuf.
Glib::RefPtr< const Gdk::Pixbuf > | get_pixbuf () const
| Retrieves a snapshot of the contained widget in the form of a Gdk::Pixbuf.
## Related Functions
(Note that these are not member functions.)
Gtk::OffscreenWindow* | wrap (GtkOffscreenWindow* object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

A top-level container widget used to manage offscreen rendering of child widgets.

OffscreenWindow is strictly intended to be used for obtaining snapshots of widgets that are not part of a normal widget hierarchy. It differs from Gtk::Widget::get_snapshot() in that the widget you want to get a snapshot of need not be displayed on the user's screen as a part of a widget hierarchy. However, since OffscreenWindow is a top-level widget you cannot obtain snapshots of a full window with it since you cannot pack a toplevel widget in another toplevel.

The idea is to take a widget and manually set the state of it, add it to an OffscreenWindow and then retrieve the snapshot as a Gdk::Pixbuf.

OffscreenWindow derives from Window only as an implementation detail. Applications should not use any API specific to #GtkWindow to operate on this object. It should be treated as a Bin that has no parent widget.

When contained offscreen widgets are redrawn, OffscreenWindow will emit a "damage-event" signal.

Since gtkmm 2.20:

## Constructor & Destructor Documentation

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

Gtk::OffscreenWindow::OffscreenWindow | ( |  | ) |

## Member Function Documentation

Glib::RefPtr<Gdk::Pixbuf> Gtk::OffscreenWindow::get_pixbuf | ( |  | ) |

Retrieves a snapshot of the contained widget in the form of a Gdk::Pixbuf.

This is a new pixbuf with a reference count of 1, and the application should unreference it once it is no longer needed.

Since gtkmm 2.20:

Returns:
  A Gdk::Pixbuf pointer, or `0`.

Glib::RefPtr<const Gdk::Pixbuf> Gtk::OffscreenWindow::get_pixbuf | ( |  | ) | const

Retrieves a snapshot of the contained widget in the form of a Gdk::Pixbuf.

This is a new pixbuf with a reference count of 1, and the application should unreference it once it is no longer needed.

Since gtkmm 2.20:

Returns:
  A Gdk::Pixbuf pointer, or `0`.

Cairo::RefPtr<Cairo::Surface> Gtk::OffscreenWindow::get_surface | ( |  | ) |

Retrieves a snapshot of the contained widget in the form of a #cairo_surface_t.

If you need to keep this around over window resizes then you should add a reference to it.

Since gtkmm 2.20:

Returns:
  A #cairo_surface_t pointer to the offscreen surface, or `0`.

Cairo::RefPtr<const Cairo::Surface> Gtk::OffscreenWindow::get_surface | ( |  | ) | const

Retrieves a snapshot of the contained widget in the form of a #cairo_surface_t.

If you need to keep this around over window resizes then you should add a reference to it.

Since gtkmm 2.20:

Returns:
  A #cairo_surface_t pointer to the offscreen surface, or `0`.

GtkOffscreenWindow* Gtk::OffscreenWindow::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Window.

const GtkOffscreenWindow* Gtk::OffscreenWindow::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Window.

## Friends And Related Function Documentation

Gtk::OffscreenWindow* wrap | ( | GtkOffscreenWindow * | 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/offscreenwindow.h