Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (inaki@blueleaf.cc) |
Safe Haskell | None |
Language | Haskell2010 |
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 Widget
:halign
and Widget
:valign
properties. E.g. a widget with both alignments set to AlignStart
will be placed at the top left corner of the GtkOverlay container,
whereas an overlay with halign set to AlignCenter
and valign set
to AlignEnd
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 Overlay
::get-child-position
signal.
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.
Synopsis
- newtype Overlay = Overlay (ManagedPtr Overlay)
- class (GObject o, IsDescendantOf Overlay o) => IsOverlay o
- toOverlay :: (MonadIO m, IsOverlay o) => o -> m Overlay
- noOverlay :: Maybe Overlay
- overlayAddOverlay :: (HasCallStack, MonadIO m, IsOverlay a, IsWidget b) => a -> b -> m ()
- overlayGetOverlayPassThrough :: (HasCallStack, MonadIO m, IsOverlay a, IsWidget b) => a -> b -> m Bool
- overlayNew :: (HasCallStack, MonadIO m) => m Overlay
- overlayReorderOverlay :: (HasCallStack, MonadIO m, IsOverlay a, IsWidget b) => a -> b -> Int32 -> m ()
- overlaySetOverlayPassThrough :: (HasCallStack, MonadIO m, IsOverlay a, IsWidget b) => a -> b -> Bool -> m ()
Exported types
Memory-managed wrapper type.
Instances
GObject Overlay Source # | |
Defined in GI.Gtk.Objects.Overlay gobjectType :: IO GType # | |
HasParentTypes Overlay Source # | |
Defined in GI.Gtk.Objects.Overlay | |
type ParentTypes Overlay Source # | |
Defined in GI.Gtk.Objects.Overlay type ParentTypes Overlay = Bin ': (Container ': (Widget ': (Object ': (ImplementorIface ': (Buildable ': ([] :: [Type])))))) |
class (GObject o, IsDescendantOf Overlay o) => IsOverlay o Source #
Instances
(GObject o, IsDescendantOf Overlay o) => IsOverlay o Source # | |
Defined in GI.Gtk.Objects.Overlay |
Methods
addOverlay
:: (HasCallStack, MonadIO m, IsOverlay a, IsWidget b) | |
=> a |
|
-> b |
|
-> m () |
Adds widget
to overlay
.
The widget will be stacked on top of the main widget
added with containerAdd
.
The position at which widget
is placed is determined
from its Widget
:halign
and Widget
:valign
properties.
Since: 3.2
getOverlayPassThrough
overlayGetOverlayPassThrough Source #
:: (HasCallStack, MonadIO m, IsOverlay a, IsWidget b) | |
=> a |
|
-> b |
|
-> m Bool | Returns: whether the widget is a pass through child. |
Convenience function to get the value of the Overlay
:pass-through
child property for widget
.
Since: 3.18
new
:: (HasCallStack, MonadIO m) | |
=> m Overlay | Returns: a new |
Creates a new Overlay
.
Since: 3.2
reorderOverlay
overlayReorderOverlay Source #
:: (HasCallStack, MonadIO m, IsOverlay a, IsWidget b) | |
=> a |
|
-> b |
|
-> Int32 |
|
-> m () |
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
.
A widget’s index in the overlay
children list determines which order
the children are drawn if they overlap. The first child is drawn at
the bottom. It also affects the default focus chain order.
Since: 3.18
setOverlayPassThrough
overlaySetOverlayPassThrough Source #
:: (HasCallStack, MonadIO m, IsOverlay a, IsWidget b) | |
=> a |
|
-> b |
|
-> Bool |
|
-> m () |
Convenience function to set the value of the Overlay
:pass-through
child property for widget
.
Since: 3.18