gtk-0.12.4: Binding to the Gtk+ graphical user interface library.

Portability | portable (depends on GHC)
Stability | provisional
Maintainer | gtk2hs-users@lists.sourceforge.net
Safe Haskell | None

Graphics.UI.Gtk.Ornaments.Frame

Contents

- Detail
- Class Hierarchy
- Types
- Constructors
- Methods
- Attributes

Description

A bin with a decorative frame and optional label

Synopsis

- data Frame
- class BinClass o => FrameClass o
- castToFrame :: GObjectClass obj => obj -> Frame
- gTypeFrame :: GType
- toFrame :: FrameClass o => o -> Frame
- frameNew :: IO Frame
- frameSetLabel :: FrameClass self => self -> String -> IO ()
- frameGetLabel :: FrameClass self => self -> IO String
- frameSetLabelWidget :: (FrameClass self, WidgetClass labelWidget) => self -> labelWidget -> IO ()
- frameGetLabelWidget :: FrameClass self => self -> IO (Maybe Widget)
- frameSetLabelAlign :: FrameClass self => self -> Float -> Float -> IO ()
- frameGetLabelAlign :: FrameClass self => self -> IO (Float, Float)
- data ShadowType
  - = ShadowNone
  - | ShadowIn
  - | ShadowOut
  - | ShadowEtchedIn
  - | ShadowEtchedOut
- frameSetShadowType :: FrameClass self => self -> ShadowType -> IO ()
- frameGetShadowType :: FrameClass self => self -> IO ShadowType
- frameLabel :: FrameClass self => Attr self String
- frameLabelXAlign :: FrameClass self => Attr self Float
- frameLabelYAlign :: FrameClass self => Attr self Float
- frameShadowType :: FrameClass self => Attr self ShadowType
- frameLabelWidget :: (FrameClass self, WidgetClass labelWidget) => ReadWriteAttr self (Maybe Widget) labelWidget

# Detail

The frame widget is a Bin that surrounds its child with a decorative frame and an optional label. If present, the label is drawn in a gap in the top side of the frame. The position of the label can be controlled with `frameSetLabelAlign`.

# Class Hierarchy

     | GObject
     | +----Object
     | +----Widget
     | +----Container
     | +----Bin
     | +----Frame
     | +----AspectFrame

# Types

data Frame

Instances

Eq Frame |
Ord Frame |
GObjectClass Frame |
FrameClass Frame |
BinClass Frame |
ContainerClass Frame |
WidgetClass Frame |
ObjectClass Frame |

class BinClass o => FrameClass o

Instances

FrameClass AspectFrame |
FrameClass Frame |

castToFrame :: GObjectClass obj => obj -> Frame

gTypeFrame :: GType

toFrame :: FrameClass o => o -> Frame

# Constructors

frameNew :: IO Frame

Creates a new `Frame` without a label.

- A label can later be set by calling `frameSetLabel`.

# Methods

frameSetLabel

Arguments

:: FrameClass self |
=> self |
-> String | `label` - the text to use as the label of the frame
-> IO () |

Sets the text of the label.

frameGetLabel

Arguments

:: FrameClass self |
=> self |
-> IO String | returns the text in the label, or if there was no label widget or the lable widget was not a `Label` then an exception is thrown

If the frame's label widget is a `Label`, returns the text in the label widget.

frameSetLabelWidget :: (FrameClass self, WidgetClass labelWidget) => self -> labelWidget -> IO ()

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.

frameGetLabelWidget

Arguments

:: FrameClass self |
=> self |
-> IO (Maybe Widget) | returns the label widget, or `Nothing` if there is none.

Retrieves the label widget for the frame. See `frameSetLabelWidget`.

frameSetLabelAlign

Arguments

:: FrameClass self |
=> self |
-> Float | `xalign` - The position of the label along the top edge of the widget. A value of 0.0 represents left alignment; 1.0 represents right alignment.
-> Float | `yalign` - The y alignment of the label. A value of 0.0 aligns under the frame; 1.0 aligns above the frame.
-> IO () |

Sets the alignment of the frame widget's label. The default values for a newly created frame are 0.0 and 0.5.

frameGetLabelAlign

Arguments

:: FrameClass self |
=> self |

-> IO (Float, Float)

    (xalign, yalign)

Retrieves the X and Y alignment of the frame's label. See `frameSetLabelAlign`.

data ShadowType

Shadow types

Constructors

ShadowNone |
ShadowIn |
ShadowOut |
ShadowEtchedIn |
ShadowEtchedOut |

Instances

Enum ShadowType |
Eq ShadowType |
Show ShadowType |

frameSetShadowType :: FrameClass self => self -> ShadowType -> IO ()

Sets the shadow type of the frame.

frameGetShadowType :: FrameClass self => self -> IO ShadowType

Retrieves the shadow type of the frame. See `frameSetShadowType`.

# Attributes

frameLabel :: FrameClass self => Attr self String

Text of the frame's label.

frameLabelXAlign :: FrameClass self => Attr self Float

The horizontal alignment of the label.

Allowed values: [0,1]

Default value: 0.5

frameLabelYAlign :: FrameClass self => Attr self Float

The vertical alignment of the label.

Allowed values: [0,1]

Default value: 0.5

frameShadowType :: FrameClass self => Attr self ShadowType

Appearance of the frame border.

Default value: `ShadowEtchedIn`

frameLabelWidget :: (FrameClass self, WidgetClass labelWidget) => ReadWriteAttr self (Maybe Widget) labelWidget

A widget to display in place of the usual frame label.