gi-gtk-3.0.24: Gtk bindings

CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
MaintainerIñaki García Etxebarria (
Safe HaskellNone




A GtkStackSidebar enables you to quickly and easily provide a consistent "sidebar" object for your user interface.

In order to use a GtkStackSidebar, you simply use a GtkStack to organize your UI flow, and add the sidebar to your sidebar area. You can use stackSidebarSetStack to connect the StackSidebar to the Stack.

CSS nodes

GtkStackSidebar has a single CSS node with name stacksidebar and style class .sidebar.

When circumstances require it, GtkStackSidebar adds the .needs-attention style class to the widgets representing the stack pages.


Exported types

class GObject o => IsStackSidebar o Source #

Type class for types which can be safely cast to StackSidebar, for instance with toStackSidebar.

toStackSidebar :: (MonadIO m, IsStackSidebar o) => o -> m StackSidebar Source #

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



stackSidebarGetStack Source #


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

sidebar: a StackSidebar

-> m (Maybe Stack)

Returns: the associated Stack or Nothing if none has been set explicitly

Retrieves the stack. See stackSidebarSetStack.

Since: 3.16


stackSidebarNew Source #


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

Returns: the new StackSidebar

Creates a new sidebar.

Since: 3.16


stackSidebarSetStack Source #


:: (HasCallStack, MonadIO m, IsStackSidebar a, IsStack b) 
=> a

sidebar: a StackSidebar

-> b

stack: a Stack

-> m () 

Set the Stack associated with this StackSidebar.

The sidebar widget will automatically update according to the order (packing) and items within the given Stack.

Since: 3.16



No description available in the introspection data.

constructStackSidebarStack :: (IsStackSidebar o, IsStack a) => a -> IO (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “stack” property. This is rarely needed directly, but it is used by new.

getStackSidebarStack :: (MonadIO m, IsStackSidebar o) => o -> m (Maybe Stack) Source #

Get the value of the “stack” property. When overloading is enabled, this is equivalent to

get stackSidebar #stack

setStackSidebarStack :: (MonadIO m, IsStackSidebar o, IsStack a) => o -> a -> m () Source #

Set the value of the “stack” property. When overloading is enabled, this is equivalent to

set stackSidebar [ #stack := value ]