Copyright | Will Thompson and Iñaki García Etxebarria |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
GtkFrame
is a widget that surrounds its child with a decorative
frame and an optional label.
If present, the label is drawn inside the top edge of the frame.
The horizontal position of the label can be controlled with
frameSetLabelAlign
.
GtkFrame
clips its child. You can use this to add rounded corners
to widgets, but be aware that it also cuts off shadows.
GtkFrame as GtkBuildable
The GtkFrame
implementation of the GtkBuildable
interface supports
placing a child in the label position by specifying “label” as the
“type” attribute of a <child> element. A normal content child can
be specified without specifying a <child> type attribute.
An example of a UI definition fragment with GtkFrame:
xml code
<object class="GtkFrame"> <child type="label"> <object class="GtkLabel" id="frame_label"/> </child> <child> <object class="GtkEntry" id="frame_content"/> </child> </object>
CSS nodes
frame ├── <label widget> ╰── <child>
GtkFrame
has a main CSS node with name “frame”, which is used to draw the
visible border. You can set the appearance of the border using CSS properties
like “border-style” on this node.
Synopsis
- newtype Frame = Frame (ManagedPtr Frame)
- class (GObject o, IsDescendantOf Frame o) => IsFrame o
- toFrame :: (MonadIO m, IsFrame o) => o -> m Frame
- frameGetChild :: (HasCallStack, MonadIO m, IsFrame a) => a -> m (Maybe Widget)
- frameGetLabel :: (HasCallStack, MonadIO m, IsFrame a) => a -> m (Maybe Text)
- frameGetLabelAlign :: (HasCallStack, MonadIO m, IsFrame a) => a -> m Float
- frameGetLabelWidget :: (HasCallStack, MonadIO m, IsFrame a) => a -> m (Maybe Widget)
- frameNew :: (HasCallStack, MonadIO m) => Maybe Text -> m Frame
- frameSetChild :: (HasCallStack, MonadIO m, IsFrame a, IsWidget b) => a -> Maybe b -> m ()
- frameSetLabel :: (HasCallStack, MonadIO m, IsFrame a) => a -> Maybe Text -> m ()
- frameSetLabelAlign :: (HasCallStack, MonadIO m, IsFrame a) => a -> Float -> m ()
- frameSetLabelWidget :: (HasCallStack, MonadIO m, IsFrame a, IsWidget b) => a -> Maybe b -> m ()
- clearFrameChild :: (MonadIO m, IsFrame o) => o -> m ()
- constructFrameChild :: (IsFrame o, MonadIO m, IsWidget a) => a -> m (GValueConstruct o)
- getFrameChild :: (MonadIO m, IsFrame o) => o -> m (Maybe Widget)
- setFrameChild :: (MonadIO m, IsFrame o, IsWidget a) => o -> a -> m ()
- clearFrameLabel :: (MonadIO m, IsFrame o) => o -> m ()
- constructFrameLabel :: (IsFrame o, MonadIO m) => Text -> m (GValueConstruct o)
- getFrameLabel :: (MonadIO m, IsFrame o) => o -> m (Maybe Text)
- setFrameLabel :: (MonadIO m, IsFrame o) => o -> Text -> m ()
- clearFrameLabelWidget :: (MonadIO m, IsFrame o) => o -> m ()
- constructFrameLabelWidget :: (IsFrame o, MonadIO m, IsWidget a) => a -> m (GValueConstruct o)
- getFrameLabelWidget :: (MonadIO m, IsFrame o) => o -> m (Maybe Widget)
- setFrameLabelWidget :: (MonadIO m, IsFrame o, IsWidget a) => o -> a -> m ()
- constructFrameLabelXalign :: (IsFrame o, MonadIO m) => Float -> m (GValueConstruct o)
- getFrameLabelXalign :: (MonadIO m, IsFrame o) => o -> m Float
- setFrameLabelXalign :: (MonadIO m, IsFrame o) => o -> Float -> m ()
Exported types
Memory-managed wrapper type.
Instances
Eq Frame Source # | |
GObject Frame Source # | |
Defined in GI.Gtk.Objects.Frame | |
ManagedPtrNewtype Frame Source # | |
Defined in GI.Gtk.Objects.Frame toManagedPtr :: Frame -> ManagedPtr Frame | |
TypedObject Frame Source # | |
Defined in GI.Gtk.Objects.Frame | |
HasParentTypes Frame Source # | |
Defined in GI.Gtk.Objects.Frame | |
IsGValue (Maybe Frame) Source # | Convert |
Defined in GI.Gtk.Objects.Frame gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe Frame -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe Frame) | |
type ParentTypes Frame Source # | |
Defined in GI.Gtk.Objects.Frame |
class (GObject o, IsDescendantOf Frame o) => IsFrame o Source #
Instances
(GObject o, IsDescendantOf Frame o) => IsFrame o Source # | |
Defined in GI.Gtk.Objects.Frame |
Methods
Click to display all available methods, including inherited ones
Methods
actionSetEnabled, activate, activateAction, activateDefault, addController, addCssClass, addMnemonicLabel, addTickCallback, allocate, bindProperty, bindPropertyFull, childFocus, computeBounds, computeExpand, computePoint, computeTransform, contains, createPangoContext, createPangoLayout, disposeTemplate, 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, 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, getChild, getChildVisible, getClipboard, getCssClasses, getCssName, getCursor, getData, getDirection, getDisplay, getFirstChild, getFocusChild, getFocusOnClick, getFocusable, getFontMap, getFontOptions, getFrameClock, getHalign, getHasTooltip, getHeight, getHexpand, getHexpandSet, getLabel, getLabelAlign, getLabelWidget, getLastChild, getLayoutManager, getMapped, getMarginBottom, getMarginEnd, getMarginStart, getMarginTop, 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, setChild, setChildVisible, setCssClasses, setCursor, setCursorFromName, setData, setDataFull, setDirection, setFocusChild, setFocusOnClick, setFocusable, setFontMap, setFontOptions, setHalign, setHasTooltip, setHexpand, setHexpandSet, setLabel, setLabelAlign, setLabelWidget, setLayoutManager, setMarginBottom, setMarginEnd, setMarginStart, setMarginTop, setName, setOpacity, setOverflow, setParent, setProperty, setReceivesDefault, setSensitive, setSizeRequest, setStateFlags, setTooltipMarkup, setTooltipText, setValign, setVexpand, setVexpandSet, setVisible.
getChild
:: (HasCallStack, MonadIO m, IsFrame a) | |
=> a |
|
-> m (Maybe Widget) | Returns: the child widget of |
Gets the child widget of frame
.
getLabel
:: (HasCallStack, MonadIO m, IsFrame a) | |
=> a |
|
-> m (Maybe Text) | Returns: the text in the label, or |
Returns the frame labels text.
If the frame's label widget is not a GtkLabel
, Nothing
is returned.
getLabelAlign
:: (HasCallStack, MonadIO m, IsFrame a) | |
=> a |
|
-> m Float | Returns: the frames X alignment |
Retrieves the X alignment of the frame’s label.
getLabelWidget
:: (HasCallStack, MonadIO m, IsFrame a) | |
=> a |
|
-> m (Maybe Widget) | Returns: the label widget |
Retrieves the label widget for the frame.
new
:: (HasCallStack, MonadIO m) | |
=> Maybe Text |
|
-> m Frame | Returns: a new |
Creates a new GtkFrame
, with optional label label
.
If label
is Nothing
, the label is omitted.
setChild
:: (HasCallStack, MonadIO m, IsFrame a, IsWidget b) | |
=> a |
|
-> Maybe b |
|
-> m () |
Sets the child widget of frame
.
setLabel
:: (HasCallStack, MonadIO m, IsFrame a) | |
=> a |
|
-> Maybe Text |
|
-> m () |
Creates a new GtkLabel
with the label
and sets it as the frame's
label widget.
setLabelAlign
:: (HasCallStack, MonadIO m, IsFrame a) | |
=> a |
|
-> Float |
|
-> m () |
Sets the X alignment of the frame widget’s label.
The default value for a newly created frame is 0.0.
setLabelWidget
:: (HasCallStack, MonadIO m, IsFrame a, IsWidget b) | |
=> a |
|
-> Maybe b |
|
-> m () |
Sets the label widget for the frame.
This is the widget that will appear embedded in the top edge of the frame as a title.
Properties
child
The child widget.
clearFrameChild :: (MonadIO m, IsFrame o) => o -> m () Source #
Set the value of the “child
” property to Nothing
.
When overloading is enabled, this is equivalent to
clear
#child
constructFrameChild :: (IsFrame o, MonadIO m, IsWidget a) => a -> m (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “child
” property. This is rarely needed directly, but it is used by new
.
getFrameChild :: (MonadIO m, IsFrame o) => o -> m (Maybe Widget) Source #
Get the value of the “child
” property.
When overloading is enabled, this is equivalent to
get
frame #child
setFrameChild :: (MonadIO m, IsFrame o, IsWidget a) => o -> a -> m () Source #
Set the value of the “child
” property.
When overloading is enabled, this is equivalent to
set
frame [ #child:=
value ]
label
Text of the frame's label.
clearFrameLabel :: (MonadIO m, IsFrame o) => o -> m () Source #
Set the value of the “label
” property to Nothing
.
When overloading is enabled, this is equivalent to
clear
#label
constructFrameLabel :: (IsFrame o, MonadIO m) => Text -> m (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “label
” property. This is rarely needed directly, but it is used by new
.
getFrameLabel :: (MonadIO m, IsFrame o) => o -> m (Maybe Text) Source #
Get the value of the “label
” property.
When overloading is enabled, this is equivalent to
get
frame #label
setFrameLabel :: (MonadIO m, IsFrame o) => o -> Text -> m () Source #
Set the value of the “label
” property.
When overloading is enabled, this is equivalent to
set
frame [ #label:=
value ]
labelWidget
Widget to display in place of the usual frame label.
clearFrameLabelWidget :: (MonadIO m, IsFrame o) => o -> m () Source #
Set the value of the “label-widget
” property to Nothing
.
When overloading is enabled, this is equivalent to
clear
#labelWidget
constructFrameLabelWidget :: (IsFrame o, MonadIO m, IsWidget a) => a -> m (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “label-widget
” property. This is rarely needed directly, but it is used by new
.
getFrameLabelWidget :: (MonadIO m, IsFrame o) => o -> m (Maybe Widget) Source #
Get the value of the “label-widget
” property.
When overloading is enabled, this is equivalent to
get
frame #labelWidget
setFrameLabelWidget :: (MonadIO m, IsFrame o, IsWidget a) => o -> a -> m () Source #
Set the value of the “label-widget
” property.
When overloading is enabled, this is equivalent to
set
frame [ #labelWidget:=
value ]
labelXalign
The horizontal alignment of the label.
constructFrameLabelXalign :: (IsFrame o, MonadIO m) => Float -> m (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “label-xalign
” property. This is rarely needed directly, but it is used by new
.
getFrameLabelXalign :: (MonadIO m, IsFrame o) => o -> m Float Source #
Get the value of the “label-xalign
” property.
When overloading is enabled, this is equivalent to
get
frame #labelXalign
setFrameLabelXalign :: (MonadIO m, IsFrame o) => o -> Float -> m () Source #
Set the value of the “label-xalign
” property.
When overloading is enabled, this is equivalent to
set
frame [ #labelXalign:=
value ]