gi-gtk-3.0.36: Gtk bindings
CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellNone
LanguageHaskell2010

GI.Gtk.Objects.OffscreenWindow

Description

GtkOffscreenWindow is strictly intended to be used for obtaining snapshots of widgets that are not part of a normal widget hierarchy. Since OffscreenWindow is a toplevel 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 a GtkOffscreenWindow and then retrieve the snapshot as a Surface or Pixbuf.

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

When contained offscreen widgets are redrawn, GtkOffscreenWindow will emit a damageEvent signal.

Synopsis

Exported types

class (GObject o, IsDescendantOf OffscreenWindow o) => IsOffscreenWindow o Source #

Type class for types which can be safely cast to OffscreenWindow, for instance with toOffscreenWindow.

Instances

Instances details
(GObject o, IsDescendantOf OffscreenWindow o) => IsOffscreenWindow o Source # 
Instance details

Defined in GI.Gtk.Objects.OffscreenWindow

toOffscreenWindow :: (MonadIO m, IsOffscreenWindow o) => o -> m OffscreenWindow Source #

Cast to OffscreenWindow, for types for which this is known to be safe. For general casts, use castTo.

Methods

Overloaded methods

getPixbuf

offscreenWindowGetPixbuf Source #

Arguments

:: (HasCallStack, MonadIO m, IsOffscreenWindow a) 
=> a

offscreen: the OffscreenWindow contained widget.

-> m (Maybe Pixbuf)

Returns: A Pixbuf pointer, or Nothing.

Retrieves a snapshot of the contained widget in the form of a 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: 2.20

getSurface

offscreenWindowGetSurface Source #

Arguments

:: (HasCallStack, MonadIO m, IsOffscreenWindow a) 
=> a

offscreen: the OffscreenWindow contained widget.

-> m (Maybe Surface)

Returns: A Surface pointer to the offscreen surface, or Nothing.

Retrieves a snapshot of the contained widget in the form of a Surface. If you need to keep this around over window resizes then you should add a reference to it.

Since: 2.20

new

offscreenWindowNew Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> m OffscreenWindow

Returns: A pointer to a Widget

Creates a toplevel container widget that is used to retrieve snapshots of widgets without showing them on the screen.

Since: 2.20