Overlay

GtkOverlay is a container which contains a single main child, on top of which it can place “overlay” widgets. The position of each overlay widget is determined by its #GtkWidget:halign and #GtkWidget:valign properties. E.g. a widget with both alignments set to gtk.types.Align.Start will be placed at the top left corner of the GtkOverlay container, whereas an overlay with halign set to gtk.types.Align.Center and valign set to gtk.types.Align.End will be placed a the bottom edge of the GtkOverlay, horizontally centered. The position can be adjusted by setting the margin properties of the child to non-zero values.

More complicated placement of overlays is possible by connecting to the #GtkOverlay::get-child-position signal.

An overlay’s minimum and natural sizes are those of its main child. The sizes of overlay children are not considered when measuring these preferred sizes.

GtkOverlay as GtkBuildable

The GtkOverlay implementation of the GtkBuildable interface supports placing a child as an overlay by specifying “overlay” as the “type” attribute of a <child> element.

CSS nodes

GtkOverlay has a single CSS node with the name “overlay”. Overlay children whose alignments cause them to be positioned at an edge get the style classes “.left”, “.right”, “.top”, and/or “.bottom” according to their position.

Constructors

this
this(void* ptr, Flag!"Take" take)
this
this()

Creates a new #GtkOverlay.

Members

Functions

addOverlay
void addOverlay(gtk.widget.Widget widget)

Adds widget to overlay.

connectGetChildPosition
gulong connectGetChildPosition(T callback, Flag!"After" after)

Connect to GetChildPosition signal.

getOverlayPassThrough
bool getOverlayPassThrough(gtk.widget.Widget widget)

Convenience function to get the value of the #GtkOverlay:pass-through child property for widget.

reorderOverlay
void reorderOverlay(gtk.widget.Widget child, int index)

Moves child to a new index in the list of overlay children. The list contains overlays in the order that these were added to overlay by default. See also #GtkOverlay:index.

self
Overlay self()

Returns this, for use in with statements.

setOverlayPassThrough
void setOverlayPassThrough(gtk.widget.Widget widget, bool passThrough)

Convenience function to set the value of the #GtkOverlay:pass-through child property for widget.

Properties

_gType
GType _gType [@property getter]

Static functions

_getGType
GType _getGType()
builder
OverlayGidBuilder builder()

Get builder for gtk.overlay.Overlay

Inherited Members

From Bin

_getGType
GType _getGType()
_gType
GType _gType [@property getter]
self
Bin self()

Returns this, for use in with statements.

builder
BinGidBuilder builder()

Get builder for gtk.bin.Bin

getChild
gtk.widget.Widget getChild()

Gets the child of the #GtkBin, or null if the bin contains no child widget. The returned widget does not have a reference added, so you do not need to unref it.