Graphics.UI.Gtk.Abstract.Paned

gtk3-0.14.5: Binding to the Gtk+ 3 graphical user interface library

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

Graphics.UI.Gtk.Abstract.Paned

Contents

- Detail
- Class Hierarchy
- Types
- Methods
- Attributes
- Child Attributes
- Deprecated Signals

Description

Base class for widgets with two adjustable panes

Synopsis

- data Paned
- class ContainerClass o => PanedClass o
- castToPaned :: GObjectClass obj => obj -> Paned
- gTypePaned :: GType
- toPaned :: PanedClass o => o -> Paned
- panedAdd1 :: (PanedClass self, WidgetClass child) => self -> child -> IO ()
- panedAdd2 :: (PanedClass self, WidgetClass child) => self -> child -> IO ()
- panedPack1 :: (PanedClass self, WidgetClass child) => self -> child -> Bool -> Bool -> IO ()
- panedPack2 :: (PanedClass self, WidgetClass child) => self -> child -> Bool -> Bool -> IO ()
- panedSetPosition :: PanedClass self => self -> Int -> IO ()
- panedGetPosition :: PanedClass self => self -> IO Int
- panedGetChild1 :: PanedClass self => self -> IO (Maybe Widget)
- panedGetChild2 :: PanedClass self => self -> IO (Maybe Widget)
- panedGetHandleWindow :: PanedClass self => self -> IO DrawWindow
- panedPosition :: PanedClass self => Attr self Int
- panedPositionSet :: PanedClass self => Attr self Bool
- panedMinPosition :: PanedClass self => ReadAttr self Int
- panedMaxPosition :: PanedClass self => ReadAttr self Int
- panedChildResize :: (PanedClass self, WidgetClass child) => child -> Attr self Bool
- panedChildShrink :: (PanedClass self, WidgetClass child) => child -> Attr self Bool

# Detail

`Paned` is the base class for widgets with two panes, arranged either horizontally (`HPaned`) or vertically (`VPaned`). Child widgets are added to the panes of the widget with `panedPack1` and `panedPack2`. The division beween the two children is set by default from the size requests of the children, but it can be adjusted by the user.

A paned widget draws a separator between the two child widgets and a small handle that the user can drag to adjust the division. It does not draw any relief around the children or around the separator. (The space in which the separator is called the gutter.) Often, it is useful to put each child inside a `Frame` with the shadow type set to `ShadowIn` so that the gutter appears as a ridge.

Each child has two options that can be set, `resize` and `shrink`. If `resize` is true, then when the `Paned` is resized, that child will expand or shrink along with the paned widget. If `shrink` is true, then when that child can be made smaller than its requisition by the user. Setting `shrink` to `False` allows the application to set a minimum size. If `resize` is false for both children, then this is treated as if `resize` is true for both children.

The application can set the position of the slider as if it were set by the user, by calling `panedSetPosition`.

# Class Hierarchy

    | GObject
    | +----Object
    | +----Widget
    | +----Container
    | +----Paned
    | +----HPaned
    | +----VPaned

# Types

data Paned #

Instances

Eq Paned # |
Methods (==) :: Paned -> Paned -> Bool # (/=) :: Paned -> Paned -> Bool #
Ord Paned # |
Methods compare :: Paned -> Paned -> Ordering # (<) :: Paned -> Paned -> Bool # (<=) :: Paned -> Paned -> Bool # (>) :: Paned -> Paned -> Bool # (>=) :: Paned -> Paned -> Bool # max :: Paned -> Paned -> Paned # min :: Paned -> Paned -> Paned #
GObjectClass Paned # |
Methods toGObject :: Paned -> GObject # unsafeCastGObject :: GObject -> Paned #
PanedClass Paned # |
ContainerClass Paned # |
WidgetClass Paned # |

class ContainerClass o => PanedClass o #

Instances

PanedClass VPaned # |
PanedClass HPaned # |
PanedClass Paned # |

castToPaned :: GObjectClass obj => obj -> Paned #

gTypePaned :: GType #

toPaned :: PanedClass o => o -> Paned #

# Methods

panedAdd1 #

Arguments

:: (PanedClass self, WidgetClass child) |
=> self |
-> child | `child` - the child to add
-> IO () |

Adds a child to the top or left pane with default parameters. This is equivalent to ``panedPack1` paned child False True`.

panedAdd2 #

Arguments

:: (PanedClass self, WidgetClass child) |
=> self |
-> child | `child` - the child to add
-> IO () |

Adds a child to the bottom or right pane with default parameters. This is equivalent to ``panedPack2` paned child True True`.

panedPack1 #

Arguments

:: (PanedClass self, WidgetClass child) |
=> self |
-> child | `child` - the child to add
-> Bool | `resize` - should this child expand when the paned widget is resized.
-> Bool | `shrink` - can this child be made smaller than its requsition.
-> IO () |

Adds a child to the top or left pane.

panedPack2 #

Arguments

:: (PanedClass self, WidgetClass child) |
=> self |
-> child | `child` - the child to add
-> Bool | `resize` - should this child expand when the paned widget is resized.
-> Bool | `shrink` - can this child be made smaller than its requsition.
-> IO () |

Adds a child to the bottom or right pane.

panedSetPosition #

Arguments

:: PanedClass self |
=> self |
-> Int | `position` - pixel position of divider, a negative value means that the position is unset.
-> IO () |

Sets the position of the divider between the two panes.

panedGetPosition #

Arguments

:: PanedClass self |
=> self |
-> IO Int | returns position of the divider

Obtains the position of the divider between the two panes.

panedGetChild1 #

Arguments

:: PanedClass self |
=> self |
-> IO (Maybe Widget) | returns first child, or `Nothing` if it is not set.

Obtains the first child of the paned widget.

- Available since Gtk+ version 2.4

panedGetChild2 #

Arguments

:: PanedClass self |
=> self |
-> IO (Maybe Widget) | returns second child, or `Nothing` if it is not set.

Obtains the second child of the paned widget.

- Available since Gtk+ version 2.4

panedGetHandleWindow :: PanedClass self => self -> IO DrawWindow #

Returns the `Window` of the handle. This function is useful when handling button or motion events because it enables the callback to distinguish between the window of the paned, a child and the handle.

# Attributes

panedPosition :: PanedClass self => Attr self Int #

Position of paned separator in pixels (0 means all the way to the left/top).

Allowed values: >= 0

Default value: 0

panedPositionSet :: PanedClass self => Attr self Bool #

`True` if the Position property should be used.

Default value: `False`

panedMinPosition :: PanedClass self => ReadAttr self Int #

The smallest possible value for the position property. This property is derived from the size and shrinkability of the widget's children.

Allowed values: >= 0

Default value: 0

panedMaxPosition :: PanedClass self => ReadAttr self Int #

The largest possible value for the position property. This property is derived from the size and shrinkability of the widget's children.

Allowed values: >= 0

Default value: 2147483647

# Child Attributes

panedChildResize :: (PanedClass self, WidgetClass child) => child -> Attr self Bool #

The "resize" child property determines whether the child expands and shrinks along with the paned widget.

Default value: `True`

panedChildShrink :: (PanedClass self, WidgetClass child) => child -> Attr self Bool #

The "shrink" child property determines whether the child can be made smaller than its requisition.

Default value: `True`

# Deprecated Signals