netease-fm-1.2.2: exe/UI/Extra.hs
{-# LANGUAGE OverloadedStrings #-}
module UI.Extra (
defaultAttributeMap
, mkFocused, mkUnfocused
, mkYellow
, mkCyan
, mkWhite
, mkRed
, mkGreen
, separator
) where
import Brick.AttrMap
import Brick.Widgets.Core
import Brick.Types
import Data.Default.Class
import qualified Graphics.Vty as V
mkFocused :: String -> String
mkFocused = (++) "~> "
mkUnfocused :: String -> String
mkUnfocused = (++) " "
mkYellow :: Widget -> Widget
mkYellow = withAttr "yellow"
mkCyan :: Widget -> Widget
mkCyan = withAttr "cyan"
mkWhite :: Widget -> Widget
mkWhite = withAttr "white"
mkRed :: Widget -> Widget
mkRed = withAttr "red"
mkGreen :: Widget -> Widget
mkGreen = withAttr "green"
defaultAttributeMap :: AttrMap
defaultAttributeMap = attrMap def $ map comb [ ("yellow", V.yellow)
, ("cyan", V.cyan)
, ("white", V.white)
, ("red", V.red)
, ("green", V.green)
]
where comb (t, c) = (t, V.defAttr `V.withForeColor` c)
separator :: Widget
separator = str " "