tart-0.1: programs/Events/Common.hs
module Events.Common
( handleCommonEvent
)
where
import Brick
import qualified Graphics.Vty as V
import Types
import State
handleCommonEvent :: AppState -> BrickEvent Name e -> EventM Name (Maybe AppState)
handleCommonEvent s (VtyEvent (V.EvKey (V.KChar 't') [])) = do
if currentMode s == ToolSelect
then return $ Just $ popMode s
else return $ Just $ beginToolSelect s
handleCommonEvent s (VtyEvent (V.EvKey (V.KChar 'f') [])) = do
if currentMode s == FgPaletteEntrySelect
then return $ Just $ popMode s
else return $ Just $ beginFgPaletteSelect s
handleCommonEvent s (VtyEvent (V.EvKey (V.KChar 'b') [])) = do
if currentMode s == BgPaletteEntrySelect
then return $ Just $ popMode s
else return $ Just $ beginBgPaletteSelect s
handleCommonEvent _ _ = return Nothing