-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Grids defined by layout hints and implemented on top of Yahoo grids. -- -- The grid is specified by boxes, containers and hints telling how these -- boxes and containers should be laid out. The hints also include CSS -- specifications. Everything is rendered to html using Yahoo grids -- through the contextual html combinators (see yahoo grids in -- http://developer.yahoo.com/yui/grids ). The contextual html -- combinators are also implemented in this package (called CxML here). -- They allow to keep track of input context and output html parts like -- inline CSSs, JSs, etc. @package yuiGrid @version 0.1 module Text.CxML h1logo :: String -> [Char] -> CxML a vertNav :: [(String, String)] -> CxML a (^#) :: CxML a -> String -> CxML a (^.) :: CxML a -> String -> CxML a -- | create a text node. Automatically escape HTML to protect against XSS t :: String -> CxML a -- | set any attribute of HTML element (!) :: (CxML a) -> (String, String) -> (CxML a) hidden :: String -> String -> CxML a textfield :: String -> CxML a afile :: String -> CxML a -- | set style (^%) :: CxML a -> [StyleDecl] -> CxML a -- | create HTML to link to a CSS file (^^.) :: CxML a -> CssInlineDecl -> CxML a body :: CxML a div :: CxML a h1 :: CxML a tr :: CxML a td :: CxML a a :: CxML a br :: CxML a span :: CxML a font :: CxML a p :: CxML a form :: CxML a button :: CxML a table :: CxML a -- | combinator to create tags tag :: String -> CxML a title :: CxML a h2 :: CxML a h3 :: CxML a h4 :: CxML a image :: CxML a showNonCxmlStrict :: String -> CxML () -> String -- | how to declare CSS & JavaScript type CssInlineDecl = (String, [(String, String)]) -- | contextual markup - generates HTML as a function of a context of type -- a. also keep track of static CSS and JavaScript data CxML a data StyleDecl CSSRule :: [String] -> [(String, String)] -> StyleDecl CSSLink :: String -> StyleDecl (/-) :: CxML b -> [CxML b] -> CxML b concatCxML :: [CxML a] -> CxML a runCxML :: CxML a -> a -> NonCxML type NonCxML = CxML () (+++) :: CxML a -> CxML a -> CxML a noElem :: CxML a withCtx :: (a -> CxML a) -> CxML a -- | access title parts -- -- access JavaScript ( static) part -- -- access CSS ( static ) part -- -- access html (dynamic) part modCx :: (b -> a) -> CxML a -> CxML b module Text.YuiGrid class HasLayoutHints a modLayoutHints :: HasLayoutHints a => (LayoutHints -> LayoutHints) -> a -> a type GridElement a = GridNode (CxML a) data GridNode a Box :: a -> LayoutHints -> GridNode a Container :: [GridNode a] -> LayoutHints -> GridNode a gridPage :: [GridElement a] -> CxML a fromGridNode :: GridElement a -> CxML a runBox :: GridElement a -> a -> GridElement () runBoxes :: [GridElement a] -> a -> [GridElement ()] setInFstSibling :: HasLayoutHints a => a -> a resetInFstSibling :: HasLayoutHints a => a -> a addCss :: HasLayoutHints a => CssInlineDecl -> a -> a resetCss :: HasLayoutHints a => a -> a smallMarginBottomCSS :: HasLayoutHints a => a -> a giveBorderCSS :: HasLayoutHints a => a -> a inMain :: HasLayoutHints a => a -> a inHeader :: HasLayoutHints a => a -> a inFooter :: HasLayoutHints a => a -> a inLeftSidebar :: HasLayoutHints a => a -> a inRightSidebar :: HasLayoutHints a => a -> a nearTop :: HasLayoutHints a => a -> a nearBottom :: HasLayoutHints a => a -> a weight :: HasLayoutHints a => Float -> a -> a setColumns :: HasLayoutHints a => Int -> a -> a setColumnsVote :: HasLayoutHints a => Int -> a -> a resetColumns :: HasLayoutHints a => a -> a resetColumnsVote :: HasLayoutHints a => a -> a clearSides :: HasLayoutHints a => a -> a nearLeft :: HasLayoutHints a => a -> a nearRight :: HasLayoutHints a => a -> a horizWeight :: HasLayoutHints a => Float -> a -> a toBox :: a -> GridNode a fromBox :: GridNode a -> a toContainer :: [GridNode a] -> GridNode a fromContainer :: GridNode a -> [GridNode a] boxInMain :: a -> GridNode a boxInHeader :: a -> GridNode a boxInFooter :: a -> GridNode a boxInLeftSidebar :: a -> GridNode a boxInRightSidebar :: a -> GridNode a applyLayouts :: HasLayoutHints a => [a -> a] -> a -> a