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.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
- onCycleChildFocus :: PanedClass self => self -> (Bool -> IO Bool) -> IO (ConnectId self)
- afterCycleChildFocus :: PanedClass self => self -> (Bool -> IO Bool) -> IO (ConnectId self)
- onToggleHandleFocus :: PanedClass self => self -> IO Bool -> IO (ConnectId self)
- afterToggleHandleFocus :: PanedClass self => self -> IO Bool -> IO (ConnectId self)
- onMoveHandle :: PanedClass self => self -> (ScrollType -> IO Bool) -> IO (ConnectId self)
- afterMoveHandle :: PanedClass self => self -> (ScrollType -> IO Bool) -> IO (ConnectId self)
- onCycleHandleFocus :: PanedClass self => self -> (Bool -> IO Bool) -> IO (ConnectId self)
- afterCycleHandleFocus :: PanedClass self => self -> (Bool -> IO Bool) -> IO (ConnectId self)
- onAcceptPosition :: PanedClass self => self -> IO Bool -> IO (ConnectId self)
- afterAcceptPosition :: PanedClass self => self -> IO Bool -> IO (ConnectId self)
- onCancelPosition :: PanedClass self => self -> IO Bool -> IO (ConnectId self)
- afterCancelPosition :: PanedClass self => self -> IO Bool -> IO (ConnectId self)

# 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 |
Ord Paned |
GObjectClass Paned |
PanedClass Paned |
ContainerClass Paned |
WidgetClass Paned |
ObjectClass 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

onCycleChildFocus :: PanedClass self => self -> (Bool -> IO Bool) -> IO (ConnectId self)

afterCycleChildFocus :: PanedClass self => self -> (Bool -> IO Bool) -> IO (ConnectId self)

onToggleHandleFocus :: PanedClass self => self -> IO Bool -> IO (ConnectId self)

afterToggleHandleFocus :: PanedClass self => self -> IO Bool -> IO (ConnectId self)

onMoveHandle :: PanedClass self => self -> (ScrollType -> IO Bool) -> IO (ConnectId self)

afterMoveHandle :: PanedClass self => self -> (ScrollType -> IO Bool) -> IO (ConnectId self)

onCycleHandleFocus :: PanedClass self => self -> (Bool -> IO Bool) -> IO (ConnectId self)

afterCycleHandleFocus :: PanedClass self => self -> (Bool -> IO Bool) -> IO (ConnectId self)

onAcceptPosition :: PanedClass self => self -> IO Bool -> IO (ConnectId self)

afterAcceptPosition :: PanedClass self => self -> IO Bool -> IO (ConnectId self)

onCancelPosition :: PanedClass self => self -> IO Bool -> IO (ConnectId self)

afterCancelPosition :: PanedClass self => self -> IO Bool -> IO (ConnectId self)