X-Git-Url: https://git.danieliu.xyz/?p=ekitaihs.git;a=blobdiff_plain;f=Render.hs;fp=Render.hs;h=fc321f6c46967eeaef1ebde9880a326dcc534956;hp=0000000000000000000000000000000000000000;hb=c68579ccc2b03996eec6ac5c1526d6e5d20c3c78;hpb=b01133aa41dd617c27be81eabe33f90b69cbf618 diff --git a/Render.hs b/Render.hs new file mode 100644 index 0000000..fc321f6 --- /dev/null +++ b/Render.hs @@ -0,0 +1,37 @@ +module Render ( buildInitialState, ekitaiApp ) where + +import Brick.AttrMap +import Brick.Main +import Brick.Types +import Brick.Widgets.Core +import Graphics.Vty.Input.Events + +type ResourceName = String + +data EkitaiState = + EkitaiState deriving (Show) + +ekitaiApp :: App EkitaiState e ResourceName +ekitaiApp = App + { appDraw = drawEkitai + , appChooseCursor = showFirstCursor + , appHandleEvent = handleEkitaiEvent + , appStartEvent = pure + , appAttrMap = const $ attrMap mempty [] + } + +buildInitialState :: IO EkitaiState +buildInitialState = pure EkitaiState + +drawEkitai :: EkitaiState -> [Widget ResourceName] +drawEkitai state = [] + +handleEkitaiEvent :: EkitaiState -> BrickEvent n e -> EventM n (Next EkitaiState) +handleEkitaiEvent s e = + case e of + VtyEvent vtye -> + case vtye of + EvKey (KChar 'q') [] -> halt s + _ -> continue s + _ -> continue s +