| Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte | 
|---|---|
| License | LGPL-2.1 | 
| Maintainer | Iñaki García Etxebarria | 
| Safe Haskell | Safe-Inferred | 
| Language | Haskell2010 | 
GI.Gtk.Objects.Stack
Contents
- Exported types
- Methods- addChild
- addNamed
- addTitled
- getChildByName
- getHhomogeneous
- getInterpolateSize
- getPage
- getPages
- getTransitionDuration
- getTransitionRunning
- getTransitionType
- getVhomogeneous
- getVisibleChild
- getVisibleChildName
- new
- remove
- setHhomogeneous
- setInterpolateSize
- setTransitionDuration
- setTransitionType
- setVhomogeneous
- setVisibleChild
- setVisibleChildFull
- setVisibleChildName
 
- Properties
Description
The GtkStack widget is a container which only shows
 one of its children at a time. In contrast to GtkNotebook,
 GtkStack does not provide a means for users to change the
 visible child. Instead, the StackSwitcher widget can be
 used with GtkStack to provide this functionality.
Transitions between pages can be animated as slides or
 fades. This can be controlled with stackSetTransitionType.
 These animations respect the Settings:gtk-enable-animations
 setting.
GtkStack maintains a StackPage object for each added
 child, which holds additional per-child properties. You
 obtain the StackPage for a child with stackGetPage.
GtkStack as GtkBuildable
To set child-specific properties in a .ui file, create GtkStackPage objects explicitly, and set the child widget as a property on it: > > class="GtkStack" id="stack" > child > class="GtkStackPage" > name="name"page1/property > name="title"In the beginning…/property > name="child" > class="GtkLabel" > name="label"It was dark/property > /object > /property > /object > /child
CSS nodes
GtkStack has a single CSS node named stack.
Accessibility
GtkStack uses the GTK_ACCESSIBLE_ROLE_TAB_PANEL for the stack
 pages, which are the accessible parent objects of the child widgets.
Synopsis
- newtype Stack = Stack (ManagedPtr Stack)
- class (GObject o, IsDescendantOf Stack o) => IsStack o
- toStack :: (MonadIO m, IsStack o) => o -> m Stack
- stackAddChild :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) => a -> b -> m StackPage
- stackAddNamed :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) => a -> b -> Maybe Text -> m StackPage
- stackAddTitled :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) => a -> b -> Maybe Text -> Text -> m StackPage
- stackGetChildByName :: (HasCallStack, MonadIO m, IsStack a) => a -> Text -> m (Maybe Widget)
- stackGetHhomogeneous :: (HasCallStack, MonadIO m, IsStack a) => a -> m Bool
- stackGetInterpolateSize :: (HasCallStack, MonadIO m, IsStack a) => a -> m Bool
- stackGetPage :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) => a -> b -> m StackPage
- stackGetPages :: (HasCallStack, MonadIO m, IsStack a) => a -> m SelectionModel
- stackGetTransitionDuration :: (HasCallStack, MonadIO m, IsStack a) => a -> m Word32
- stackGetTransitionRunning :: (HasCallStack, MonadIO m, IsStack a) => a -> m Bool
- stackGetTransitionType :: (HasCallStack, MonadIO m, IsStack a) => a -> m StackTransitionType
- stackGetVhomogeneous :: (HasCallStack, MonadIO m, IsStack a) => a -> m Bool
- stackGetVisibleChild :: (HasCallStack, MonadIO m, IsStack a) => a -> m (Maybe Widget)
- stackGetVisibleChildName :: (HasCallStack, MonadIO m, IsStack a) => a -> m (Maybe Text)
- stackNew :: (HasCallStack, MonadIO m) => m Stack
- stackRemove :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) => a -> b -> m ()
- stackSetHhomogeneous :: (HasCallStack, MonadIO m, IsStack a) => a -> Bool -> m ()
- stackSetInterpolateSize :: (HasCallStack, MonadIO m, IsStack a) => a -> Bool -> m ()
- stackSetTransitionDuration :: (HasCallStack, MonadIO m, IsStack a) => a -> Word32 -> m ()
- stackSetTransitionType :: (HasCallStack, MonadIO m, IsStack a) => a -> StackTransitionType -> m ()
- stackSetVhomogeneous :: (HasCallStack, MonadIO m, IsStack a) => a -> Bool -> m ()
- stackSetVisibleChild :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) => a -> b -> m ()
- stackSetVisibleChildFull :: (HasCallStack, MonadIO m, IsStack a) => a -> Text -> StackTransitionType -> m ()
- stackSetVisibleChildName :: (HasCallStack, MonadIO m, IsStack a) => a -> Text -> m ()
- constructStackHhomogeneous :: (IsStack o, MonadIO m) => Bool -> m (GValueConstruct o)
- getStackHhomogeneous :: (MonadIO m, IsStack o) => o -> m Bool
- setStackHhomogeneous :: (MonadIO m, IsStack o) => o -> Bool -> m ()
- constructStackInterpolateSize :: (IsStack o, MonadIO m) => Bool -> m (GValueConstruct o)
- getStackInterpolateSize :: (MonadIO m, IsStack o) => o -> m Bool
- setStackInterpolateSize :: (MonadIO m, IsStack o) => o -> Bool -> m ()
- getStackPages :: (MonadIO m, IsStack o) => o -> m (Maybe SelectionModel)
- constructStackTransitionDuration :: (IsStack o, MonadIO m) => Word32 -> m (GValueConstruct o)
- getStackTransitionDuration :: (MonadIO m, IsStack o) => o -> m Word32
- setStackTransitionDuration :: (MonadIO m, IsStack o) => o -> Word32 -> m ()
- getStackTransitionRunning :: (MonadIO m, IsStack o) => o -> m Bool
- constructStackTransitionType :: (IsStack o, MonadIO m) => StackTransitionType -> m (GValueConstruct o)
- getStackTransitionType :: (MonadIO m, IsStack o) => o -> m StackTransitionType
- setStackTransitionType :: (MonadIO m, IsStack o) => o -> StackTransitionType -> m ()
- constructStackVhomogeneous :: (IsStack o, MonadIO m) => Bool -> m (GValueConstruct o)
- getStackVhomogeneous :: (MonadIO m, IsStack o) => o -> m Bool
- setStackVhomogeneous :: (MonadIO m, IsStack o) => o -> Bool -> m ()
- constructStackVisibleChild :: (IsStack o, MonadIO m, IsWidget a) => a -> m (GValueConstruct o)
- getStackVisibleChild :: (MonadIO m, IsStack o) => o -> m (Maybe Widget)
- setStackVisibleChild :: (MonadIO m, IsStack o, IsWidget a) => o -> a -> m ()
- constructStackVisibleChildName :: (IsStack o, MonadIO m) => Text -> m (GValueConstruct o)
- getStackVisibleChildName :: (MonadIO m, IsStack o) => o -> m (Maybe Text)
- setStackVisibleChildName :: (MonadIO m, IsStack o) => o -> Text -> m ()
Exported types
Memory-managed wrapper type.
Instances
| Eq Stack Source # | |
| GObject Stack Source # | |
| Defined in GI.Gtk.Objects.Stack | |
| ManagedPtrNewtype Stack Source # | |
| Defined in GI.Gtk.Objects.Stack Methods toManagedPtr :: Stack -> ManagedPtr Stack | |
| TypedObject Stack Source # | |
| Defined in GI.Gtk.Objects.Stack | |
| HasParentTypes Stack Source # | |
| Defined in GI.Gtk.Objects.Stack | |
| IsGValue (Maybe Stack) Source # | Convert  | 
| Defined in GI.Gtk.Objects.Stack Methods gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe Stack -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe Stack) | |
| type ParentTypes Stack Source # | |
| Defined in GI.Gtk.Objects.Stack | |
class (GObject o, IsDescendantOf Stack o) => IsStack o Source #
Instances
| (GObject o, IsDescendantOf Stack o) => IsStack o Source # | |
| Defined in GI.Gtk.Objects.Stack | |
Methods
Click to display all available methods, including inherited ones
Methods
actionSetEnabled, activate, activateAction, activateDefault, addChild, addController, addCssClass, addMnemonicLabel, addNamed, addTickCallback, addTitled, allocate, bindProperty, bindPropertyFull, childFocus, computeBounds, computeExpand, computePoint, computeTransform, contains, createPangoContext, createPangoLayout, dragCheckThreshold, errorBell, forceFloating, freezeNotify, getv, grabFocus, hasCssClass, hasDefault, hasFocus, hasVisibleFocus, hide, inDestruction, initTemplate, insertActionGroup, insertAfter, insertBefore, isAncestor, isDrawable, isFloating, isFocus, isSensitive, isVisible, keynavFailed, listMnemonicLabels, map, measure, mnemonicActivate, notify, notifyByPspec, observeChildren, observeControllers, pick, queueAllocate, queueDraw, queueResize, realize, ref, refSink, remove, removeController, removeCssClass, removeMnemonicLabel, removeTickCallback, resetProperty, resetRelation, resetState, runDispose, shouldLayout, show, sizeAllocate, snapshotChild, stealData, stealQdata, thawNotify, translateCoordinates, triggerTooltipQuery, unmap, unparent, unrealize, unref, unsetStateFlags, updateProperty, updateRelation, updateState, watchClosure.
Getters
getAccessibleRole, getAllocatedBaseline, getAllocatedHeight, getAllocatedWidth, getAllocation, getAncestor, getBuildableId, getCanFocus, getCanTarget, getChildByName, getChildVisible, getClipboard, getCssClasses, getCssName, getCursor, getData, getDirection, getDisplay, getFirstChild, getFocusChild, getFocusOnClick, getFocusable, getFontMap, getFontOptions, getFrameClock, getHalign, getHasTooltip, getHeight, getHexpand, getHexpandSet, getHhomogeneous, getInterpolateSize, getLastChild, getLayoutManager, getMapped, getMarginBottom, getMarginEnd, getMarginStart, getMarginTop, getName, getNative, getNextSibling, getOpacity, getOverflow, getPage, getPages, getPangoContext, getParent, getPreferredSize, getPrevSibling, getPrimaryClipboard, getProperty, getQdata, getRealized, getReceivesDefault, getRequestMode, getRoot, getScaleFactor, getSensitive, getSettings, getSize, getSizeRequest, getStateFlags, getStyleContext, getTemplateChild, getTooltipMarkup, getTooltipText, getTransitionDuration, getTransitionRunning, getTransitionType, getValign, getVexpand, getVexpandSet, getVhomogeneous, getVisible, getVisibleChild, getVisibleChildName, getWidth.
Setters
setCanFocus, setCanTarget, setChildVisible, setCssClasses, setCursor, setCursorFromName, setData, setDataFull, setDirection, setFocusChild, setFocusOnClick, setFocusable, setFontMap, setFontOptions, setHalign, setHasTooltip, setHexpand, setHexpandSet, setHhomogeneous, setInterpolateSize, setLayoutManager, setMarginBottom, setMarginEnd, setMarginStart, setMarginTop, setName, setOpacity, setOverflow, setParent, setProperty, setReceivesDefault, setSensitive, setSizeRequest, setStateFlags, setTooltipMarkup, setTooltipText, setTransitionDuration, setTransitionType, setValign, setVexpand, setVexpandSet, setVhomogeneous, setVisible, setVisibleChild, setVisibleChildFull, setVisibleChildName.
addChild
Arguments
| :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) | |
| => a | 
 | 
| -> b | 
 | 
| -> m StackPage | Returns: the  | 
Adds a child to stack.
addNamed
Arguments
| :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) | |
| => a | 
 | 
| -> b | 
 | 
| -> Maybe Text | 
 | 
| -> m StackPage | Returns: the  | 
Adds a child to stack.
 The child is identified by the name.
addTitled
Arguments
| :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) | |
| => a | 
 | 
| -> b | 
 | 
| -> Maybe Text | 
 | 
| -> Text | 
 | 
| -> m StackPage | Returns: the  | 
Adds a child to stack.
 The child is identified by the name. The title
 will be used by StackSwitcher to represent
 child in a tab bar, so it should be short.
getChildByName
getHhomogeneous
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> m Bool | Returns: whether  | 
Gets whether stack is horizontally homogeneous.
 See stackSetHhomogeneous.
getInterpolateSize
stackGetInterpolateSize Source #
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> m Bool | Returns:  | 
Returns whether the Stack is set up to interpolate between
 the sizes of children on page switch.
getPage
Arguments
| :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) | |
| => a | 
 | 
| -> b | 
 | 
| -> m StackPage | Returns: the  | 
Returns the StackPage object for child.
getPages
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> m SelectionModel | Returns: a  | 
Returns a ListModel that contains the pages of the stack,
 and can be used to keep an up-to-date view. The model also
 implements SelectionModel and can be used to track and
 modify the visible page.
getTransitionDuration
stackGetTransitionDuration Source #
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> m Word32 | Returns: the transition duration | 
Returns the amount of time (in milliseconds) that
 transitions between pages in stack will take.
getTransitionRunning
stackGetTransitionRunning Source #
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> m Bool | Returns:  | 
Returns whether the stack is currently in a transition from one page to
 another.
getTransitionType
stackGetTransitionType Source #
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> m StackTransitionType | Returns: the current transition type of  | 
Gets the type of animation that will be used
 for transitions between pages in stack.
getVhomogeneous
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> m Bool | Returns: whether  | 
Gets whether stack is vertically homogeneous.
 See stackSetVhomogeneous.
getVisibleChild
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> m (Maybe Widget) | Returns: the visible child of the  | 
Gets the currently visible child of stack, or Nothing if
 there are no visible children.
getVisibleChildName
stackGetVisibleChildName Source #
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> m (Maybe Text) | Returns: the name of the visible child of the  | 
Returns the name of the currently visible child of stack, or
 Nothing if there is no visible child.
new
Arguments
| :: (HasCallStack, MonadIO m) | |
| => m Stack | Returns: a new  | 
Creates a new Stack container.
remove
Arguments
| :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) | |
| => a | 
 | 
| -> b | 
 | 
| -> m () | 
Removes a child widget from stack.
setHhomogeneous
setInterpolateSize
stackSetInterpolateSize Source #
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> Bool | 
 | 
| -> m () | 
setTransitionDuration
stackSetTransitionDuration Source #
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> Word32 | 
 | 
| -> m () | 
Sets the duration that transitions between pages in stack
 will take.
setTransitionType
stackSetTransitionType Source #
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> StackTransitionType | 
 | 
| -> m () | 
Sets the type of animation that will be used for
 transitions between pages in stack. Available
 types include various kinds of fades and slides.
The transition type can be changed without problems at runtime, so it is possible to change the animation based on the page that is about to become current.
setVhomogeneous
setVisibleChild
Arguments
| :: (HasCallStack, MonadIO m, IsStack a, IsWidget b) | |
| => a | 
 | 
| -> b | 
 | 
| -> m () | 
Makes child the visible child of stack.
If child is different from the currently
 visible child, the transition between the
 two will be animated with the current
 transition type of stack.
Note that the child widget has to be visible itself
 (see widgetShow) in order to become the visible
 child of stack.
setVisibleChildFull
stackSetVisibleChildFull Source #
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> Text | 
 | 
| -> StackTransitionType | 
 | 
| -> m () | 
Makes the child with the given name visible.
Note that the child widget has to be visible itself
 (see widgetShow) in order to become the visible
 child of stack.
setVisibleChildName
stackSetVisibleChildName Source #
Arguments
| :: (HasCallStack, MonadIO m, IsStack a) | |
| => a | 
 | 
| -> Text | 
 | 
| -> m () | 
Makes the child with the given name visible.
If child is different from the currently
 visible child, the transition between the
 two will be animated with the current
 transition type of stack.
Note that the child widget has to be visible itself
 (see widgetShow) in order to become the visible
 child of stack.
Properties
hhomogeneous
True if the stack allocates the same width for all children.
constructStackHhomogeneous :: (IsStack o, MonadIO m) => Bool -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “hhomogeneous” property. This is rarely needed directly, but it is used by new.
getStackHhomogeneous :: (MonadIO m, IsStack o) => o -> m Bool Source #
Get the value of the “hhomogeneous” property.
 When overloading is enabled, this is equivalent to
get stack #hhomogeneous
setStackHhomogeneous :: (MonadIO m, IsStack o) => o -> Bool -> m () Source #
Set the value of the “hhomogeneous” property.
 When overloading is enabled, this is equivalent to
setstack [ #hhomogeneous:=value ]
interpolateSize
No description available in the introspection data.
constructStackInterpolateSize :: (IsStack o, MonadIO m) => Bool -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “interpolate-size” property. This is rarely needed directly, but it is used by new.
getStackInterpolateSize :: (MonadIO m, IsStack o) => o -> m Bool Source #
Get the value of the “interpolate-size” property.
 When overloading is enabled, this is equivalent to
get stack #interpolateSize
setStackInterpolateSize :: (MonadIO m, IsStack o) => o -> Bool -> m () Source #
Set the value of the “interpolate-size” property.
 When overloading is enabled, this is equivalent to
setstack [ #interpolateSize:=value ]
pages
No description available in the introspection data.
getStackPages :: (MonadIO m, IsStack o) => o -> m (Maybe SelectionModel) Source #
Get the value of the “pages” property.
 When overloading is enabled, this is equivalent to
get stack #pages
transitionDuration
No description available in the introspection data.
constructStackTransitionDuration :: (IsStack o, MonadIO m) => Word32 -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “transition-duration” property. This is rarely needed directly, but it is used by new.
getStackTransitionDuration :: (MonadIO m, IsStack o) => o -> m Word32 Source #
Get the value of the “transition-duration” property.
 When overloading is enabled, this is equivalent to
get stack #transitionDuration
setStackTransitionDuration :: (MonadIO m, IsStack o) => o -> Word32 -> m () Source #
Set the value of the “transition-duration” property.
 When overloading is enabled, this is equivalent to
setstack [ #transitionDuration:=value ]
transitionRunning
No description available in the introspection data.
getStackTransitionRunning :: (MonadIO m, IsStack o) => o -> m Bool Source #
Get the value of the “transition-running” property.
 When overloading is enabled, this is equivalent to
get stack #transitionRunning
transitionType
No description available in the introspection data.
constructStackTransitionType :: (IsStack o, MonadIO m) => StackTransitionType -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “transition-type” property. This is rarely needed directly, but it is used by new.
getStackTransitionType :: (MonadIO m, IsStack o) => o -> m StackTransitionType Source #
Get the value of the “transition-type” property.
 When overloading is enabled, this is equivalent to
get stack #transitionType
setStackTransitionType :: (MonadIO m, IsStack o) => o -> StackTransitionType -> m () Source #
Set the value of the “transition-type” property.
 When overloading is enabled, this is equivalent to
setstack [ #transitionType:=value ]
vhomogeneous
True if the stack allocates the same height for all children.
constructStackVhomogeneous :: (IsStack o, MonadIO m) => Bool -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “vhomogeneous” property. This is rarely needed directly, but it is used by new.
getStackVhomogeneous :: (MonadIO m, IsStack o) => o -> m Bool Source #
Get the value of the “vhomogeneous” property.
 When overloading is enabled, this is equivalent to
get stack #vhomogeneous
setStackVhomogeneous :: (MonadIO m, IsStack o) => o -> Bool -> m () Source #
Set the value of the “vhomogeneous” property.
 When overloading is enabled, this is equivalent to
setstack [ #vhomogeneous:=value ]
visibleChild
No description available in the introspection data.
constructStackVisibleChild :: (IsStack o, MonadIO m, IsWidget a) => a -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “visible-child” property. This is rarely needed directly, but it is used by new.
getStackVisibleChild :: (MonadIO m, IsStack o) => o -> m (Maybe Widget) Source #
Get the value of the “visible-child” property.
 When overloading is enabled, this is equivalent to
get stack #visibleChild
setStackVisibleChild :: (MonadIO m, IsStack o, IsWidget a) => o -> a -> m () Source #
Set the value of the “visible-child” property.
 When overloading is enabled, this is equivalent to
setstack [ #visibleChild:=value ]
visibleChildName
No description available in the introspection data.
constructStackVisibleChildName :: (IsStack o, MonadIO m) => Text -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “visible-child-name” property. This is rarely needed directly, but it is used by new.
getStackVisibleChildName :: (MonadIO m, IsStack o) => o -> m (Maybe Text) Source #
Get the value of the “visible-child-name” property.
 When overloading is enabled, this is equivalent to
get stack #visibleChildName
setStackVisibleChildName :: (MonadIO m, IsStack o) => o -> Text -> m () Source #
Set the value of the “visible-child-name” property.
 When overloading is enabled, this is equivalent to
setstack [ #visibleChildName:=value ]