{-# OPTIONS -Wall #-}
module DataTreeView.CustomHandlers(
    module DataTreeView,
    CustomHandler(..), showType, showTypeOf,
    -- | The monad in which custom handlers run
    MCH,self,genericHandler,
    -- * Specialized constructors
    simpleCH,monoCH,monoPureCH,monoPureCH',poly1CH,poly2CH,
    -- ** ... for containers
    AnyData(..),container0CH,container1CH,container2CH,

    -- * Data that custom handlers must produce
    module DataTreeView.StrictTypes,
    CellData,
    -- ** Row
    Row(..),
    -- *** Construction
    newRow,
    -- *** Modification
    addToAll,addFieldName,
    -- ** Cell attributes
    CellAttr,ColorName,txt,bgcolor,bgcolor',fgcolor,fgcolor',scale,
    -- * Internal
    dataToTree
    ) where

import DataTreeView
import DataTreeView.DataToTree
import DataTreeView.Row
import Data.Monoid
import Data.Tree
import DataTreeView.StrictTypes