uni-htk-2.2.1.0: Graphical User Interface for Haskell Programs

HTk.Toolkit.SimpleForm

Description

This module defines SimpleForms, a simple interface to filling in forms using HTk. (Indeed, it is simple enough that it might be ported to some other GUI sometime.)

Synopsis

Documentation

data Form value Source

Instances

newFormEntry :: (FormLabel label, FormValue value) => label -> value -> Form valueSource

nullForm :: FormLabel label => label -> Form ()Source

newFormMenu :: FormLabel label => label -> HTkMenu value -> Form (Maybe value)Source

newFormOptionMenu2 :: (Eq a, GUIValue a) => [(a, b)] -> Form bSource

(//) :: Form value1 -> Form value2 -> Form (value1, value2)Source

(\\) :: Form x -> Form y -> Form (x, y)Source

column :: [Form value] -> Form [value]Source

row :: [Form value] -> Form [value]Source

doForm :: String -> Form value -> IO (Maybe value)Source

doFormMust :: String -> Form value -> IO valueSource

mapForm :: (x -> WithError y) -> Form x -> Form ySource

mapFormIO :: (x -> IO (WithError y)) -> Form x -> Form ySource

guardForm :: (x -> Bool) -> String -> Form x -> Form xSource

guardFormIO :: (x -> IO Bool) -> String -> Form x -> Form xSource

class FormValue value whereSource

Methods

makeFormEntry :: Frame -> value -> IO (EnteredForm value)Source

Instances

FormValue Bool 
FormValue () 
FormTextFieldIO value => FormValue value 
(HasConfigRadioButton value, Bounded value, Enum value) => FormValue (Radio value) 
FormTextFieldIO value => FormValue (Password value) 

mapMakeFormEntry :: FormValue value2 => (value1 -> value2) -> (value2 -> value1) -> Frame -> value1 -> IO (EnteredForm value1)Source

class FormTextField value whereSource

Instances

class FormTextFieldIO value whereSource

Instances

newtype Password value Source

Constructors

Password value 

Instances

data EmptyLabel Source

Constructors

EmptyLabel 

data WrappedFormLabel Source

Constructors

forall label . FormLabel label => WrappedFormLabel label 

data Radio x Source

Constructors

Radio x 
NoRadio 

Instances

Typeable1 Radio 
(HasConfigRadioButton value, Bounded value, Enum value) => FormValue (Radio value) 
(Monad m, HasBinary x m) => HasBinary (Radio x) m 

editableTextForm :: [Config Editor] -> Form StringSource

An editable text window as a form entry Useful config options: (value String) to set initial contents (height i), (width i) to set the height and width in characters. (background s) to set the background colour to s.

editableTextForm0 :: [Config Editor] -> Form StringSource

Like editableTextForm but no scrollbars are displayed.