¤ auxShellF, delayedAuxShellF

Shells

Types

auxShellF :: String -> F a b -> F (Either Bool a) (Either Bool b)
delayedAuxShellF :: String -> F a b -> F (Either Bool a) (Either Bool b)

Synopsis

auxShellF title fud

Description

auxShellF is used to created auxiliary windows that can be opened and closed by the user during the run of the program. Auxiliary windows differ from popup windows in that they aren't modal, i.e., they do not block the main window while they are open.

Input

Left True opens the window. Left False closes the window. Right x propagates x to the enclosed fudget. For auxShellF Right x is passed to the enclosed fudget also while the fudget is closed. For delayedAuxShellF, no input is sent to the enclosed fudget while the window is closed. Instead, the latest Right x message is buffered until the window is opened by a Left True message.

Output

Left False is output when the user clicks on the close button provided by the window manager. The program is responsible for closing the window. Right y is output when the enclosed fudget outputs y.

Arguments

title :: String
window title.
fud :: F a b
fudget that determines the contents of the shell window.

See Also

Bugs

These fudgets would probably be easier to use if the windows were closed automatically...