¤ Fudget Library Reference Manual ¤

Created from the Fudget Library sources on Wed November 6 19:06 MET 1996

Full Index

Sections


GuiElems

data BMevents = ...
data ConfirmMsg = ...
data EditStop = ...
data EditEvt = ...
data EditCmd = ...
data EDirection = ...
type EditStopFn = String -> String -> EditStopChoice
data EditStopChoice = ...
type IsSelect = Bool
data GfxInput a = ...
data GfxOutput = ...
data EqSnd a b = ...
data PopupMenu = ...
data TextRequest a = ...
data TextF
class HasInitText a where ...
data Sizing = ...
class HasSizing a where ...
type PickListRequest a = TextRequest a
data Click = ...
data StringF
data TerminalCmd = ...
data ButtonF
class HasLabelInside a where ...
data ToggleButtonF
data RadioGroupF
class HasInitDisp a where ...
data DisplayF
appendText :: [a] -> TextRequest a
bdStringF :: Int -> Sizing -> FontName -> [Char] -> F [Char] (InputMsg [Char])
border3dF :: Bool -> Int -> F a b -> F (Either Bool a) b
buttonBorderF :: Int -> F a b -> F (Either Bool a) b
buttonF :: (Graphic a) => a -> F Click Click
buttonF' :: (Graphic a) => Customiser ButtonF -> a -> F Click Click
buttonGroupF :: [(ModState, KeySym)] -> F (Either BMevents a) b -> F a b
changeText :: Int -> [a] -> TextRequest a
cmdTerminalF :: FontName -> Int -> Int -> F TerminalCmd a
confirmPopupF :: F [String] ([String], ConfirmMsg)
deleteText :: Int -> Int -> TextRequest a
displayF :: F String a
displayF' :: Customiser DisplayF -> F String a
doTextRequest :: [a] -> TextRequest a -> [a]
editF :: FontName -> F EditCmd EditEvt
editorF :: F EditCmd EditEvt
filePickF :: F String (InputMsg String)
fstEqSnd :: EqSnd a b -> a
generalStringF :: Int -> Sizing -> ColorName -> ColorName -> FontName -> (Char -> Bool) -> ([Char] -> [Char]) -> Int -> [Char] -> F (Either (StringF -> StringF) [Char]) (InputMsg [Char])
getAllowedChar :: StringF -> Char -> Bool
getCursorPos :: StringF -> Int
getShowString :: StringF -> String -> String
gfxButton :: GfxOutput -> Button
gfxKeyLookup :: GfxOutput -> KeyLookup
gfxKeySym :: GfxOutput -> KeySym
gfxPaths :: GfxOutput -> InputMsg [([Int], (Point, Rect))]
gfxState :: GfxOutput -> ModState
graphicsDispF :: (Graphic a) => F (GfxInput a) GfxOutput
graphicsDispF' :: (Graphic a, Graphic b) => Bool -> Int -> ColorName -> a -> F (GfxInput b) GfxOutput
graphicsF :: (Graphic a, Graphic b) => Bool -> Int -> ColorName -> a -> F (GfxInput b) GfxOutput
graphicsGroupF :: (Graphic c, Graphic d) => F a b -> Bool -> Int -> ColorName -> c -> F (Either (GfxInput d) a) (Either GfxOutput b)
graphicsLabelF :: (Graphic a) => a -> F b c
graphicsLabelF' :: (Graphic a) => Bool -> Int -> ColorName -> a -> F b c
highlightText :: [Int] -> TextRequest a
hyperGraphicsF :: (Eq a, Graphic b) => Drawing a b -> F (Either (Drawing a b) (a, Drawing a b)) a
hyperGraphicsF' :: (Eq a, Graphic b) => Bool -> Int -> ColorName -> Drawing a b -> F (Either (Drawing a b) (a, Drawing a b)) a
inputPopupF :: String -> F a (InputMsg b) -> Maybe b -> F (Maybe String, Maybe a) ((Maybe String, Maybe a), b)
inputPopupOptF :: String -> F a (InputMsg b) -> Maybe b -> F (Maybe String, Maybe a) ((Maybe String, Maybe a), Maybe b)
insertText :: Int -> [a] -> TextRequest a
intDispF :: F Int a
intDispF' :: Customiser DisplayF -> F Int a
intF :: F Int (InputMsg Int)
intF' :: Customiser StringF -> F Int (InputMsg Int)
intF'' :: Customiser StringF -> PF StringF Int (InputMsg Int)
intInputF :: F Int Int
labAboveF :: String -> F a b -> F a b
labBelowF :: String -> F a b -> F a b
labLeftOfF :: String -> F a b -> F a b
labRightOfF :: String -> F a b -> F a b
labelF :: String -> F a b
labelF' :: Customiser DisplayF -> String -> F a b
menuAltsF :: (Graphic b, Eq a) => FontName -> [a] -> (a -> b) -> F PopupMenu a
menuButtonF :: (Graphic a) => FontName -> a -> F a Click
menuButtonGroupF :: F (Either BMevents a) b -> F a b
menuF :: (Graphic a, Graphic c) => a -> [(b, c)] -> F b b
menuLabelF :: (Graphic a) => FontName -> a -> F (Either Bool a) GfxOutput
menuPopupF :: F a b -> F (Either PopupMenu a) b
messagePopupF :: F [String] ([String], Click)
moreF :: F [String] (InputMsg (Int, String))
moreF' :: (TextF -> TextF) -> F [[Char]] (InputMsg (Int, String))
moreFileF :: F String (InputMsg (Int, String))
moreFileShellF :: F String (InputMsg (Int, String))
moreShellF :: String -> F [[Char]] (InputMsg (Int, String))
moreShellF' :: (TextF -> TextF) -> String -> F [[Char]] (InputMsg (Int, String))
newline :: Char
offColor :: [Char]
oldButtonF :: (Graphic a) => FontName -> [(ModState, KeySym)] -> a -> F b Click
oldConfirmPopupF :: F String (String, ConfirmMsg)
oldGeneralStringF :: Int -> Sizing -> FontName -> (Char -> Bool) -> ([Char] -> [Char]) -> [Char] -> F [Char] (InputMsg [Char])
oldIntF :: Int -> InF Int Int
oldMenuF :: (Graphic c, Eq b, Graphic a) => FontName -> a -> [(b, [(ModState, KeySym)])] -> (b -> c) -> F a b
oldMessagePopupF :: F String (String, Click)
oldPasswdF :: String -> InF String String
oldPopupMenuF :: (Graphic c, Eq a) => ColorName -> Bool -> FontName -> Button -> ModState -> [(ModState, KeySym)] -> [(a, b)] -> (a -> c) -> F d e -> F (Either [(a, f)] d) (Either a e)
oldRadioGroupF :: (Graphic b, Eq a) => Placer -> Bool -> FontName -> [a] -> a -> (a -> b) -> F a a
oldStringF :: String -> InF String String
oldToggleButtonF :: (Graphic a) => FontName -> [(ModState, KeySym)] -> a -> F Bool Bool
oldToggleButtonF' :: (Graphic a) => Bool -> FontName -> [(ModState, KeySym)] -> a -> F Bool Bool
onColor :: [Char]
onOffDispF :: Bool -> F Bool a
passwdF :: F String (InputMsg String)
passwdF' :: (StringF -> StringF) -> F String (InputMsg String)
passwdF'' :: (StringF -> StringF) -> PF StringF String (InputMsg String)
passwdInputF :: F String String
passwdPopupF :: String -> F (Maybe String, Maybe String) ((Maybe String, Maybe String), String)
passwdPopupOptF :: String -> F (Maybe String, Maybe String) ((Maybe String, Maybe String), Maybe String)
pickListF :: (a -> String) -> F (PickListRequest a) (InputMsg (Int, a))
pickListF' :: (TextF -> TextF) -> (a -> String) -> F (TextRequest a) (InputMsg (Int, a))
pickText :: Int -> TextRequest a
popupMenuF :: (Graphic b, Eq b) => [(a, b)] -> F c d -> F (Either [(a, b)] c) (Either a d)
pushButtonF :: [(ModState, KeySym)] -> F a b -> F a (Either b Click)
pushButtonF' :: Int -> [(ModState, KeySym)] -> F a b -> F a (Either b Click)
quitButtonF :: F Click a
quitF :: F a b
quitIdF :: (a -> Bool) -> F a a
radioF :: (Graphic b, Eq a) => Placer -> Bool -> FontName -> [(a, b)] -> a -> F a a
radioGroupF :: (Graphic b, Eq a) => [(a, b)] -> a -> F a a
radioGroupF' :: (Graphic b, Eq a) => Customiser RadioGroupF -> [(a, b)] -> a -> F a a
replaceAll :: [a] -> TextRequest a
replaceAllFrom :: Int -> [a] -> TextRequest a
replaceAllGfx :: a -> GfxInput a
replaceText :: Int -> Int -> [a] -> TextRequest a
selectall :: [EditCmd]
setAllowedChar :: (Char -> Bool) -> StringF -> StringF
setCursorPos :: Int -> StringF -> StringF
setPlacer :: Placer -> RadioGroupF -> RadioGroupF
setShowString :: (String -> String) -> StringF -> StringF
simpleMenuF :: (Graphic c, Eq b, Graphic a) => FontName -> a -> [b] -> (b -> c) -> F a b
smallPickListF :: (a -> String) -> F [a] a
sndEqSnd :: EqSnd a b -> b
stringF :: F String (InputMsg String)
stringF' :: Customiser StringF -> F String (InputMsg String)
stringF'' :: Customiser StringF -> PF StringF String (InputMsg String)
stringInputF :: F String String
stringPopupF :: String -> F (Maybe String, Maybe String) ((Maybe String, Maybe String), String)
stringPopupOptF :: String -> F (Maybe String, Maybe String) ((Maybe String, Maybe String), Maybe String)
terminalF :: FontName -> Int -> Int -> F String a
textEnd :: (Num a) => a
textF :: F (TextRequest String) (InputMsg (Int, String))
textF' :: Customiser TextF -> F (TextRequest String) (InputMsg (Int, String))
textF'' :: Customiser TextF -> PF TextF (TextRequest String) (InputMsg (Int, String))
tieLabelF :: Orientation -> Alignment -> String -> F a b -> F a b
toEqSnd :: (Functor c) => c (a, b) -> c (EqSnd a b)
toggleButtonF :: (Graphic a) => a -> F Bool Bool
toggleButtonF' :: (Graphic a) => Customiser ToggleButtonF -> a -> F Bool Bool
toggleF :: Bool -> [(ModState, KeySym)] -> F a b -> F (Either Bool a) (Either Bool b)
toggleGroupF :: [(ModState, KeySym)] -> F (Either (Either Bool Bool) a) b -> F (Either Bool a) (Either Bool b)


Combinators

type DynFMsg a b = DynMsg a (F a b)
type Cont a b = (b -> a) -> a
data K a b
data F a b
type Ks a b c d = Ms (K a b) c d
type Ksc a b c = Ks a b c ()
type Msc a b = Ms a b ()
type Ms a b c = Mk (b -> a) c
type Mkc a = Mk a ()
type Mk a b = Cont a b
data Tree a = ...
type InF a b = F a (InputMsg b)
absF :: SP a b -> F a b
appendStartF :: [a] -> F b a -> F b a
appendStartK :: [KCommand a] -> K b a -> K b a
appendStartMessageF :: [FCommand a] -> F b a -> F b a
bindKs :: Ks a b c d -> (d -> Ks a b c e) -> Ks a b c e
bindMk :: Mk a b -> (b -> Mk a c) -> Mk a c
bindMs :: Ms a b c -> (c -> Ms a b d) -> Ms a b d
bmk :: ((a -> b) -> c) -> (a -> d -> b) -> d -> c
branchF :: F (Path, a) b -> F (Path, a) b -> F (Path, a) b
branchFSP :: FSP (Path, a) b -> FSP (Path, a) b -> FSP (Path, a) b
bypassF :: F a a -> F a a
compF :: F a b -> F c d -> F (Either a c) (Either b d)
compPath :: (Path, a) -> b -> (Either (Message (Path, a) c) (Message (Path, a) d) -> b) -> b
compTurnLeft :: (Path, a) -> Message (Path, a) b
compTurnRight :: (Path, a) -> Message (Path, a) b
concatMapF :: (a -> [b]) -> F a b
contDynF :: F a b -> Cont (F a c) b
contDynFSP :: FSP a b -> Cont (FSP a c) b
delayF :: F a b -> F a b
dynF :: F a b -> F (Either (F a b) a) b
dynListF :: F (Int, DynFMsg a b) (Int, b)
fieldMs :: (a -> b) -> Ms c a b
getF :: Cont (F a b) a
getK :: Cont (K a b) (KEvent a)
getKs :: Ks a b c (KEvent a)
getMessageF :: Cont (F a b) (FEvent a)
getMessageFu :: Cont (F a b) (KEvent a)
idF :: F a a
idLeftF :: F a b -> F (Either c a) (Either c b)
idRightF :: F a b -> F (Either a c) (Either b c)
ifMs :: Bool -> Ms a b () -> Ms a b ()
inputDoneSP :: SP (InputMsg a) a
inputLeaveDoneSP :: SP (InputMsg a) a
inputListLF :: (Eq a) => Placer -> [(a, InF b c)] -> InF [(a, b)] [(a, c)]
inputListSP :: (Eq a) => [a] -> SP (a, InputMsg b) (InputMsg [(a, b)])
inputPairLF :: Orientation -> InF a b -> InF c d -> InF (a, c) (b, d)
inputPairSP :: SP (Either (InputMsg a) (InputMsg b)) (InputMsg (a, b))
inputThroughF :: F a (InputMsg a) -> F a (InputMsg a)
leafF :: a -> F b c -> Fa TEvent TCommand ([d], b) (a, c)
listF :: (Eq a) => [(a, F b c)] -> F (a, b) (a, c)
loadKs :: Ks a b c c
loadMs :: Ms a b b
loopCompF :: F (Either (Either a b) (Either c d)) (Either (Either c e) (Either a f)) -> F (Either b d) (Either e f)
loopCompSP :: SP (Either (Either a b) (Either c d)) (Either (Either c e) (Either a f)) -> SP (Either b d) (Either e f)
loopCompThroughLeftF :: F (Either a (Either b c)) (Either b (Either a d)) -> F c d
loopCompThroughRightF :: F (Either (Either a b) c) (Either (Either c d) a) -> F b d
loopF :: F a a -> F a a
loopLeftF :: F (Either a b) (Either a c) -> F b c
loopLow :: SP TCommand (FCommand a) -> SP (FEvent a) TEvent -> F b c -> F b c
loopRightF :: F (Either a b) (Either c b) -> F a c
loopThroughLowSP :: SP (Either a b) (Either a b) -> SP (Message b c) (Message a d) -> SP (Message b c) (Message a d)
loopThroughRightF :: F (Either a b) (Either c d) -> F c a -> F b d
mapF :: (a -> b) -> F a b
mapKs :: (a -> b) -> Ks c d e a -> Ks c d e b
mapstateF :: (a -> b -> (a, [c])) -> a -> F b c
modMs :: (a -> a) -> Msc b a
nopMs :: Ms a b ()
nullF :: F a b
nullK :: K a b
nullKs :: Ks a b c ()
oldLoopF :: F a a -> F a b
parF :: F a b -> F a b -> F a b
postMapHigh :: (a -> b) -> F c a -> F c b
postMapHigh' :: (a -> b) -> Fa c d e a -> Fa c d e b
postMapLow :: (TCommand -> TCommand) -> F a b -> F a b
postMapLow' :: (a -> b) -> Fa c a d e -> Fa c b d e
postProcessHigh :: SP a b -> F c a -> F c b
postProcessHigh' :: SP a b -> Fa c d e a -> Fa c d e b
postProcessLow :: SP TCommand TCommand -> F a b -> F a b
postProcessLow' :: SP a b -> Fa c a d e -> Fa c b d e
preMapHigh :: F a b -> (c -> a) -> F c b
preMapHigh' :: Fa a b c d -> (e -> c) -> Fa a b e d
preMapLow :: F a b -> (TEvent -> TEvent) -> F a b
preMapLow' :: Fa a b c d -> (e -> a) -> Fa e b c d
preProcessHigh :: F a b -> SP c a -> F c b
preProcessHigh' :: Fa a b c d -> SP e c -> Fa a b e d
preProcessLow :: F a b -> SP TEvent TEvent -> F a b
preProcessLow' :: Fa a b c d -> SP e a -> Fa e b c d
prepostMapHigh :: (a -> b) -> (c -> d) -> F b c -> F a d
prepostMapHigh' :: (a -> b) -> (c -> d) -> Fa e f b c -> Fa e f a d
prepostMapLow :: (a -> b) -> (c -> d) -> Fa b c e f -> Fa a d e f
prodF :: F a b -> F c d -> F (a, c) (Either b d)
putF :: a -> F b a -> F b a
putK :: KCommand a -> K b a -> K b a
putKs :: KCommand a -> Ksc b a c
putMessageF :: FCommand a -> F b a -> F b a
putMessageFu :: Message XCommand a -> F b a -> F b a
putMessagesF :: [FCommand a] -> F b a -> F b a
putMessagesFu :: [KCommand a] -> F b a -> F b a
putsF :: [a] -> F b a -> F b a
putsK :: [KCommand a] -> K b a -> K b a
putsKs :: [KCommand a] -> Ksc b a c
serCompF :: F a b -> F c a -> F c b
serCompLeftToRight :: F (Either a b) (Either b c) -> F a c
serCompLeftToRightF :: F (Either a b) (Either b c) -> F a c
serCompRightToLeft :: F (Either a b) (Either c a) -> F b c
serCompRightToLeftF :: F (Either a b) (Either c a) -> F b c
startupF :: [a] -> F a b -> F a b
startupK :: [KEvent a] -> K a b -> K a b
startupMessageF :: [FEvent a] -> F a b -> F a b
stateK :: a -> Ksc b c a -> K b c -> K b c
stateMonadK :: a -> Ks b c a d -> (d -> K b c) -> K b c
storeKs :: a -> Ks b c a ()
storeMs :: a -> Msc b a
stripInputSP :: SP (InputMsg a) a
stubF :: F a b -> F c d
thenKs :: Ks a b c () -> Ks a b c d -> Ks a b c d
thenMk :: Mkc a -> Mk a b -> Mk a b
thenMs :: Msc a b -> Ms a b c -> Ms a b c
throughF :: F a b -> F a (Either b a)
toBothF :: F a (Either a a)
toMkc :: (a -> a) -> Mkc a
toMs :: Mk a b -> Ms a c b
toMsc :: (a -> a) -> Msc a b
treeF :: Tree (a, F b c) -> F (Path, b) (a, c)
treeF' :: Tree (a, F b c) -> FSP (Path, b) (a, c)
unitKs :: a -> Ks b c d a
unitMk :: a -> Mk b a
unitMs :: a -> Ms b c a
untaggedListF :: [F a b] -> F a b


InfixOps

infixl 9 >#+<
>#+< :: (F a b, Orientation) -> F c d -> F (Either a c) (Either b d)
infixl 9 >#==<
>#==< :: (F a b, Orientation) -> F c a -> F c b
infixl 5 >*<
>*< :: F a b -> F a b -> F a b
infixl 9 >+#<
>+#< :: F a b -> (Int, Orientation, F c d) -> F (Either a c) (Either b d)
infixl 5 >+<
>+< :: F a b -> F c d -> F (Either a c) (Either b d)
infixr 5 >..=<
>..=< :: SP TCommand TCommand -> F a b -> F a b
infixr 6 >.=<
>.=< :: (TCommand -> TCommand) -> F a b -> F a b
infixl 6 >=..<
>=..< :: F a b -> SP TEvent TEvent -> F a b
infixl 6 >=.<
>=.< :: F a b -> (TEvent -> TEvent) -> F a b
infixl 9 >==#<
>==#< :: F a b -> (Int, Orientation, F c a) -> F c b
infixr 4 >==<
>==< :: F a b -> F c a -> F c b
infixl 6 >=^<
>=^< :: F a b -> (c -> a) -> F c b
infixl 6 >=^^<
>=^^< :: F a b -> SP c a -> F c b
infixr 7 >^=<
>^=< :: (a -> b) -> F c a -> F c b
infixr 7 >^^=<
>^^=< :: SP a b -> F c a -> F c b


Layout

type Distance = Int
type Alignment = Double
data Orientation = ...
data LayoutDir = ...
data LayoutDirection = ...
data LayoutRequest = ...
type Placer = [LayoutRequest] -> Placer2
type Placer2 = (LayoutRequest, Rect -> [Rect])
type Spacer = LayoutRequest -> Spacer2
type Spacer2 = (LayoutRequest, Rect -> Rect)
type LayoutHint = String
data Layout
type LName = String
data NameLayout
aBottom :: Alignment
aCenter :: Alignment
aLeft :: Alignment
aRight :: Alignment
aTop :: Alignment
alignF :: Size -> Size -> Alignment -> Alignment -> F a b -> F a b
autoLayoutF :: F a b -> F a b
autoP :: Placer
barP :: Orientation -> Orientation -> Int -> Placer
bottomS :: Spacer
center :: Size -> Rect -> Rect
center' :: Point -> Size -> Rect -> Rect
centerS :: Spacer
compLF :: (F a b, Orientation) -> F c d -> F (Either a c) (Either b d)
compS :: Spacer -> Spacer -> Spacer
dynListLF :: Placer -> F (Int, DynFMsg a b) (Int, b)
fixedh :: LayoutRequest -> Bool
fixedv :: LayoutRequest -> Bool
fixh :: LayoutDir -> LayoutRequest -> Bool
fixv :: LayoutDir -> LayoutRequest -> Bool
flipP :: Placer -> Placer
flipPoint :: Point -> Point
flipRect :: Rect -> Rect
flipReq :: LayoutRequest -> LayoutRequest
flipS :: Spacer -> Spacer
hAlignS :: Alignment -> Spacer
hBoxF :: F a b -> F a b
hBoxLs' :: Int -> [Layout] -> Layout
hBoxNL :: [NameLayout] -> NameLayout
hBoxNL' :: Int -> [NameLayout] -> NameLayout
hCenterS :: Spacer
hMarginS :: Distance -> Distance -> Spacer
holeF :: F a b
horizontalCenterP :: Placer
horizontalCenterP' :: Distance -> Placer
horizontalP :: Placer
horizontalP' :: Int -> Placer
hvAlignLs :: Alignment -> Alignment -> Layout -> Layout
hvAlignNL :: Alignment -> Alignment -> NameLayout -> NameLayout
hvAlignS :: Alignment -> Alignment -> Spacer
hvMarginS :: Size -> Size -> Spacer
idP :: Placer
idS :: Spacer
lF :: Int -> LayoutDirection -> Placer -> F a b -> F a b
layoutF :: Layout -> F a b -> F a b
layoutModifierF :: (LayoutRequest -> LayoutRequest) -> F a b -> F a b
leafLs :: Layout
leafNL :: LName -> NameLayout
leftS :: Spacer
listLF :: (Eq a) => Placer -> [(a, F b c)] -> F (a, b) (a, c)
listNF :: (Eq a, Show a) => [(a, F b c)] -> F (a, b) (a, c)
mapLayout :: (Size -> Bool -> Bool -> LayoutRequest) -> LayoutRequest -> LayoutRequest
mapLayoutSize :: (Size -> Size) -> LayoutRequest -> LayoutRequest
marginF :: Distance -> F a b -> F a b
marginHVAlignF :: Distance -> Alignment -> Alignment -> F a b -> F a b
marginHVAlignLs :: Distance -> Alignment -> Alignment -> Layout -> Layout
marginHVAlignNL :: Distance -> Alignment -> Alignment -> NameLayout -> NameLayout
marginHVAlignS :: Distance -> Alignment -> Alignment -> Spacer
marginLs :: Distance -> Layout -> Layout
marginNL :: Distance -> NameLayout -> NameLayout
marginS :: Distance -> Spacer
matrixF :: Int -> F a b -> F a b
matrixP :: Int -> Placer
matrixP' :: Int -> LayoutDir -> Int -> Placer
maxSizeS :: Size -> Spacer
minSizeS :: Size -> Spacer
minsize :: LayoutRequest -> Size
mkp :: LayoutDir -> Int -> Int -> Point
modNL :: (Placer -> Placer) -> NameLayout -> NameLayout
nameF :: LName -> F a b -> F a b
nameLayoutF :: NameLayout -> F a b -> F a b
noStretchF :: Bool -> Bool -> F a b -> F a b
noStretchS :: Bool -> Bool -> Spacer
nullLF :: F a b
nullNL :: NameLayout
overlayP :: Placer
permLs :: [Int] -> Layout -> Layout
permP :: [Int] -> ([a] -> (b, c -> [d])) -> [a] -> (b, c -> [d])
placeLs :: Placer -> [Layout] -> Layout
placeNL :: Placer -> [NameLayout] -> NameLayout
placerF :: Placer -> F a b -> F a b
rbLayoutF :: Int -> F a b -> F a b
revHBoxF :: F a b -> F a b
revLs :: Layout -> Layout
revP :: Placer -> Placer
revVBoxF :: F a b -> F a b
rightBelowP :: Int -> Placer
rightS :: Spacer
sepF :: Size -> F a b -> F a b
sepLs :: Size -> Layout -> Layout
sepNL :: Size -> NameLayout -> NameLayout
sepS :: Size -> Spacer
serCompLF :: (F a b, Orientation) -> F c a -> F c b
sizeS :: Size -> Spacer
spaceLs :: Spacer -> Layout -> Layout
spaceNL :: Spacer -> NameLayout -> NameLayout
spacer1F :: Spacer -> F a b -> F a b
spacerF :: Spacer -> F a b -> F a b
spacerP :: Spacer -> Placer -> Placer
tableF :: Int -> F a b -> F a b
tableP :: Int -> Placer
tableP' :: Int -> LayoutDir -> Int -> Placer
topS :: Spacer
tryLayoutK :: LayoutRequest -> Cont (K a b) Size
untaggedListLF :: Placer -> [F a b] -> F (Int, a) b
userLayoutF :: F a b -> F (Either (Path, Rect) a) (Either (Path, LayoutRequest) b)
vAlignS :: Alignment -> Spacer
vBoxF :: F a b -> F a b
vBoxLs' :: Int -> [Layout] -> Layout
vBoxNL :: [NameLayout] -> NameLayout
vBoxNL' :: Int -> [NameLayout] -> NameLayout
vCenterS :: Spacer
vMarginS :: Distance -> Distance -> Spacer
verticalLeftP :: Placer
verticalLeftP' :: Distance -> Placer
verticalP :: Placer
verticalP' :: Int -> Placer
vswap :: LayoutDir -> (a, a) -> (a, a)
xc :: LayoutDir -> Point -> Int
yc :: LayoutDir -> Point -> Int


Containers

data PotRequest = ...
type PotState = (Int, Int, Int)
data SelCmd a = ...
data SelEvt a = ...
data ESelCmd a = ...
data ESelEvt a = ...
data ShellF
class HasDeleteQuit a where ...
class HasClickToType a where ...
class HasVisible a where ...
bubbleF :: F a b -> F a b
bubblePopupF :: F a b -> F (PopupMsg a) b
bubbleRootPopupF :: F a b -> F (PopupMsg a) b
containerGroupF :: Rect -> Rect -> Int -> Button -> ModState -> F a b -> F (Either (Rect, Rect) a) (Either Rect b)
eselectionF :: F (ESelCmd String) (ESelEvt String)
groupF :: [XCommand] -> K a b -> F c d -> F (Either a c) (Either b d)
hPotF :: Maybe Point -> F PotRequest (Int, Int, Int)
hScrollF :: F a b -> F a b
invisibleGroupF :: [XCommand] -> [WindowAttributes] -> F a b -> F a b
oldHscrollF :: (Point, Point) -> F a b -> F a b
oldScrollF :: (Point, Point) -> F a b -> F a b
oldVscrollF :: (Point, Point) -> F a b -> F a b
popupGroupF :: (Size -> Point, [WindowAttributes], K a b) -> F c d -> F (PopupMsg c) d
popupShellF :: String -> Maybe Point -> F a b -> F a (a, b)
posPopupShellF :: String -> [WindowAttributes] -> F a b -> F (a, Maybe Point) (a, b)
rootGroupF :: K a b -> F c d -> F (Either a c) (Either b d)
rootPopupF :: (Size -> Point, [WindowAttributes], K a b) -> F c d -> F (PopupMsg c) d
rootWindowF :: K a b -> F a b
sF :: Bool -> [XCommand] -> K a b -> F c d -> F (Either a c) (Either b d)
scrollF :: F a b -> F a b
scrollShellF :: String -> (Point, Point) -> F a b -> F a b
selectionF :: F (SelCmd String) (SelEvt String)
sgroupF :: [XCommand] -> Maybe Rect -> K a b -> F c d -> F (Either a c) (Either b d)
shellF :: String -> F a b -> F a b
shellF' :: Customiser ShellF -> String -> F a b -> F a b
shellKF :: K a b -> F c d -> F (Either a c) (Either b d)
shellKF' :: Customiser ShellF -> K a b -> F c d -> F (Either a c) (Either b d)
simpleGroupF :: [WindowAttributes] -> F a b -> F a b
simpleShellF :: String -> [WindowAttributes] -> F a b -> F a b
swindowF :: [XCommand] -> Maybe Rect -> K a b -> F a b
unmappedGroupF :: [XCommand] -> K a b -> F c d -> F (Either a c) (Either b d)
unmappedShellF :: [XCommand] -> K a b -> F c d -> F (Either a c) (Either b d)
unmappedSimpleShellF :: String -> [WindowAttributes] -> F a b -> F a b
vPotF :: Maybe Point -> F PotRequest (Int, Int, Int)
vScrollF :: F a b -> F a b
windowF :: [XCommand] -> K a b -> F a b


Filters

allcacheF :: F a b -> F a b
bitmapdatacacheF :: F a b -> F a b
bitmapfilecacheF :: F a b -> F a b
colorcacheF :: F a b -> F a b
doubleClickF :: Time -> F a b -> F a b
fontcacheF :: F a b -> F a b
fontcursorcacheF :: F a b -> F a b
fstructcacheF :: F a b -> F a b
gCcacheF :: F a b -> F a b
shapeGroupMgr :: F a b -> F a b


DrawingModules

data CharStruct = ...
data FontDirection = ...
data FontStruct
data FontStructList = ...
data Gfx = ...
data FixedDrawing = ...
data FlexibleDrawing = ...
data BitmapFile = ...
data Name = ...
data ColorSpec = ...
data FontSpec = ...
data ColorFallback = ...
class ColorGen a where ...
class FontGen a where ...
type Cont a b = (b -> a) -> a
data GCtx = ...
data GCSpec = ...
class Graphic a where ...
data MeasuredGraphics
data Drawing b a = ...
type DPath = [Int]
allocColor :: (FudgetIO c) => ColormapId -> RGB -> Cont (c a b) Color
allocColorF :: ColormapId -> RGB -> Cont (F a b) Color
allocColorPixel :: (FudgetIO c) => ColormapId -> RGB -> Cont (c a b) Pixel
allocColorPixelF :: ColormapId -> RGB -> Cont (F a b) Pixel
allocNamedColor :: (FudgetIO c) => ColormapId -> ColorName -> Cont (c a b) Color
allocNamedColorDef :: (FudgetIO c) => ColormapId -> ColorName -> [Char] -> Cont (c a b) Color
allocNamedColorDefPixel :: (FudgetIO c) => ColormapId -> ColorName -> [Char] -> (Pixel -> c a b) -> c a b
allocNamedColorF :: ColormapId -> ColorName -> Cont (F a b) Color
allocNamedColorPixel :: (FudgetIO c) => ColormapId -> ColorName -> Cont (c a b) Pixel
allocNamedColorPixelF :: ColormapId -> ColorName -> Cont (F a b) Pixel
annotChildren :: Drawing a b -> [(DPath, Drawing a b)]
annotChildren' :: (a -> Bool) -> Drawing a b -> [(DPath, Drawing a b)]
arc :: Int -> Int -> FlexibleDrawing
atomicD :: a -> Drawing b a
attribD :: GCSpec -> Drawing a b -> Drawing a b
belowAnnotD :: (Drawing a b -> Drawing a c) -> Drawing a b -> Drawing a c
bitmapFromData :: BitmapData -> Cont (K a b) BitmapReturn
blankD :: Size -> Drawing a Gfx
boxD :: [Drawing a b] -> Drawing a b
boxVisibleD :: Int -> [Drawing a b] -> Drawing a b
braces :: (FlexibleDrawing, FlexibleDrawing)
bracks :: (FlexibleDrawing, FlexibleDrawing)
colorSpec :: (ColorGen a) => a -> ColorSpec
convColorFallbackK :: (FudgetIO c) => ColorFallback -> (Pixel -> c a b) -> c a b
convColorNameK :: (FudgetIO c) => Name -> Cont (c a b) Pixel
convGCSpecK :: (FontGen b, FudgetIO e, ColorGen a) => FontStruct -> [GCAttributes a b] -> ([GCAttributes Pixel FontId] -> FontStruct -> e c d) -> e c d
convGCattrsK :: (FudgetIO c) => [GCAttributes ColorName FontName] -> ([GCAttributes Pixel FontId] -> c a b) -> c a b
corners :: Rect -> (Point, Point, Point, Point)
createFontCursor :: Int -> Cont (K a b) CursorId
createGC :: (FudgetIO c) => Drawable -> GCId -> GCAttributeList -> (GCId -> c a b) -> c a b
createGCF :: Drawable -> GCId -> GCAttributeList -> (GCId -> F a b) -> F a b
createGCtx :: (FontGen b, FudgetIO e, ColorGen a) => Drawable -> GCtx -> [GCAttributes a b] -> (GCtx -> e c d) -> e c d
createPixmap :: Size -> Depth -> Cont (K a b) PixmapId
deletePart :: Drawing a b -> [Int] -> Drawing a b
doubleleft :: Rect -> Rect
doubleright :: Rect -> Rect
drawarc :: Int -> Int -> Rect -> [DrawCommand]
drawingAnnotPart :: Drawing a b -> [Int] -> DPath
drawingAnnotPart' :: (a -> Bool) -> Drawing a b -> [Int] -> DPath
drawingAnnots :: Drawing a b -> [(DPath, a)]
drawingPart :: Drawing a b -> DPath -> Drawing a b
ellipse :: FlexibleDrawing
fatD :: Drawing a b -> Drawing a b
fgD :: (ColorGen a) => a -> Drawing b c -> Drawing b c
fgnD :: ColorName -> Drawing a b -> Drawing a b
filledRectD :: Size -> Drawing a Gfx
filler :: Bool -> Bool -> Int -> FlexibleDrawing
flex :: (Rect -> [DrawCommand]) -> FlexibleDrawing
flex' :: Int -> (Rect -> [DrawCommand]) -> FlexibleDrawing
fontD :: (FontGen a) => a -> Drawing b c -> Drawing b c
fontSpec :: (FontGen a) => a -> FontSpec
font_ascent :: FontStruct -> Int
font_descent :: FontStruct -> Int
font_id :: FontStruct -> FontId
font_range :: FontStruct -> (Char, Char)
fontnD :: FontName -> Drawing a b -> Drawing a b
frame :: FlexibleDrawing
frame' :: Int -> FlexibleDrawing
fsl2fs :: FontStructList -> FontStruct
g :: (Graphic a) => a -> Drawing b Gfx
getWindowId :: Cont (K a b) Window
getWindowRootPoint :: Cont (K a b) Point
hFiller :: Int -> FlexibleDrawing
hardAttribD :: GCtx -> Drawing a b -> Drawing a b
hboxD :: [Drawing a b] -> Drawing a b
hboxD' :: Int -> [Drawing a b] -> Drawing a b
hboxcD :: [Drawing a b] -> Drawing a b
hboxcD' :: Distance -> [Drawing a b] -> Drawing a b
holeD :: Drawing a Gfx
horizD :: Drawing a b -> Drawing a b
horizD' :: Int -> Drawing a b -> Drawing a b
horizcD :: Drawing a b -> Drawing a b
horizcD' :: Distance -> Drawing a b -> Drawing a b
isVisibleDrawingPart :: Drawing a b -> DPath -> Bool
labelD :: a -> Drawing a b -> Drawing a b
lbrace :: FlexibleDrawing
lbrack :: FlexibleDrawing
linespace :: FontStruct -> Int
loadFont :: (FudgetIO c) => FontName -> (FontId -> c a b) -> c a b
loadFontF :: FontName -> Cont (F a b) FontId
loadQueryFont :: (FudgetIO c) => FontName -> (Maybe FontStruct -> c a b) -> c a b
loadQueryFontF :: FontName -> Cont (F a b) (Maybe FontStruct)
lpar :: FlexibleDrawing
mapLabelDrawing :: (a -> b) -> Drawing a c -> Drawing b c
maybeDrawingPart :: Drawing a b -> DPath -> Maybe (Drawing a b)
measureText :: (Show a) => a -> GCtx -> (MeasuredGraphics -> b) -> b
next_pos :: FontStruct -> [Char] -> Int
northwestD :: Drawing a b -> Drawing a b
padD :: Distance -> Drawing a b -> Drawing a b
placedD :: Placer -> Drawing a b -> Drawing a b
pmCreateGC :: (FudgetIO c) => PixmapId -> GCId -> GCAttributeList -> (GCId -> c a b) -> c a b
pmCreateGCF :: PixmapId -> GCId -> GCAttributeList -> (GCId -> F a b) -> F a b
pmCreateGCfx :: (FontGen b, FudgetIO e, ColorGen a) => PixmapId -> GCtx -> [GCAttributes a b] -> (GCtx -> e c d) -> e c d
polyLine :: (Num a) => a -> [a] -> [(a, a)]
poslist :: (Functor a) => FontStruct -> a Char -> a Int
queryColor :: (FudgetIO c) => ColormapId -> Pixel -> (Color -> c a b) -> c a b
queryColorF :: ColormapId -> Pixel -> Cont (F a b) Color
queryFont :: (FudgetIO c) => FontId -> (FontStruct -> c a b) -> c a b
queryFontF :: FontId -> Cont (F a b) FontStruct
rbrace :: FlexibleDrawing
rbrack :: FlexibleDrawing
readBitmapFile :: String -> Cont (K a b) BitmapReturn
rectD :: Size -> Drawing a Gfx
replacePart :: Drawing a b -> DPath -> Drawing a b -> Drawing a b
rootGCtx :: GCtx
rpar :: FlexibleDrawing
safeLoadQueryFont :: (FudgetIO c) => FontName -> (FontStruct -> c a b) -> c a b
safeLoadQueryFontF :: FontName -> (FontStruct -> F a b) -> F a b
setFontCursor :: Int -> K a b -> K a b
softAttribD :: [GCAttributes ColorSpec FontSpec] -> Drawing a b -> Drawing a b
spacedD :: Spacer -> Drawing a b -> Drawing a b
split_string :: FontStruct -> String -> Int -> (String, String, Int)
stackD :: [Drawing a b] -> Drawing a b
string_bounds :: FontStruct -> [Char] -> Rect
string_box_size :: FontStruct -> [Char] -> Point
string_len :: FontStruct -> [Char] -> Int
string_rect :: FontStruct -> [Char] -> Rect
tableD :: Int -> [Drawing a b] -> Drawing a b
tableD' :: Int -> Int -> [Drawing a b] -> Drawing a b
tryAllocColor :: (FudgetIO c) => ColormapId -> RGB -> (Maybe Color -> c a b) -> c a b
tryAllocColorF :: ColormapId -> RGB -> Cont (F a b) (Maybe Color)
tryAllocNamedColor :: (FudgetIO c) => ColormapId -> ColorName -> (Maybe Color -> c a b) -> c a b
tryAllocNamedColorF :: ColormapId -> ColorName -> Cont (F a b) (Maybe Color)
up :: DPath -> DPath
updatePart :: Drawing a b -> DPath -> (Drawing a b -> Drawing a b) -> Drawing a b
vFiller :: Int -> FlexibleDrawing
vboxD :: [Drawing a b] -> Drawing a b
vboxD' :: Int -> [Drawing a b] -> Drawing a b
vboxlD :: [Drawing a b] -> Drawing a b
vboxlD' :: Distance -> [Drawing a b] -> Drawing a b
vertD :: Drawing a b -> Drawing a b
vertD' :: Int -> Drawing a b -> Drawing a b
vertlD :: Drawing a b -> Drawing a b
vertlD' :: Distance -> Drawing a b -> Drawing a b
wCreateGC :: (FudgetIO c) => GCId -> GCAttributeList -> (GCId -> c a b) -> c a b
wCreateGCF :: GCId -> GCAttributeList -> (GCId -> F a b) -> F a b
wCreateGCtx :: (FontGen b, FudgetIO e, ColorGen a) => GCtx -> [GCAttributes a b] -> (GCtx -> e c d) -> e c d
westD :: Drawing a b -> Drawing a b


KernelUtils

type Drawer = DrawCommand -> XCommand
type Fms' a b c = MapState a (Message XEvent b) [Message XCommand c]
type MapState a b c = a -> b -> (a, c)
changeBackPixel :: ColorName -> K a b -> K a b
changeBackPixmap :: ColorName -> ColorName -> Size -> [DrawCommand] -> K a b -> K a b
changeBg :: ColorName -> K a b -> K a b
changeGetBackPixel :: ColorName -> Cont (K a b) Pixel
compK :: K a b -> K c d -> K (Either a c) (Either b d)
darkGreyBgK :: K a b -> K a b
defaultRootWindowF :: Cont (F a b) Window
defaultRootWindowK :: Cont (K a b) Window
dynShapeK :: [GCAttributes ColorName FontName] -> (Size -> [DrawCommand]) -> K a b -> K (Either (Size -> [DrawCommand]) a) (Either c b)
getGeometryK :: Cont (K a b) (Rect, Int, Int)
getWindowPropertyK :: Int -> Atom -> Bool -> Atom -> Cont (K a b) (Atom, Int, Int, Int, String)
greyBgK :: K a b -> K a b
internAtomK :: String -> Bool -> Cont (K a b) Atom
knobBgK :: K a b -> K a b
lightGreyBgK :: K a b -> K a b
parK :: K a b -> K a b -> K a b
queryPointerK :: Cont (K a b) (Bool, Point, Point, ModState)
queryTreeF :: Cont (F a b) (Window, Window, [Window])
queryTreeK :: Cont (K a b) (Window, Window, [Window])
quitK :: K a b
shapeK :: (Size -> [DrawCommand]) -> K a b -> K a b
simpleF :: String -> (Drawer -> Drawer -> Fms' a b c) -> Size -> a -> F b c
simpleK :: (Drawer -> Drawer -> Fms' a b c) -> Size -> a -> K b c
wmDeleteWindowK :: (Atom -> K a b) -> K a b


StreamProc

data DynMsg b a = ...
type DynSPMsg a b = DynMsg a (SP a b)
data SP a b
type SPm a b c = Mk (SP a b) c
type SPms a b c d = Ms (SP a b) c d
type Cont a b = (b -> a) -> a
class StreamProcIO a where ...
appendStartSP :: [a] -> SP b a -> SP b a
bindSPm :: SPm a b c -> (c -> SPm a b d) -> SPm a b d
bindSPms :: SPms a b c d -> (d -> SPms a b c e) -> SPms a b c e
chopSP :: ((a -> SP b a) -> SP b a) -> SP b a
compEitherSP :: SP a b -> SP c d -> SP (Either a c) (Either b d)
compMsgSP :: SP a b -> SP c d -> SP (Message a c) (Message b d)
compSP :: SP a b -> SP c d -> SP (Either a c) (Either b d)
concSP :: SP [a] a
concatMapAccumlSP :: (a -> b -> (a, [c])) -> a -> SP b c
concatMapSP :: (a -> [b]) -> SP a b
concatSP :: SP [a] a
concmapSP :: (a -> [b]) -> SP a b
delaySP :: SP a b -> SP a b
dynforkmerge :: (Eq a) => SP (a, DynSPMsg b c) (a, c)
feedSP :: a -> [a] -> SP a b -> SP a b
filterJustSP :: SP (Maybe a) a
filterLeftSP :: SP (Either a b) a
filterRightSP :: SP (Either a b) b
filterSP :: (a -> Bool) -> SP a a
getSP :: Cont (SP a b) a
getSPm :: SPm a b a
getSPms :: SPms a b c a
idHighSP :: SP a b -> SP (Message a c) (Message b c)
idLeftSP :: SP a b -> SP (Either c a) (Either c b)
idLowSP :: SP a b -> SP (Message c a) (Message c b)
idRightSP :: SP a b -> SP (Either a c) (Either b c)
idSP :: SP a a
idempotSP :: (Eq a) => SP a a
interpSP :: (a -> b -> b) -> ((c -> b) -> b) -> b -> SP c a -> b
loadSPms :: SPms a b c c
loopLeftSP :: SP (Either a b) (Either a c) -> SP b c
loopSP :: SP a a -> SP a a
loopThroughRightSP :: SP (Either a b) (Either c d) -> SP c a -> SP b d
mapAccumlSP :: (a -> b -> (a, c)) -> a -> SP b c
mapFilterSP :: (a -> Maybe b) -> SP a b
mapSP :: (a -> b) -> SP a b
mapSPms :: (a -> b) -> SPms c d e a -> SPms c d e b
mapstateSP :: (a -> b -> (a, [c])) -> a -> SP b c
monadSP :: SPm a b () -> SP a b
nullSP :: SP a b
nullSPm :: SPm a b ()
nullSPms :: SPms a b c ()
parSP :: SP a b -> SP a b -> SP a b
postMapSP :: (a -> b) -> SP c a -> SP c b
preMapSP :: SP a b -> (c -> a) -> SP c b
prepostMapSP :: (a -> b) -> (c -> d) -> SP b c -> SP a d
pullSP :: SP a b -> ([b], SP a b)
putSP :: a -> SP b a -> SP b a
putSPm :: a -> SPm b a ()
putSPms :: a -> SPms b a c ()
puts :: (StreamProcIO c) => [a] -> c b a -> c b a
putsSP :: [a] -> SP b a -> SP b a
putsSPm :: [a] -> SPm b a ()
putsSPms :: [a] -> SPms b a c ()
runSP :: SP a b -> [a] -> [b]
seqSP :: SP a b -> SP a b -> SP a b
serCompSP :: SP a b -> SP c a -> SP c b
splitAtElemSP :: (a -> Bool) -> Cont (SP a b) [a]
splitSP :: SP (a, b) (Either a b)
startupSP :: [a] -> SP a b -> SP a b
stateMonadSP :: a -> SPms b c a d -> (d -> SP b c) -> SP b c
stepSP :: [a] -> Cont (SP b a) b
storeSPms :: a -> SPms b c a ()
thenSPm :: SPm a b () -> SPm a b c -> SPm a b c
thenSPms :: SPms a b c () -> SPms a b c d -> SPms a b c d
toBothSP :: SP a (Either a a)
toSPm :: SP a b -> SPm a b ()
unitSPm :: a -> SPm b c a
unitSPms :: a -> SPms b c d a
walkSP :: SP a b -> a -> ([b], SP a b)
zipSP :: [a] -> SP b (a, b)


InOut

data Tick = ...
appendChanK :: (FudgetIO c) => String -> String -> c a b -> c a b
echoK :: (FudgetIO c) => [Char] -> c a b -> c a b
hIO :: (FudgetIO c) => Request -> (_Response -> c a b) -> c a b
hIOF :: Request -> (Response -> F a b) -> F a b
hIOSucc :: (FudgetIO c) => Request -> c a b -> c a b
hIOSuccF :: Request -> F a b -> F a b
hIOerr :: (FudgetIO c) => Request -> (D_IOError -> c a b) -> (_Response -> c a b) -> c a b
hIOerrF :: Request -> (IOError -> F a b) -> (Response -> F a b) -> F a b
haskellIO :: (FudgetIO c) => Request -> (Response -> c a b) -> c a b
haskellIOF :: Request -> (Response -> F a b) -> F a b
inputLinesSP :: SP [Char] [Char]
ioF :: K a b -> F a b
linesSP :: SP Char [Char]
openFileAsSocketF :: String -> String -> (Socket -> F a b) -> F a b
openLSocketF :: Port -> (LSocket -> F a b) -> F a b
openSocketF :: Host -> Port -> (Socket -> F a b) -> F a b
outputF :: String -> F String a
readDirF :: F String (String, Either D_IOError [String])
readFileF :: F String (String, Either D_IOError String)
receiverF :: Socket -> F a String
stderrF :: F String a
stdinF :: F a String
stdioF :: F String String
stdoutF :: F String a
subProcessF :: String -> F String (Either String String)
timerF :: F (Maybe (Int, Int)) Tick
transceiverF :: Socket -> F String String
transmitterF :: Socket -> F String a


LowLevel

type Cont a b = (b -> a) -> a
data Fudlogue
class HasCache a where ...
class FudgetIO a where ...
adjustBorderWidth :: Int -> Point -> Point
autumnize :: [a] -> [a]
border_width :: Int
cmdContF :: XCommand -> (XEvent -> Maybe a) -> Cont (F b c) a
cmdContK :: XCommand -> (XEvent -> Maybe a) -> Cont (K b c) a
cmdContK' :: KCommand a -> (KEvent b -> Maybe c) -> Cont (K b a) c
cmdContLow :: (FudgetIO d) => XCommand -> (XEvent -> Maybe a) -> (a -> d b c) -> d b c
cmdContMsg :: (FudgetIO d) => KCommand a -> (KEvent b -> Maybe c) -> (c -> d b a) -> d b a
cmdContSP :: a -> (b -> Maybe c) -> Cont (SP b a) c
conts :: (a -> Cont b c) -> [a] -> Cont b [c]
dropSP :: (a -> Maybe b) -> (b -> SP a c) -> SP a c
fContWrap :: Cont (FSP a b) c -> Cont (F a b) c
fudlogue :: F a b -> IO ()
fudlogue' :: Customiser Fudlogue -> F a b -> IO ()
getBWidth :: [WindowChanges] -> Maybe Int
getLeftSP :: (a -> SP (Either a b) c) -> SP (Either a b) c
getRightSP :: (a -> SP (Either b a) c) -> SP (Either b a) c
kContWrap :: Cont (KSP a b) c -> Cont (K a b) c
kernelF :: K a b -> F a b
kernelTag :: Path
openDisplay :: DisplayName -> Cont (F a b) Display
putHigh :: (FudgetIO c) => a -> c b a -> c b a
putLow :: (FudgetIO c) => XCommand -> c a b -> c a b
putMsgs :: (FudgetIO c) => [KCommand a] -> c b a -> c b a
splogue :: SP (Path, Response) (Path, Request) -> Dialogue
tagEventsSP :: F a b -> SP (Path, Response) (Path, Request)
tagRequestsSP :: [_Response] -> SP (Either (Path, _Request) _Response) (Either (Path, _Response) _Request)
toKernel :: [a] -> [Message (Path, a) b]
tryGet :: Cont a (Maybe b) -> Cont a b -> Cont a b
tryM :: Cont a (Maybe b) -> a -> Cont a b
waitForF :: (a -> Maybe b) -> Cont (F a c) b
waitForFu :: (KEvent a -> Maybe b) -> Cont (F a c) b
waitForK :: (KEvent a -> Maybe b) -> Cont (K a c) b
waitForSP :: (a -> Maybe b) -> (b -> SP a c) -> SP a c
windowKF :: (Rect -> XCommand) -> Bool -> Bool -> [XCommand] -> Maybe Rect -> K a b -> F c d -> F (Either a c) (Either b d)
xrequest :: (FudgetIO d) => XRequest -> (XResponse -> Maybe a) -> (a -> d b c) -> d b c
xrequestF :: XRequest -> (XResponse -> Maybe a) -> Cont (F b c) a
xrequestK :: XRequest -> (XResponse -> Maybe a) -> Cont (K b c) a


XTypes

data XCommand = ...
data XRequest = ...
type Command = XCommand
data BitmapData = ...
data Drawable = ...
type DisplayName = String
data PropertyMode = ...
data DrawCommand = ...
data Direction
type Path = [Direction]
data Point = ...
type Size = Point
data Line = ...
data Rect = ...
data LayoutRequest
data Width = ...
data Pixel = ...
type PlaneMask = Pixel
data RGB = ...
data Color = ...
data Display = ...
type XDisplay = Display
data Selection = ...
data BackingStore = ...
data CoordMode = ...
data Shape = ...
data GrabPointerResult = ...
data GCFunction = ...
data GCLineStyle = ...
data GCCapStyle = ...
data GCSubwindowMode = ...
data GCFillStyle = ...
data GCAttributes a b = ...
type GCAttributeList = [GCAttributes Pixel FontId]
data WindowAttributes = ...
data WindowChanges = ...
data StackMode = ...
data EventMask = ...
data Gravity = ...
data ShapeKind = ...
data ShapeOperation = ...
data Ordering' = ...
type RmClass = String
type RmName = String
type RmQuery = (RmClass, RmName)
type RmSpec = [RmQuery]
type RmValue = String
type RmDatabase = Int
data Modifiers = ...
data Button = ...
type ModState = [Modifiers]
type KeySym = String
data WindowId = ...
type Window = WindowId
type XWId = WindowId
data PixmapId = ...
data FontId = ...
data GCId = ...
data CursorId = ...
data ColormapId = ...
data Atom = ...
type ColorName = String
type FontName = String
type Time = Int
type Depth = Int
data ImageFormat = ...
data KeyCode = ...
data Pressed = ...
type KeyLookup = String
data Detail = ...
data Mode = ...
data Visibility = ...
data ClientData = ...
data XEvent = ...
type Event = XEvent
data XResponse = ...
data BitmapReturn = ...
data FontStructList
data FontStruct
data DLValue
data SocketRequest = ...
data SocketResponse = ...
type Port = Int
type Host = String
type Peer = Host
type Socket = Int
type LSocket = Socket
type Timer = Int
type AsyncInput = (Descriptor, AEvent)
data Descriptor = ...
data AEvent = ...
type DLHandle = Int
=.> :: Point -> Point -> Bool
black :: Pixel
button :: XEvent -> Button
clEventMask :: [EventMask]
clModifiers :: [Modifiers]
clearWindowExpose :: XCommand
colorPixel :: Color -> Pixel
colorRGB :: Color -> RGB
confine :: Rect -> Rect -> Rect
copyFromParent :: Depth
count :: XEvent -> Int
defaultColormap :: ColormapId
detail :: XEvent -> Detail
diag :: Int -> Point
drawCircle :: Point -> Int -> DrawCommand
fillCircle :: Point -> Int -> DrawCommand
freedom :: Rect -> Rect -> Point
growrect :: Rect -> Point -> Rect
inRect :: Point -> Rect -> Bool
invcol :: Pixel -> Pixel -> Pixel
invertColorGCattrs :: Pixel -> Pixel -> [GCAttributes Pixel a]
invertGCattrs :: [GCAttributes Pixel a]
keyLookup :: XEvent -> KeyLookup
keySym :: XEvent -> KeySym
keycode :: XEvent -> KeyCode
lL :: Int -> Int -> Int -> Int -> Line
line2rect :: Line -> Rect
major_code :: XEvent -> Int
minor_code :: XEvent -> Int
mode :: XEvent -> Mode
moveResizeWindow :: Rect -> XCommand
moveWindow :: Point -> XCommand
moveline :: Line -> Point -> Line
moverect :: Rect -> Point -> Rect
noDisplay :: Display
noWindow :: WindowId
none :: PixmapId
origin :: Point
pMax :: [Point] -> Point
pMin :: [Point] -> Point
pP :: Int -> Int -> Point
padd :: Point -> Point -> Point
parentRelative :: PixmapId
plim :: Point -> Point -> Point -> Point
pmCopyArea :: PixmapId -> GCId -> Drawable -> Rect -> Point -> XCommand
pmCopyPlane :: PixmapId -> GCId -> Drawable -> Rect -> Point -> Int -> XCommand
pmCreatePutImage :: PixmapId -> GCId -> Rect -> ImageFormat -> [Pixel] -> XCommand
pmDrawArc :: PixmapId -> GCId -> Rect -> Int -> Int -> XCommand
pmDrawImageString :: PixmapId -> GCId -> Point -> String -> XCommand
pmDrawImageStringPS :: PixmapId -> GCId -> Point -> PackedString -> XCommand
pmDrawLine :: PixmapId -> GCId -> Line -> XCommand
pmDrawPoint :: PixmapId -> GCId -> Point -> XCommand
pmDrawRectangle :: PixmapId -> GCId -> Rect -> XCommand
pmDrawString :: PixmapId -> GCId -> Point -> String -> XCommand
pmDrawStringPS :: PixmapId -> GCId -> Point -> PackedString -> XCommand
pmFillArc :: PixmapId -> GCId -> Rect -> Int -> Int -> XCommand
pmFillPolygon :: PixmapId -> GCId -> Shape -> CoordMode -> [Point] -> XCommand
pmFillRectangle :: PixmapId -> GCId -> Rect -> XCommand
pmax :: Point -> Point -> Point
pmin :: Point -> Point -> Point
pos :: XEvent -> Point
posrect :: Rect -> Point -> Rect
propModeAppend :: PropertyMode
propModePrepend :: PropertyMode
propModeReplace :: PropertyMode
psub :: Point -> Point -> Point
rR :: Int -> Int -> Int -> Int -> Rect
rect :: XEvent -> Rect
rect2line :: Rect -> Line
rectMiddle :: Rect -> Point
rectpos :: Rect -> Point
rectsize :: Rect -> Size
resizeWindow :: Point -> XCommand
rmNothing :: (Num a) => a
rmax :: Rect -> Rect -> Rect
rootGC :: GCId
rootPos :: XEvent -> Point
rootWindow :: WindowId
rsub :: Rect -> Rect -> Point
scale :: (RealFrac a, Integral c, Integral b) => a -> b -> c
scalePoint :: (RealFrac a) => a -> Point -> Point
sizerect :: Rect -> Size -> Rect
state :: XEvent -> ModState
time :: XEvent -> Time
type' :: XEvent -> Pressed
wCopyArea :: GCId -> Drawable -> Rect -> Point -> XCommand
wCopyPlane :: GCId -> Drawable -> Rect -> Point -> Int -> XCommand
wCreatePutImage :: GCId -> Rect -> ImageFormat -> [Pixel] -> XCommand
wDrawArc :: GCId -> Rect -> Int -> Int -> XCommand
wDrawCircle :: GCId -> Point -> Int -> XCommand
wDrawImageString :: GCId -> Point -> String -> XCommand
wDrawImageStringPS :: GCId -> Point -> PackedString -> XCommand
wDrawLine :: GCId -> Line -> XCommand
wDrawPoint :: GCId -> Point -> XCommand
wDrawRectangle :: GCId -> Rect -> XCommand
wDrawString :: GCId -> Point -> String -> XCommand
wDrawStringPS :: GCId -> Point -> PackedString -> XCommand
wFillArc :: GCId -> Rect -> Int -> Int -> XCommand
wFillCircle :: GCId -> Point -> Int -> XCommand
wFillPolygon :: GCId -> Shape -> CoordMode -> [Point] -> XCommand
wFillRectangle :: GCId -> Rect -> XCommand
white :: Pixel
xcoord :: Point -> Int
xyBitmap :: ImageFormat
xyPixmap :: ImageFormat
ycoord :: Point -> Int
zPixmap :: ImageFormat


Types

data Direction = ...
type TEvent = (Path, XEvent)
type TCommand = (Path, XCommand)
type Fa a b c d = SP (Message a c) (Message b d)
type FEvent a = Message TEvent a
type KEvent a = Message XEvent a
type FCommand a = Message TCommand a
type KCommand a = Message XCommand a
type Fudget a b = F a b
type FSP a b = SP (FEvent a) (FCommand b)
type KSP a b = SP (KEvent a) (KCommand b)
data F a b = ...
data K a b = ...
data SP a b
data XCommand
data XEvent
data Message a b = ...
type Path = [Direction]
data PopupMsg a = ...
data InputMsg a = ...
aHigh :: (a -> b) -> Message c a -> Message c b
aLow :: (a -> b) -> Message a c -> Message b c
absPath :: Path -> Path -> Path
ff :: FSP a b -> F a b
here :: Path
inputButtonKey :: KeySym
inputDone :: InputMsg a -> Maybe a
inputLeaveDone :: InputMsg a -> Maybe a
inputLeaveKey :: KeySym
inputMsg :: a -> InputMsg a
isHigh :: Message a b -> Bool
isLow :: Message a b -> Bool
kk :: KSP a b -> K a b
mapInp :: (a -> b) -> InputMsg a -> InputMsg b
mapMessage :: (a -> b) -> (c -> d) -> Message a c -> Message b d
message :: (a -> b) -> (c -> b) -> Message a c -> b
moveDrawCommand :: DrawCommand -> Point -> DrawCommand
moveDrawCommands :: (Functor a) => a DrawCommand -> Point -> a DrawCommand
path :: Path -> (Direction, Path)
pushMsg :: (Functor b) => Message (b a) (b c) -> b (Message a c)
showPath :: Path -> String
stripHigh :: Message a b -> Maybe b
stripInputMsg :: InputMsg a -> a
stripLow :: Message a b -> Maybe a
subPath :: Path -> Path -> Bool
tstInp :: (a -> b) -> InputMsg a -> b
turn :: Direction -> Path -> Path
unF :: F a b -> FSP a b
unK :: K a b -> KSP a b


Utilities

data Point = ...
type Size = Point
data Line = ...
data Rect = ...
type Cont a b = (b -> a) -> a
=.> :: Point -> Point -> Bool
aboth :: (a -> b) -> (a, a) -> (b, b)
anth :: Int -> (a -> a) -> [a] -> [a]
argFlag :: [Char] -> Bool -> Bool
argKey :: [Char] -> [Char] -> [Char]
argReadKey :: (Read a, Show a) => [Char] -> a -> a
args :: [[Char]]
bgColor :: [Char]
buttonFont :: FontName
compactpath :: [[Char]] -> [[Char]]
confine :: Rect -> Rect -> Rect
defaultFont :: FontName
defaultPosition :: Maybe Point
defaultSep :: Int
diag :: Int -> Point
edgeWidth :: Int
expandTabs :: (Num a, Enum a) => a -> [Char] -> [Char]
fgColor :: [Char]
filterLeft :: [Either a b] -> [a]
filterRight :: [Either a b] -> [b]
freedom :: Rect -> Rect -> Point
fromLeft :: Either a b -> a
fromRight :: Either a b -> b
gmap :: (a -> [b] -> [b]) -> (c -> a) -> [c] -> [b]
growrect :: Rect -> Point -> Rect
inRect :: Point -> Rect -> Bool
inputBg :: [Char]
inputFg :: [Char]
isLeft :: Either a b -> Bool
isM :: Maybe a -> Bool
isRight :: Either a b -> Bool
issubset :: (Eq a) => [a] -> [a] -> Bool
joinpath :: [[Char]] -> [Char]
lL :: Int -> Int -> Int -> Int -> Line
labelFont :: FontName
lhead :: [a] -> [b] -> [b]
line2rect :: Line -> Rect
look3d :: Bool
loop :: (a -> a) -> a
lsplit :: [a] -> [b] -> ([b], [b])
ltail :: [a] -> [b] -> [b]
mapEither :: (a -> b) -> (c -> d) -> Either a c -> Either b d
mapHigh :: (a -> [b]) -> SP (Message c a) (Message c b)
mapList :: (a -> b) -> [a] -> [b]
mapLow :: (a -> [b]) -> SP (Message a c) (Message b c)
mapMaybe :: (a -> b) -> Maybe a -> Maybe b
mapPair :: (a -> b, c -> d) -> (a, c) -> (b, d)
mapfilter :: (a -> Maybe b) -> [a] -> [b]
mapstateHigh :: (a -> b -> (a, [c])) -> a -> SP (Message d b) (Message d c)
mapstateLow :: (a -> b -> (a, [c])) -> a -> SP (Message b d) (Message c d)
menuFont :: FontName
moveline :: Line -> Point -> Line
moverect :: Rect -> Point -> Rect
number :: Int -> [a] -> [(Int, a)]
oo :: (a -> b) -> (c -> d -> a) -> c -> d -> b
options :: [([Char], [Char])]
origin :: Point
pMax :: [Point] -> Point
pMin :: [Point] -> Point
pP :: Int -> Int -> Point
padd :: Point -> Point -> Point
pair :: a -> b -> (a, b)
pairwith :: (a -> b) -> a -> (a, b)
paperColor :: [Char]
part :: (a -> Bool) -> [a] -> ([a], [a])
plim :: Point -> Point -> Point -> Point
plookup :: (a -> Bool) -> [(a, b)] -> Maybe b
pmax :: Point -> Point -> Point
pmin :: Point -> Point -> Point
posrect :: Rect -> Point -> Rect
psub :: Point -> Point -> Point
rR :: Int -> Int -> Int -> Int -> Rect
rect2line :: Rect -> Line
rectMiddle :: Rect -> Point
rectpos :: Rect -> Point
rectsize :: Rect -> Size
remove :: (Eq a) => a -> [a] -> [a]
replace :: (Eq a) => (a, b) -> [(a, b)] -> [(a, b)]
rmBS :: [Char] -> [Char]
rmax :: Rect -> Rect -> Rect
rsub :: Rect -> Rect -> Point
scale :: (RealFrac a, Integral c, Integral b) => a -> b -> c
scalePoint :: (RealFrac a) => a -> Point -> Point
shadowColor :: [Char]
shineColor :: [Char]
sizerect :: Rect -> Size -> Rect
splitEitherList :: [Either a b] -> ([a], [b])
splitpath :: [Char] -> [[Char]]
stripEither :: Either a a -> a
stripLeft :: Either a b -> Maybe a
stripMaybe :: Maybe a -> a
stripMaybeDef :: a -> Maybe a -> a
stripRight :: Either a b -> Maybe b
swap :: (a, b) -> (b, a)
swapEither :: Either a b -> Either b a
unionmap :: (Eq b) => (a -> [b]) -> [a] -> [b]
version :: String
version12 :: String
wrapLine :: Int -> [a] -> [[a]]
xcoord :: Point -> Int
ycoord :: Point -> Int


Debug

ctrace :: (Show a) => [Char] -> a -> b -> b
maptrace :: (Functor b, Eq a) => String -> b a -> b a
showCommandF :: String -> F a b -> F a b
spyF :: (Show b, Show a) => F a b -> F a b
teeF :: (a -> [Char]) -> [Char] -> F a a


DefaultParams

type Customiser a = a -> a
type PF a b c = F (Either (Customiser a) b) c
type PK a b c = K (Either (Customiser a) b) c
class HasFont a where ...
class HasTitle a where ...
class HasKeys a where ...
class HasWinAttr a where ...
class HasBorderWidth a where ...
class HasBgColor a where ...
class HasFgColor a where ...
class HasMargin a where ...
class HasAlign a where ...
class HasInitSize a where ...
class HasStretchable a where ...
class HasInitText a where ...
class HasSizing a where ...
data Sizing = ...
type Alignment = Double
getpar :: (a -> Maybe b) -> [a] -> b
noPF :: PF a b c -> F b c
standard :: Customiser a


ContribFudgets

data MenuItem a = ...
type FileName = String
data RBBT = ...
data MenuBar a = ...
type MenuEntries a = [MenuEntry a]
data MenuEntry a = ...
bitmapButtonF :: [(ModState, KeySym)] -> FileName -> F BitmapReturn Click
bitmapDispBorderF :: Int -> FileName -> F BitmapReturn a
bitmapDispF :: FileName -> F BitmapReturn a
menuBarF :: (Eq a) => FontName -> MenuBar a -> F (MenuBar a) a
radioF1 :: (Eq a) => RBBT -> FontName -> [(a, String)] -> a -> F a a
radioGroupF1 :: (Eq a) => RBBT -> FontName -> [a] -> a -> (a -> String) -> F a a
staticMenuBarF :: (Eq a) => FontName -> MenuBar a -> F b a
superMenuF :: (Eq a) => Maybe Rect -> FontName -> String -> [MenuItem a] -> (a -> String) -> F String a
toggleButtonF1 :: RBBT -> String -> [(ModState, KeySym)] -> String -> F Bool Bool
toggleF1 :: RBBT -> [(ModState, KeySym)] -> F a b -> F (Either Bool a) (Either Bool b)