data InputMsg a = InputChange a | InputDone KeySym a instance (Eq a) => Eq (InputMsg a) instance (Ord a) => Ord (InputMsg a) instance (Show a) => Show (InputMsg a) stripInputMsg :: InputMsg a -> a tstInp :: (a -> b) -> InputMsg a -> b mapInp :: (a -> b) -> InputMsg a -> InputMsg b inputDone :: InputMsg a -> Maybe a inputLeaveDone :: InputMsg a -> Maybe a
type KeySym = String
a
output messages of type InputMsg a
. The value indicates whether
it is an intermediate or final value. The user usually indicates that
a value is complete by pressing the Enter or Return key on the keyboard.
stripInputMsg
extracts the contents of an input message.
tstInp
applies a function to the contents of an InputMsg
.
mapInp
modifies the contents of an InputMsg
.
inputDone
allows you to check if an InputMsg
signals that
the user is done and if so extact the contents.
inputLeaveDone
allows you to check if an InputMsg
signals that
the user is done or has left the input field and if so extact the contents.
stripInputMsg >^=< stringF
InputMsg
should be an abstract type.