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 |
GtkPopoverMenuBar presents a horizontal bar of items that pop up popover menus when clicked.
The only way to create instances of GtkPopoverMenuBar is
from a MenuModel
.
CSS nodes
plain code
menubar ├── item[.active] ┊ ╰── popover ╰── item ╰── popover
GtkPopoverMenuBar has a single CSS node with name menubar, below which each item has its CSS node, and below that the corresponding popover.
The item whose popover is currently open gets the .active style class.
Accessibility
GtkPopoverMenuBar uses the GTK_ACCESSIBLE_ROLE_MENU_BAR
role,
the menu items use the GTK_ACCESSIBLE_ROLE_MENU_ITEM
role and
the menus use the GTK_ACCESSIBLE_ROLE_MENU
role.
Synopsis
- newtype PopoverMenuBar = PopoverMenuBar (ManagedPtr PopoverMenuBar)
- class (GObject o, IsDescendantOf PopoverMenuBar o) => IsPopoverMenuBar o
- toPopoverMenuBar :: (MonadIO m, IsPopoverMenuBar o) => o -> m PopoverMenuBar
- popoverMenuBarAddChild :: (HasCallStack, MonadIO m, IsPopoverMenuBar a, IsWidget b) => a -> b -> Text -> m Bool
- popoverMenuBarGetMenuModel :: (HasCallStack, MonadIO m, IsPopoverMenuBar a) => a -> m MenuModel
- popoverMenuBarNewFromModel :: (HasCallStack, MonadIO m, IsMenuModel a) => Maybe a -> m PopoverMenuBar
- popoverMenuBarRemoveChild :: (HasCallStack, MonadIO m, IsPopoverMenuBar a, IsWidget b) => a -> b -> m Bool
- popoverMenuBarSetMenuModel :: (HasCallStack, MonadIO m, IsPopoverMenuBar a, IsMenuModel b) => a -> Maybe b -> m ()
- clearPopoverMenuBarMenuModel :: (MonadIO m, IsPopoverMenuBar o) => o -> m ()
- constructPopoverMenuBarMenuModel :: (IsPopoverMenuBar o, MonadIO m, IsMenuModel a) => a -> m (GValueConstruct o)
- getPopoverMenuBarMenuModel :: (MonadIO m, IsPopoverMenuBar o) => o -> m MenuModel
- setPopoverMenuBarMenuModel :: (MonadIO m, IsPopoverMenuBar o, IsMenuModel a) => o -> a -> m ()
Exported types
newtype PopoverMenuBar Source #
Memory-managed wrapper type.
PopoverMenuBar (ManagedPtr PopoverMenuBar) |
Instances
Eq PopoverMenuBar Source # | |
Defined in GI.Gtk.Objects.PopoverMenuBar (==) :: PopoverMenuBar -> PopoverMenuBar -> Bool # (/=) :: PopoverMenuBar -> PopoverMenuBar -> Bool # | |
GObject PopoverMenuBar Source # | |
Defined in GI.Gtk.Objects.PopoverMenuBar | |
ManagedPtrNewtype PopoverMenuBar Source # | |
Defined in GI.Gtk.Objects.PopoverMenuBar toManagedPtr :: PopoverMenuBar -> ManagedPtr PopoverMenuBar | |
TypedObject PopoverMenuBar Source # | |
Defined in GI.Gtk.Objects.PopoverMenuBar | |
HasParentTypes PopoverMenuBar Source # | |
Defined in GI.Gtk.Objects.PopoverMenuBar | |
IsGValue (Maybe PopoverMenuBar) Source # | Convert |
Defined in GI.Gtk.Objects.PopoverMenuBar gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe PopoverMenuBar -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe PopoverMenuBar) | |
type ParentTypes PopoverMenuBar Source # | |
Defined in GI.Gtk.Objects.PopoverMenuBar |
class (GObject o, IsDescendantOf PopoverMenuBar o) => IsPopoverMenuBar o Source #
Type class for types which can be safely cast to PopoverMenuBar
, for instance with toPopoverMenuBar
.
Instances
(GObject o, IsDescendantOf PopoverMenuBar o) => IsPopoverMenuBar o Source # | |
Defined in GI.Gtk.Objects.PopoverMenuBar |
toPopoverMenuBar :: (MonadIO m, IsPopoverMenuBar o) => o -> m PopoverMenuBar Source #
Cast to PopoverMenuBar
, for types for which this is known to be safe. For general casts, use castTo
.
Methods
Click to display all available methods, including inherited ones
Methods
actionSetEnabled, activate, activateAction, activateDefault, addChild, addController, addCssClass, addMnemonicLabel, addTickCallback, 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, removeChild, 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, getChildVisible, getClipboard, getCssClasses, getCssName, getCursor, getData, getDirection, getDisplay, getFirstChild, getFocusChild, getFocusOnClick, getFocusable, getFontMap, getFontOptions, getFrameClock, getHalign, getHasTooltip, getHeight, getHexpand, getHexpandSet, getLastChild, getLayoutManager, getMapped, getMarginBottom, getMarginEnd, getMarginStart, getMarginTop, getMenuModel, getName, getNative, getNextSibling, getOpacity, getOverflow, getPangoContext, getParent, getPreferredSize, getPrevSibling, getPrimaryClipboard, getProperty, getQdata, getRealized, getReceivesDefault, getRequestMode, getRoot, getScaleFactor, getSensitive, getSettings, getSize, getSizeRequest, getStateFlags, getStyleContext, getTemplateChild, getTooltipMarkup, getTooltipText, getValign, getVexpand, getVexpandSet, getVisible, getWidth.
Setters
setCanFocus, setCanTarget, setChildVisible, setCssClasses, setCursor, setCursorFromName, setData, setDataFull, setDirection, setFocusChild, setFocusOnClick, setFocusable, setFontMap, setFontOptions, setHalign, setHasTooltip, setHexpand, setHexpandSet, setLayoutManager, setMarginBottom, setMarginEnd, setMarginStart, setMarginTop, setMenuModel, setName, setOpacity, setOverflow, setParent, setProperty, setReceivesDefault, setSensitive, setSizeRequest, setStateFlags, setTooltipMarkup, setTooltipText, setValign, setVexpand, setVexpandSet, setVisible.
addChild
popoverMenuBarAddChild Source #
:: (HasCallStack, MonadIO m, IsPopoverMenuBar a, IsWidget b) | |
=> a |
|
-> b |
|
-> Text |
|
-> m Bool | Returns: |
Adds a custom widget to a generated menubar.
For this to work, the menu model of bar
must have an
item with a custom
attribute that matches id
.
getMenuModel
popoverMenuBarGetMenuModel Source #
:: (HasCallStack, MonadIO m, IsPopoverMenuBar a) | |
=> a |
|
-> m MenuModel | Returns: a |
Returns the model from which the contents of bar
are taken.
newFromModel
popoverMenuBarNewFromModel Source #
:: (HasCallStack, MonadIO m, IsMenuModel a) | |
=> Maybe a | |
-> m PopoverMenuBar | Returns: a new |
Creates a PopoverMenuBar
from a MenuModel
.
removeChild
popoverMenuBarRemoveChild Source #
:: (HasCallStack, MonadIO m, IsPopoverMenuBar a, IsWidget b) | |
=> a |
|
-> b |
|
-> m Bool | Returns: |
Removes a widget that has previously been added with
popoverMenuBarAddChild
.
setMenuModel
popoverMenuBarSetMenuModel Source #
:: (HasCallStack, MonadIO m, IsPopoverMenuBar a, IsMenuModel b) | |
=> a |
|
-> Maybe b | |
-> m () |
Sets a menu model from which bar
should take
its contents.
Properties
menuModel
The MenuModel
from which the menu bar is created.
The model should only contain submenus as toplevel elements.
clearPopoverMenuBarMenuModel :: (MonadIO m, IsPopoverMenuBar o) => o -> m () Source #
Set the value of the “menu-model
” property to Nothing
.
When overloading is enabled, this is equivalent to
clear
#menuModel
constructPopoverMenuBarMenuModel :: (IsPopoverMenuBar o, MonadIO m, IsMenuModel a) => a -> m (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “menu-model
” property. This is rarely needed directly, but it is used by new
.
getPopoverMenuBarMenuModel :: (MonadIO m, IsPopoverMenuBar o) => o -> m MenuModel Source #
Get the value of the “menu-model
” property.
When overloading is enabled, this is equivalent to
get
popoverMenuBar #menuModel
setPopoverMenuBarMenuModel :: (MonadIO m, IsPopoverMenuBar o, IsMenuModel a) => o -> a -> m () Source #
Set the value of the “menu-model
” property.
When overloading is enabled, this is equivalent to
set
popoverMenuBar [ #menuModel:=
value ]