HelloWorldDemo: use explicit imports (and improve others)

This commit is contained in:
Jonathan Daugherty 2015-07-10 13:15:30 -07:00
parent 0be4379b6c
commit 69472322c2
2 changed files with 12 additions and 23 deletions

View File

@ -6,17 +6,9 @@ import Data.Monoid
import qualified Data.Text as T import qualified Data.Text as T
import qualified Graphics.Vty as V import qualified Graphics.Vty as V
import Brick.Main import qualified Brick.Main as M
( App(..)
, simpleMain
)
import Brick.Util (fg, bg, on) import Brick.Util (fg, bg, on)
import Brick.AttrMap import qualified Brick.AttrMap as A
( AttrMap
, AttrName
, attrMap
, applyAttrMappings
)
import Brick.Widgets.Core import Brick.Widgets.Core
( Widget ( Widget
, (<=>) , (<=>)
@ -28,10 +20,7 @@ import Brick.Widgets.Core
, withBorderStyle , withBorderStyle
, txt , txt
) )
import Brick.Widgets.Center import qualified Brick.Widgets.Center as C
( vCenter
, center
)
import qualified Brick.Widgets.Border as B import qualified Brick.Widgets.Border as B
import qualified Brick.Widgets.Border.Style as BS import qualified Brick.Widgets.Border.Style as BS
@ -68,10 +57,10 @@ mkBorderDemo (styleName, sty) =
withBorderStyle sty $ withBorderStyle sty $
B.borderWithLabel "label" $ B.borderWithLabel "label" $
vLimit 5 $ vLimit 5 $
vCenter $ C.vCenter $
txt $ " " <> styleName <> " style " txt $ " " <> styleName <> " style "
borderMappings :: [(AttrName, V.Attr)] borderMappings :: [(A.AttrName, V.Attr)]
borderMappings = borderMappings =
[ (B.borderAttr, V.yellow `on` V.black) [ (B.borderAttr, V.yellow `on` V.black)
, (B.vBorderAttr, V.green `on` V.red) , (B.vBorderAttr, V.green `on` V.red)
@ -85,11 +74,11 @@ borderMappings =
colorDemo :: Widget colorDemo :: Widget
colorDemo = colorDemo =
updateAttrMap (applyAttrMappings borderMappings) $ updateAttrMap (A.applyAttrMappings borderMappings) $
B.borderWithLabel "title" $ B.borderWithLabel "title" $
hLimit 20 $ hLimit 20 $
vLimit 5 $ vLimit 5 $
center $ C.center $
"colors!" "colors!"
ui :: Widget ui :: Widget
@ -98,9 +87,9 @@ ui =
<=> B.hBorder <=> B.hBorder
<=> colorDemo <=> colorDemo
<=> B.hBorderWithLabel "horizontal border label" <=> B.hBorderWithLabel "horizontal border label"
<=> (center "Left of vertical border" <=> (C.center "Left of vertical border"
<+> B.vBorder <+> B.vBorder
<+> center "Right of vertical border") <+> C.center "Right of vertical border")
main :: IO () main :: IO ()
main = simpleMain ui main = M.simpleMain ui

View File

@ -1,8 +1,8 @@
{-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE OverloadedStrings #-}
module Main where module Main where
import Brick.Main import Brick.Main (simpleMain)
import Brick.Widgets.Core import Brick.Widgets.Core (Widget)
ui :: Widget ui :: Widget
ui = "Hello, world!" ui = "Hello, world!"