OffscreenWindowProtocol
public protocol OffscreenWindowProtocol : WindowProtocol
GtkOffscreenWindow is strictly intended to be used for obtaining
snapshots of widgets that are not part of a normal widget hierarchy.
Since GtkOffscreenWindow 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 cairo_surface_t or GdkPixbuf.
GtkOffscreenWindow derives from GtkWindow 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 GtkBin that
has no parent widget.
When contained offscreen widgets are redrawn, GtkOffscreenWindow
will emit a GtkWidget::damage-event signal.
The OffscreenWindowProtocol protocol exposes the methods and properties of an underlying GtkOffscreenWindow instance.
The default implementation of these can be found in the protocol extension below.
For a concrete class that implements these methods and properties, see OffscreenWindow.
Alternatively, use OffscreenWindowRef as a lighweight, unowned reference if you already have an instance you just want to use.
-
Untyped pointer to the underlying
GtkOffscreenWindowinstance.Declaration
Swift
var ptr: UnsafeMutableRawPointer! { get } -
offscreen_window_ptrDefault implementationTyped pointer to the underlying
GtkOffscreenWindowinstance.Default Implementation
Return the stored, untyped pointer as a typed pointer to the
GtkOffscreenWindowinstance.Declaration
Swift
var offscreen_window_ptr: UnsafeMutablePointer<GtkOffscreenWindow>! { get } -
Required Initialiser for types conforming to
OffscreenWindowProtocolDeclaration
Swift
init(raw: UnsafeMutableRawPointer)
-
bind(property:Extension methodto: _: flags: transformFrom: transformTo: ) Bind a
OffscreenWindowPropertyNamesource property to a given target object.Declaration
Swift
@discardableResult @inlinable func bind<Q, T>(property source_property: OffscreenWindowPropertyName, to target: T, _ target_property: Q, flags f: BindingFlags = .default, transformFrom transform_from: @escaping GLibObject.ValueTransformer = { $0.transform(destValue: $1) }, transformTo transform_to: @escaping GLibObject.ValueTransformer = { $0.transform(destValue: $1) }) -> BindingRef! where Q : PropertyNameProtocol, T : ObjectProtocolParameters
source_propertythe source property to bind
targetthe target object to bind to
target_propertythe target property to bind to
flagsthe flags to pass to the
Bindingtransform_fromValueTransformerto use for forward transformationtransform_toValueTransformerto use for backwards transformationReturn Value
binding reference or
nilin case of an error -
get(property:Extension method) Get the value of a OffscreenWindow property
Declaration
Swift
@inlinable func get(property: OffscreenWindowPropertyName) -> GLibObject.ValueParameters
propertythe property to get the value for
Return Value
the value of the named property
-
set(property:Extension methodvalue: ) Set the value of a OffscreenWindow property. Note that this will only have an effect on properties that are writable and not construct-only!
Declaration
Swift
@inlinable func set(property: OffscreenWindowPropertyName, value v: GLibObject.Value)Parameters
propertythe property to get the value for
Return Value
the value of the named property
-
getPixbuf()Extension methodRetrieves a snapshot of the contained widget in the form of a
GdkPixbuf. This is a new pixbuf with a reference count of 1, and the application should unreference it once it is no longer needed.Declaration
Swift
@inlinable func getPixbuf() -> PixbufRef! -
getSurface()Extension methodRetrieves 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.Declaration
Swift
@inlinable func getSurface() -> Cairo.SurfaceRef! -
pixbufExtension methodRetrieves a snapshot of the contained widget in the form of a
GdkPixbuf. This is a new pixbuf with a reference count of 1, and the application should unreference it once it is no longer needed.Declaration
Swift
@inlinable var pixbuf: PixbufRef! { get } -
surfaceExtension methodRetrieves 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.Declaration
Swift
@inlinable var surface: Cairo.SurfaceRef! { get } -
parentObjectExtension methodUndocumented
Declaration
Swift
@inlinable var parentObject: GtkWindow { get }
View on GitHub
Install in Dash
OffscreenWindowProtocol Protocol Reference