data InputMsg a = InputChange a | InputDone KeySym a instance Functor InputMsg instance Eq a => Eq (InputMsg a) instance Ord a => Ord (InputMsg a) instance Show a => Show (InputMsg a) inputMsg :: a -> InputMsg a inputChange :: a -> InputMsg a stripInputMsg :: InputMsg a -> a tstInp :: (t1 -> t2) -> InputMsg t1 -> t2 mapInp :: (t -> a) -> InputMsg t -> InputMsg a inputDone :: InputMsg a -> Maybe a inputLeaveDone :: InputMsg a -> Maybe a inputChange :: a -> InputMsg a
type KeySym = String
a
output messages of type InputMsg a. The message indicates whether
it contains 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.
inputChange constructs an InputMsg that signals a change to the
input.
inputMsg constructs an InputMsg that indicates that the input
is complete.
stripInputMsg >^=< stringF
InputMsg should be an abstract type.
InputMsgs:
stripInputSP, inputDoneSP, inputLeaveDoneSP.
Fudgets that use InputMsgs: stringF, inputPopupF,
inputPairF.