class HasFontSpec xxx where setFontSpec :: FontSpec -> Customiser xxx getFontSpec :: xxx -> FontSpec getFontSpecMaybe :: xxx -> Maybe FontSpec instance HasFontSpec EditorF instance HasFontSpec TextF instance HasFontSpec StringF instance HasFontSpec RadioGroupF instance HasFontSpec ToggleButtonF instance HasFontSpec (DisplayF a) instance HasFontSpec (ButtonF a) instance HasFontSpec (GraphicsF a) setFont :: (Show a, FontGen a, HasFontSpec xxx) => a -> Customiser xxx class HasBgColorSpec xxx where setBgColorSpec :: ColorSpec -> Customiser xxx getBgColorSpec :: xxx -> ColorSpec getBgColorSpecMaybe :: xxx -> Maybe ColorSpec instance HasBgColorSpec TextF instance HasBgColorSpec StringF instance HasBgColorSpec (DisplayF a) instance HasBgColorSpec (ButtonF a) instance HasBgColorSpec (GraphicsF a) class HasFgColorSpec xxx where setFgColorSpec :: ColorSpec -> Customiser xxx getFgColorSpec :: xxx -> ColorSpec getFgColorSpecMaybe :: xxx -> Maybe ColorSpec instance HasFgColorSpec TextF instance HasFgColorSpec StringF instance HasFgColorSpec (DisplayF a) instance HasFgColorSpec (ButtonF a) instance HasFgColorSpec (GraphicsF a) setBgColor :: (Show a, ColorGen a, HasBgColorSpec xxx) => a -> Customiser xxx setFgColor :: (Show a, ColorGen a, HasFgColorSpec xxx) => a -> Customiser xxx class HasKeys xxx where setKeys :: [(ModState, KeySym)] -> Customiser xxx getKeys :: xxx -> [(ModState, KeySym)] getKeysMaybe :: xxx -> Maybe [(ModState, KeySym)] instance HasKeys ToggleButtonF instance HasKeys (ButtonF a) class HasBorderWidth xxx where setBorderWidth :: Int -> Customiser xxx getBorderWidth :: xxx -> Int getBorderWidthMaybe :: xxx -> Maybe Int instance HasBorderWidth TextF instance HasBorderWidth StringF instance HasBorderWidth (DisplayF a) instance HasBorderWidth (GraphicsF a) class HasMargin xxx where setMargin :: Int -> Customiser xxx getMargin :: xxx -> Int getMarginMaybe :: xxx -> Maybe Int instance HasMargin TextF instance HasMargin (DisplayF a) instance HasMargin (ButtonF a) instance HasMargin ShellF class HasAlign xxx where setAlign :: Alignment -> Customiser xxx getAlign :: xxx -> Alignment getAlignMaybe :: xxx -> Maybe Alignment instance HasAlign TextF instance HasAlign (DisplayF a) instance HasAlign (ButtonF a) class HasInitDisp xxx where setInitDisp :: a -> Customiser (xxx a) getInitDispMaybe :: xxx a -> Maybe a getInitDisp :: xxx a -> a instance HasInitDisp DisplayF instance HasInitDisp GraphicsF class HasInitSize xxx where setInitSize :: a -> Customiser (xxx a) getInitSizeMaybe :: xxx a -> Maybe a getInitSize :: xxx a -> a instance HasInitSize DisplayF instance HasInitSize GraphicsF class HasStretchable xxx where setStretchable :: (Bool, Bool) -> Customiser xxx getStretchable :: xxx -> (Bool, Bool) getStretchableMaybe :: xxx -> Maybe (Bool, Bool) instance HasStretchable TextF instance HasStretchable (DisplayF a) instance HasStretchable (GraphicsF a) class HasSizing xxx where setSizing :: Sizing -> Customiser xxx getSizing :: xxx -> Sizing getSizingMaybe :: xxx -> Maybe Sizing instance HasSizing TextF instance HasSizing StringF instance HasSizing (DisplayF a) instance HasSizing (GraphicsF a) instance HasSizing ShellF class HasWinAttr xxx where setWinAttr :: [WindowAttributes] -> Customiser xxx getWinAttr :: xxx -> [WindowAttributes] getWinAttrMaybe :: xxx -> Maybe [WindowAttributes] instance HasWinAttr ShellF
Classes used for parameters with default values.