ContentsIndex
Graphics.UI.WX.Controls
Contents
Classes
Containers
Controls
Button
Text entry
CheckBox
Choice
ComboBox
ListBox
RadioBox
Spin Control
Slider
Gauge
Tree control
List control
Static text
SplitterWindow
ImageList
Description
Synopsis
data Align
= AlignLeft
| AlignRight
| AlignCentre
class Aligned w where
alignment :: CreateAttr w Align
alignment :: Aligned w => CreateAttr w Align
data Wrap
= WrapNone
| WrapLine
| WrapWord
class Wrapped w where
wrap :: CreateAttr w Wrap
wrap :: Wrapped w => CreateAttr w Wrap
class Sorted w where
sorted :: CreateAttr w Bool
sorted :: Sorted w => CreateAttr w Bool
type Panel a = Window (CPanel a)
panel :: Window a -> [Prop (Panel ())] -> IO (Panel ())
panelEx :: Window a -> Style -> [Prop (Panel ())] -> IO (Panel ())
defaultButton :: Attr (Panel p) (Button ())
type Notebook a = Control (CNotebook a)
notebook :: Window a -> [Prop (Notebook ())] -> IO (Notebook ())
focusOn :: Window a -> IO ()
type Button a = Control (CButton a)
button :: Window a -> [Prop (Button ())] -> IO (Button ())
buttonEx :: Window a -> Style -> [Prop (Button ())] -> IO (Button ())
smallButton :: Window a -> [Prop (Button ())] -> IO (Button ())
type BitmapButton a = Button (CBitmapButton a)
bitmapButton :: Window a -> [Prop (BitmapButton ())] -> IO (BitmapButton ())
type TextCtrl a = Control (CTextCtrl a)
entry :: Window a -> [Prop (TextCtrl ())] -> IO (TextCtrl ())
textEntry :: Window a -> [Prop (TextCtrl ())] -> IO (TextCtrl ())
textCtrl :: Window a -> [Prop (TextCtrl ())] -> IO (TextCtrl ())
textCtrlRich :: Window a -> [Prop (TextCtrl ())] -> IO (TextCtrl ())
textCtrlEx :: Window a -> Style -> [Prop (TextCtrl ())] -> IO (TextCtrl ())
processEnter :: Styled w => Attr w Bool
processTab :: Styled w => Attr w Bool
type CheckBox a = Control (CCheckBox a)
checkBox :: Window a -> [Prop (CheckBox ())] -> IO (CheckBox ())
type Choice a = Control (CChoice a)
choice :: Window a -> [Prop (Choice ())] -> IO (Choice ())
choiceEx :: Window a -> Style -> [Prop (Choice ())] -> IO (Choice ())
type ComboBox a = Choice (CComboBox a)
comboBox :: Window a -> [Prop (ComboBox ())] -> IO (ComboBox ())
comboBoxEx :: Window a -> Style -> [Prop (ComboBox ())] -> IO (ComboBox ())
type ListBox a = Control (CListBox a)
type SingleListBox a = ListBox (CSingleListBox a)
type MultiListBox a = ListBox (CMultiListBox a)
singleListBox :: Window a -> [Prop (SingleListBox ())] -> IO (SingleListBox ())
multiListBox :: Window a -> [Prop (MultiListBox ())] -> IO (MultiListBox ())
type RadioBox a = Control (CRadioBox a)
radioBox :: Window a -> Orientation -> [String] -> [Prop (RadioBox ())] -> IO (RadioBox ())
type SpinCtrl a = Control (CSpinCtrl a)
spinCtrl :: Window a -> Int -> Int -> [Prop (SpinCtrl ())] -> IO (SpinCtrl ())
type Slider a = Control (CSlider a)
hslider :: Window a -> Bool -> Int -> Int -> [Prop (Slider ())] -> IO (Slider ())
vslider :: Window a -> Bool -> Int -> Int -> [Prop (Slider ())] -> IO (Slider ())
sliderEx :: Window a -> Int -> Int -> Style -> [Prop (Slider ())] -> IO (Slider ())
type Gauge a = Control (CGauge a)
hgauge :: Window a -> Int -> [Prop (Gauge ())] -> IO (Gauge ())
vgauge :: Window a -> Int -> [Prop (Gauge ())] -> IO (Gauge ())
gaugeEx :: Window a -> Int -> Style -> [Prop (Gauge ())] -> IO (Gauge ())
type TreeCtrl a = Control (CTreeCtrl a)
treeCtrl :: Window a -> [Prop (TreeCtrl ())] -> IO (TreeCtrl ())
treeCtrlEx :: Window a -> Style -> [Prop (TreeCtrl ())] -> IO (TreeCtrl ())
treeEvent :: Event (TreeCtrl a) (EventTree -> IO ())
type ListCtrl a = Control (CListCtrl a)
listCtrl :: Window a -> [Prop (ListCtrl ())] -> IO (ListCtrl ())
listCtrlEx :: Window a -> Style -> [Prop (ListCtrl ())] -> IO (ListCtrl ())
listEvent :: Event (ListCtrl a) (EventList -> IO ())
columns :: Attr (ListCtrl a) [(String, Align, Int)]
type StaticText a = Control (CStaticText a)
staticText :: Window a -> [Prop (StaticText ())] -> IO (StaticText ())
type SplitterWindow a = Window (CSplitterWindow a)
splitterWindow :: Window a -> [Prop (SplitterWindow ())] -> IO (SplitterWindow ())
type ImageList a = WxObject (CImageList a)
imageList :: Size -> IO (ImageList ())
imageListFromFiles :: Size -> [FilePath] -> IO (ImageList ())
Classes
data Align
Alignment.
Constructors
AlignLeft
AlignRight
AlignCentre
show/hide Instances
BitMask Align
Eq Align
Read Align
Show Align
Typeable Align
class Aligned w where
Widgets that can have aligned content. Note: this property is not used to set the alignment of a widget itself -- See Graphics.UI.WXCore.Layout for more information about layout.
Methods
alignment :: CreateAttr w Align
Set the alignment of the content. Due to wxWidgets constrictions, this property has to be set at creation time.
show/hide Instances
alignment :: Aligned w => CreateAttr w Align
Set the alignment of the content. Due to wxWidgets constrictions, this property has to be set at creation time.
data Wrap
Wrap mode.
Constructors
WrapNoneNo wrapping (and show a horizontal scrollbar).
WrapLineWrap lines that are too long at any position.
WrapWordWrap lines that are too long at word boundaries.
show/hide Instances
BitMask Wrap
Eq Wrap
Read Wrap
Show Wrap
Typeable Wrap
class Wrapped w where
Widgets that have wrappable content.
Methods
wrap :: CreateAttr w Wrap
Set the wrap mode of a widget.
show/hide Instances
wrap :: Wrapped w => CreateAttr w Wrap
Set the wrap mode of a widget.
class Sorted w where
Widgets that have sorted contents.
Methods
sorted :: CreateAttr w Bool
Is the content of the widget sorted?
show/hide Instances
sorted :: Sorted w => CreateAttr w Bool
Is the content of the widget sorted?
Containers
type Panel a = Window (CPanel a)
Pointer to an object of type Panel, derived from Window.
panel :: Window a -> [Prop (Panel ())] -> IO (Panel ())

Create a Panel, a window that is normally used as a container for controls. It has a standard background and maintains standard keyboard navigation (ie. Tab moves through the controls).

panelEx :: Window a -> Style -> [Prop (Panel ())] -> IO (Panel ())

Create a Panel with a specific style.

defaultButton :: Attr (Panel p) (Button ())
type Notebook a = Control (CNotebook a)
Pointer to an object of type Notebook, derived from Control.
notebook :: Window a -> [Prop (Notebook ())] -> IO (Notebook ())

Create a Notebook. Layout is managed with the tabs combinator.

focusOn :: Window a -> IO ()
Set the initial focus on this control.
Controls
Button
type Button a = Control (CButton a)
Pointer to an object of type Button, derived from Control.
button :: Window a -> [Prop (Button ())] -> IO (Button ())

Create a standard push button.

buttonEx :: Window a -> Style -> [Prop (Button ())] -> IO (Button ())

Create a standard push button with the given flags.

smallButton :: Window a -> [Prop (Button ())] -> IO (Button ())

Create a minimially sized push button.

type BitmapButton a = Button (CBitmapButton a)
Pointer to an object of type BitmapButton, derived from Button.
bitmapButton :: Window a -> [Prop (BitmapButton ())] -> IO (BitmapButton ())

Create a bitmap button. Use the image attribute to set the bitmap.

Text entry
type TextCtrl a = Control (CTextCtrl a)
Pointer to an object of type TextCtrl, derived from Control.
entry :: Window a -> [Prop (TextCtrl ())] -> IO (TextCtrl ())

Create a single-line text entry control. Note: alignment has to be set at creation time (or the entry has default alignment (=left) ).

textEntry :: Window a -> [Prop (TextCtrl ())] -> IO (TextCtrl ())

Create a single-line text entry control. Note: alignment has to be set at creation time (or the entry has default alignment (=left) ).

textCtrl :: Window a -> [Prop (TextCtrl ())] -> IO (TextCtrl ())

Create a multi-line text control. Note: the wrap and alignment have to be set at creation time or the default to WrapNone and AlignLeft respectively.

textCtrlRich :: Window a -> [Prop (TextCtrl ())] -> IO (TextCtrl ())

Create a multi-line text rich-text control with a certain wrap mode Enables font and color settings on windows, while being equal to textCtrl on other platforms. Note: the wrap and alignment have to be set at creation time or the default to WrapNone and AlignLeft respectively.

textCtrlEx :: Window a -> Style -> [Prop (TextCtrl ())] -> IO (TextCtrl ())

Create a generic text control given a certain style.

processEnter :: Styled w => Attr w Bool
Process enter key events, used in a comboBox or textCtrl and catched using a on command handler. (otherwise pressing Enter is either processed internally by the control or used for navigation between dialog controls).
processTab :: Styled w => Attr w Bool
Process tab key events, used in a comboBox or textCtrl. (otherwise pressing Tab is either processed internally by the control or used for navigation between dialog controls).
CheckBox
type CheckBox a = Control (CCheckBox a)
Pointer to an object of type CheckBox, derived from Control.
checkBox :: Window a -> [Prop (CheckBox ())] -> IO (CheckBox ())

Create a new checkbox.

Choice
type Choice a = Control (CChoice a)
Pointer to an object of type Choice, derived from Control.
choice :: Window a -> [Prop (Choice ())] -> IO (Choice ())

Create a choice item to select a one of a list of strings.

choiceEx :: Window a -> Style -> [Prop (Choice ())] -> IO (Choice ())

Create a choice item, given a set of style flags, to select a one of a list of strings

ComboBox
type ComboBox a = Choice (CComboBox a)
Pointer to an object of type ComboBox, derived from Choice.
comboBox :: Window a -> [Prop (ComboBox ())] -> IO (ComboBox ())

Create a new combo box.

A command event is triggered when the enter key is pressed and when processEnter has been set to True.

comboBoxEx :: Window a -> Style -> [Prop (ComboBox ())] -> IO (ComboBox ())

Create a new combo box with a given set of flags.

A command event is triggered when the enter key is pressed and when processEnter has been set to True.

ListBox
type ListBox a = Control (CListBox a)
Pointer to an object of type ListBox, derived from Control.
type SingleListBox a = ListBox (CSingleListBox a)
Pointer to single selection list boxes, deriving from ListBox.
type MultiListBox a = ListBox (CMultiListBox a)
Pointer to multiple selection list boxes, deriving from ListBox.
singleListBox :: Window a -> [Prop (SingleListBox ())] -> IO (SingleListBox ())

Create a single selection list box.

multiListBox :: Window a -> [Prop (MultiListBox ())] -> IO (MultiListBox ())
RadioBox
type RadioBox a = Control (CRadioBox a)
Pointer to an object of type RadioBox, derived from Control.
radioBox :: Window a -> Orientation -> [String] -> [Prop (RadioBox ())] -> IO (RadioBox ())

Create a new radio button group with an initial orientation and a list of labels. Use selection to get the currently selected item.

Spin Control
type SpinCtrl a = Control (CSpinCtrl a)
Pointer to an object of type SpinCtrl, derived from Control.
spinCtrl :: Window a -> Int -> Int -> [Prop (SpinCtrl ())] -> IO (SpinCtrl ())

Create a spin control: a text field with up/down buttons. The value (selection) is always between a specified minimum and maximum.

Slider
type Slider a = Control (CSlider a)
Pointer to an object of type Slider, derived from Control.
hslider :: Window a -> Bool -> Int -> Int -> [Prop (Slider ())] -> IO (Slider ())

Create a horizontal slider with a specified minimum and maximum. Set the Bool argument to True to show labels (minimumn, maximum, and current value). The selection attribute gives the current value.

vslider :: Window a -> Bool -> Int -> Int -> [Prop (Slider ())] -> IO (Slider ())

Create a vertical slider with a specified minimum and maximum. Set the Bool argument to True to show labels (minimumn, maximum, and current value). The selection attribute gives the current value.

sliderEx :: Window a -> Int -> Int -> Style -> [Prop (Slider ())] -> IO (Slider ())

Create a slider with a specified minimum and maximum. The selection attribute gives the current value.

Gauge
type Gauge a = Control (CGauge a)
Pointer to an object of type Gauge, derived from Control.
hgauge :: Window a -> Int -> [Prop (Gauge ())] -> IO (Gauge ())

Create a horizontal gauge with a specified integer range (max value). The selection attribute determines the position of the gauge.

vgauge :: Window a -> Int -> [Prop (Gauge ())] -> IO (Gauge ())

Create a vertical gauge with a specified integer range (max value). The selection attribute determines the position of the gauge.

gaugeEx :: Window a -> Int -> Style -> [Prop (Gauge ())] -> IO (Gauge ())

Create a gauge control. The selection attribute determines the position of the gauge.

Tree control
type TreeCtrl a = Control (CTreeCtrl a)
Pointer to an object of type TreeCtrl, derived from Control.
treeCtrl :: Window a -> [Prop (TreeCtrl ())] -> IO (TreeCtrl ())

Create a single-selection tree control with buttons (i.e. + and - signs).

treeCtrlEx :: Window a -> Style -> [Prop (TreeCtrl ())] -> IO (TreeCtrl ())

Create a tree control.

treeEvent :: Event (TreeCtrl a) (EventTree -> IO ())
Tree control events.
List control
type ListCtrl a = Control (CListCtrl a)
Pointer to an object of type ListCtrl, derived from Control.
listCtrl :: Window a -> [Prop (ListCtrl ())] -> IO (ListCtrl ())

Create a report-style list control.

listCtrlEx :: Window a -> Style -> [Prop (ListCtrl ())] -> IO (ListCtrl ())

Create a list control.

listEvent :: Event (ListCtrl a) (EventList -> IO ())
List control events.
columns :: Attr (ListCtrl a) [(String, Align, Int)]
The columns attribute controls the columns in a report-view list control.
Static text
type StaticText a = Control (CStaticText a)
Pointer to an object of type StaticText, derived from Control.
staticText :: Window a -> [Prop (StaticText ())] -> IO (StaticText ())
Create static text label, see also label.
SplitterWindow
type SplitterWindow a = Window (CSplitterWindow a)
Pointer to an object of type SplitterWindow, derived from Window.
splitterWindow :: Window a -> [Prop (SplitterWindow ())] -> IO (SplitterWindow ())

Create a splitter window.

ImageList
type ImageList a = WxObject (CImageList a)
Pointer to an object of type ImageList, derived from WxObject.
imageList :: Size -> IO (ImageList ())
Create an empty image list that will contain images of the desired size.
imageListFromFiles :: Size -> [FilePath] -> IO (ImageList ())
Create an image list containing the images in the supplied file name list that will be scaled towards the desired size.
Produced by Haddock version 0.7