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 |
- Exported types
- Methods
- attach
- attachNextTo
- getBaselineRow
- getChildAt
- getColumnHomogeneous
- getColumnSpacing
- getRowBaselinePosition
- getRowHomogeneous
- getRowSpacing
- insertColumn
- insertNextTo
- insertRow
- new
- queryChild
- remove
- removeColumn
- removeRow
- setBaselineRow
- setColumnHomogeneous
- setColumnSpacing
- setRowBaselinePosition
- setRowHomogeneous
- setRowSpacing
- Properties
GtkGrid is a container which arranges its child widgets in rows and columns, with arbitrary positions and horizontal/vertical spans.
Children are added using gridAttach
. They can span multiple
rows or columns. It is also possible to add a child next to an
existing child, using gridAttachNextTo
. To remove a child
from the grid, use gridRemove
. The behaviour of GtkGrid when
several children occupy the same grid cell is undefined.
CSS nodes
GtkGrid uses a single CSS node with name grid
.
Accessibility
GtkGrid uses the AccessibleRoleGroup
role.
Synopsis
- newtype Grid = Grid (ManagedPtr Grid)
- class (GObject o, IsDescendantOf Grid o) => IsGrid o
- toGrid :: (MonadIO m, IsGrid o) => o -> m Grid
- gridAttach :: (HasCallStack, MonadIO m, IsGrid a, IsWidget b) => a -> b -> Int32 -> Int32 -> Int32 -> Int32 -> m ()
- gridAttachNextTo :: (HasCallStack, MonadIO m, IsGrid a, IsWidget b, IsWidget c) => a -> b -> Maybe c -> PositionType -> Int32 -> Int32 -> m ()
- gridGetBaselineRow :: (HasCallStack, MonadIO m, IsGrid a) => a -> m Int32
- gridGetChildAt :: (HasCallStack, MonadIO m, IsGrid a) => a -> Int32 -> Int32 -> m (Maybe Widget)
- gridGetColumnHomogeneous :: (HasCallStack, MonadIO m, IsGrid a) => a -> m Bool
- gridGetColumnSpacing :: (HasCallStack, MonadIO m, IsGrid a) => a -> m Word32
- gridGetRowBaselinePosition :: (HasCallStack, MonadIO m, IsGrid a) => a -> Int32 -> m BaselinePosition
- gridGetRowHomogeneous :: (HasCallStack, MonadIO m, IsGrid a) => a -> m Bool
- gridGetRowSpacing :: (HasCallStack, MonadIO m, IsGrid a) => a -> m Word32
- gridInsertColumn :: (HasCallStack, MonadIO m, IsGrid a) => a -> Int32 -> m ()
- gridInsertNextTo :: (HasCallStack, MonadIO m, IsGrid a, IsWidget b) => a -> b -> PositionType -> m ()
- gridInsertRow :: (HasCallStack, MonadIO m, IsGrid a) => a -> Int32 -> m ()
- gridNew :: (HasCallStack, MonadIO m) => m Grid
- gridQueryChild :: (HasCallStack, MonadIO m, IsGrid a, IsWidget b) => a -> b -> m (Int32, Int32, Int32, Int32)
- gridRemove :: (HasCallStack, MonadIO m, IsGrid a, IsWidget b) => a -> b -> m ()
- gridRemoveColumn :: (HasCallStack, MonadIO m, IsGrid a) => a -> Int32 -> m ()
- gridRemoveRow :: (HasCallStack, MonadIO m, IsGrid a) => a -> Int32 -> m ()
- gridSetBaselineRow :: (HasCallStack, MonadIO m, IsGrid a) => a -> Int32 -> m ()
- gridSetColumnHomogeneous :: (HasCallStack, MonadIO m, IsGrid a) => a -> Bool -> m ()
- gridSetColumnSpacing :: (HasCallStack, MonadIO m, IsGrid a) => a -> Word32 -> m ()
- gridSetRowBaselinePosition :: (HasCallStack, MonadIO m, IsGrid a) => a -> Int32 -> BaselinePosition -> m ()
- gridSetRowHomogeneous :: (HasCallStack, MonadIO m, IsGrid a) => a -> Bool -> m ()
- gridSetRowSpacing :: (HasCallStack, MonadIO m, IsGrid a) => a -> Word32 -> m ()
- constructGridBaselineRow :: (IsGrid o, MonadIO m) => Int32 -> m (GValueConstruct o)
- getGridBaselineRow :: (MonadIO m, IsGrid o) => o -> m Int32
- setGridBaselineRow :: (MonadIO m, IsGrid o) => o -> Int32 -> m ()
- constructGridColumnHomogeneous :: (IsGrid o, MonadIO m) => Bool -> m (GValueConstruct o)
- getGridColumnHomogeneous :: (MonadIO m, IsGrid o) => o -> m Bool
- setGridColumnHomogeneous :: (MonadIO m, IsGrid o) => o -> Bool -> m ()
- constructGridColumnSpacing :: (IsGrid o, MonadIO m) => Int32 -> m (GValueConstruct o)
- getGridColumnSpacing :: (MonadIO m, IsGrid o) => o -> m Int32
- setGridColumnSpacing :: (MonadIO m, IsGrid o) => o -> Int32 -> m ()
- constructGridRowHomogeneous :: (IsGrid o, MonadIO m) => Bool -> m (GValueConstruct o)
- getGridRowHomogeneous :: (MonadIO m, IsGrid o) => o -> m Bool
- setGridRowHomogeneous :: (MonadIO m, IsGrid o) => o -> Bool -> m ()
- constructGridRowSpacing :: (IsGrid o, MonadIO m) => Int32 -> m (GValueConstruct o)
- getGridRowSpacing :: (MonadIO m, IsGrid o) => o -> m Int32
- setGridRowSpacing :: (MonadIO m, IsGrid o) => o -> Int32 -> m ()
Exported types
Memory-managed wrapper type.
Instances
Eq Grid Source # | |
GObject Grid Source # | |
Defined in GI.Gtk.Objects.Grid | |
ManagedPtrNewtype Grid Source # | |
Defined in GI.Gtk.Objects.Grid toManagedPtr :: Grid -> ManagedPtr Grid | |
TypedObject Grid Source # | |
Defined in GI.Gtk.Objects.Grid | |
HasParentTypes Grid Source # | |
Defined in GI.Gtk.Objects.Grid | |
IsGValue (Maybe Grid) Source # | Convert |
Defined in GI.Gtk.Objects.Grid gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe Grid -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe Grid) | |
type ParentTypes Grid Source # | |
Defined in GI.Gtk.Objects.Grid |
class (GObject o, IsDescendantOf Grid o) => IsGrid o Source #
Instances
(GObject o, IsDescendantOf Grid o) => IsGrid o Source # | |
Defined in GI.Gtk.Objects.Grid |
Methods
Click to display all available methods, including inherited ones
Methods
actionSetEnabled, activate, activateAction, activateDefault, addController, addCssClass, addMnemonicLabel, addTickCallback, allocate, attach, attachNextTo, 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, insertColumn, insertNextTo, insertRow, isAncestor, isDrawable, isFloating, isFocus, isSensitive, isVisible, keynavFailed, listMnemonicLabels, map, measure, mnemonicActivate, notify, notifyByPspec, observeChildren, observeControllers, pick, queryChild, queueAllocate, queueDraw, queueResize, realize, ref, refSink, remove, removeColumn, removeController, removeCssClass, removeMnemonicLabel, removeRow, 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, getBaselineRow, getBuildableId, getCanFocus, getCanTarget, getChildAt, getChildVisible, getClipboard, getColumnHomogeneous, getColumnSpacing, 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, getName, getNative, getNextSibling, getOpacity, getOrientation, getOverflow, getPangoContext, getParent, getPreferredSize, getPrevSibling, getPrimaryClipboard, getProperty, getQdata, getRealized, getReceivesDefault, getRequestMode, getRoot, getRowBaselinePosition, getRowHomogeneous, getRowSpacing, getScaleFactor, getSensitive, getSettings, getSize, getSizeRequest, getStateFlags, getStyleContext, getTemplateChild, getTooltipMarkup, getTooltipText, getValign, getVexpand, getVexpandSet, getVisible, getWidth.
Setters
setBaselineRow, setCanFocus, setCanTarget, setChildVisible, setColumnHomogeneous, setColumnSpacing, setCssClasses, setCursor, setCursorFromName, setData, setDataFull, setDirection, setFocusChild, setFocusOnClick, setFocusable, setFontMap, setFontOptions, setHalign, setHasTooltip, setHexpand, setHexpandSet, setLayoutManager, setMarginBottom, setMarginEnd, setMarginStart, setMarginTop, setName, setOpacity, setOrientation, setOverflow, setParent, setProperty, setReceivesDefault, setRowBaselinePosition, setRowHomogeneous, setRowSpacing, setSensitive, setSizeRequest, setStateFlags, setTooltipMarkup, setTooltipText, setValign, setVexpand, setVexpandSet, setVisible.
attach
:: (HasCallStack, MonadIO m, IsGrid a, IsWidget b) | |
=> a |
|
-> b |
|
-> Int32 |
|
-> Int32 |
|
-> Int32 |
|
-> Int32 |
|
-> m () |
Adds a widget to the grid.
The position of child
is determined by column
and row
.
The number of “cells” that child
will occupy is determined
by width
and height
.
attachNextTo
:: (HasCallStack, MonadIO m, IsGrid a, IsWidget b, IsWidget c) | |
=> a |
|
-> b |
|
-> Maybe c |
|
-> PositionType |
|
-> Int32 |
|
-> Int32 |
|
-> m () |
Adds a widget to the grid.
The widget is placed next to sibling
, on the side determined by
side
. When sibling
is Nothing
, the widget is placed in row (for
left or right placement) or column 0 (for top or bottom placement),
at the end indicated by side
.
Attaching widgets labeled [1], [2], [3] with sibling
== Nothing
and
side
== PositionTypeLeft
yields a layout of [3][2][1].
getBaselineRow
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> m Int32 | Returns: the row index defining the global baseline |
Returns which row defines the global baseline of grid
.
getChildAt
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Int32 |
|
-> Int32 |
|
-> m (Maybe Widget) | Returns: the child at the given position, or |
Gets the child of grid
whose area covers the grid
cell at column
, row
.
getColumnHomogeneous
gridGetColumnHomogeneous Source #
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> m Bool | Returns: whether all columns of |
Returns whether all columns of grid
have the same width.
getColumnSpacing
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> m Word32 | Returns: the column spacing of |
Returns the amount of space between the columns of grid
.
getRowBaselinePosition
gridGetRowBaselinePosition Source #
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Int32 |
|
-> m BaselinePosition | Returns: the baseline position of |
Returns the baseline position of row
as set
by gridSetRowBaselinePosition
or the default value
BaselinePositionCenter
.
getRowHomogeneous
gridGetRowHomogeneous Source #
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> m Bool | Returns: whether all rows of |
Returns whether all rows of grid
have the same height.
getRowSpacing
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> m Word32 | Returns: the row spacing of |
Returns the amount of space between the rows of grid
.
insertColumn
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Int32 |
|
-> m () |
Inserts a column at the specified position.
Children which are attached at or to the right of this position are moved one column to the right. Children which span across this position are grown to span the new column.
insertNextTo
:: (HasCallStack, MonadIO m, IsGrid a, IsWidget b) | |
=> a |
|
-> b |
|
-> PositionType |
|
-> m () |
Inserts a row or column at the specified position.
The new row or column is placed next to sibling
, on the side
determined by side
. If side
is PositionTypeTop
or PositionTypeBottom
,
a row is inserted. If side
is PositionTypeLeft
of PositionTypeRight
,
a column is inserted.
insertRow
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Int32 |
|
-> m () |
Inserts a row at the specified position.
Children which are attached at or below this position are moved one row down. Children which span across this position are grown to span the new row.
new
:: (HasCallStack, MonadIO m) | |
=> m Grid | Returns: the new |
Creates a new grid widget.
queryChild
:: (HasCallStack, MonadIO m, IsGrid a, IsWidget b) | |
=> a |
|
-> b |
|
-> m (Int32, Int32, Int32, Int32) |
Queries the attach points and spans of child
inside the given Grid
.
remove
:: (HasCallStack, MonadIO m, IsGrid a, IsWidget b) | |
=> a |
|
-> b |
|
-> m () |
Removes a child from grid
, after it has been added
with gridAttach
or gridAttachNextTo
.
removeColumn
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Int32 |
|
-> m () |
Removes a column from the grid.
Children that are placed in this column are removed, spanning children that overlap this column have their width reduced by one, and children after the column are moved to the left.
removeRow
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Int32 |
|
-> m () |
Removes a row from the grid.
Children that are placed in this row are removed, spanning children that overlap this row have their height reduced by one, and children below the row are moved up.
setBaselineRow
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Int32 |
|
-> m () |
Sets which row defines the global baseline for the entire grid.
Each row in the grid can have its own local baseline, but only
one of those is global, meaning it will be the baseline in the
parent of the grid
.
setColumnHomogeneous
gridSetColumnHomogeneous Source #
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Bool |
|
-> m () |
Sets whether all columns of grid
will have the same width.
setColumnSpacing
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Word32 |
|
-> m () |
Sets the amount of space between columns of grid
.
setRowBaselinePosition
gridSetRowBaselinePosition Source #
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Int32 |
|
-> BaselinePosition |
|
-> m () |
Sets how the baseline should be positioned on row
of the
grid, in case that row is assigned more space than is requested.
setRowHomogeneous
gridSetRowHomogeneous Source #
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Bool |
|
-> m () |
Sets whether all rows of grid
will have the same height.
setRowSpacing
:: (HasCallStack, MonadIO m, IsGrid a) | |
=> a |
|
-> Word32 |
|
-> m () |
Sets the amount of space between rows of grid
.
Properties
baselineRow
No description available in the introspection data.
constructGridBaselineRow :: (IsGrid o, MonadIO m) => Int32 -> m (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “baseline-row
” property. This is rarely needed directly, but it is used by new
.
getGridBaselineRow :: (MonadIO m, IsGrid o) => o -> m Int32 Source #
Get the value of the “baseline-row
” property.
When overloading is enabled, this is equivalent to
get
grid #baselineRow
setGridBaselineRow :: (MonadIO m, IsGrid o) => o -> Int32 -> m () Source #
Set the value of the “baseline-row
” property.
When overloading is enabled, this is equivalent to
set
grid [ #baselineRow:=
value ]
columnHomogeneous
No description available in the introspection data.
constructGridColumnHomogeneous :: (IsGrid o, MonadIO m) => Bool -> m (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “column-homogeneous
” property. This is rarely needed directly, but it is used by new
.
getGridColumnHomogeneous :: (MonadIO m, IsGrid o) => o -> m Bool Source #
Get the value of the “column-homogeneous
” property.
When overloading is enabled, this is equivalent to
get
grid #columnHomogeneous
setGridColumnHomogeneous :: (MonadIO m, IsGrid o) => o -> Bool -> m () Source #
Set the value of the “column-homogeneous
” property.
When overloading is enabled, this is equivalent to
set
grid [ #columnHomogeneous:=
value ]
columnSpacing
No description available in the introspection data.
constructGridColumnSpacing :: (IsGrid o, MonadIO m) => Int32 -> m (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “column-spacing
” property. This is rarely needed directly, but it is used by new
.
getGridColumnSpacing :: (MonadIO m, IsGrid o) => o -> m Int32 Source #
Get the value of the “column-spacing
” property.
When overloading is enabled, this is equivalent to
get
grid #columnSpacing
setGridColumnSpacing :: (MonadIO m, IsGrid o) => o -> Int32 -> m () Source #
Set the value of the “column-spacing
” property.
When overloading is enabled, this is equivalent to
set
grid [ #columnSpacing:=
value ]
rowHomogeneous
No description available in the introspection data.
constructGridRowHomogeneous :: (IsGrid o, MonadIO m) => Bool -> m (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “row-homogeneous
” property. This is rarely needed directly, but it is used by new
.
getGridRowHomogeneous :: (MonadIO m, IsGrid o) => o -> m Bool Source #
Get the value of the “row-homogeneous
” property.
When overloading is enabled, this is equivalent to
get
grid #rowHomogeneous
setGridRowHomogeneous :: (MonadIO m, IsGrid o) => o -> Bool -> m () Source #
Set the value of the “row-homogeneous
” property.
When overloading is enabled, this is equivalent to
set
grid [ #rowHomogeneous:=
value ]
rowSpacing
No description available in the introspection data.
constructGridRowSpacing :: (IsGrid o, MonadIO m) => Int32 -> m (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “row-spacing
” property. This is rarely needed directly, but it is used by new
.
getGridRowSpacing :: (MonadIO m, IsGrid o) => o -> m Int32 Source #
Get the value of the “row-spacing
” property.
When overloading is enabled, this is equivalent to
get
grid #rowSpacing
setGridRowSpacing :: (MonadIO m, IsGrid o) => o -> Int32 -> m () Source #
Set the value of the “row-spacing
” property.
When overloading is enabled, this is equivalent to
set
grid [ #rowSpacing:=
value ]