about summary refs log tree commit diff
path: root/src/Xanthous/App.hs
diff options
context:
space:
mode:
authorGriffin Smith <root@gws.fyi>2019-08-25T17·28-0400
committerGriffin Smith <root@gws.fyi>2019-08-25T17·28-0400
commitd3f3890dc5408581eb6181125c871d1cf2c0e18f (patch)
treeed6d9e396e6c732b1bce27ea6962ce408b59f218 /src/Xanthous/App.hs
parentfb0d1b3e66251aa56a3df1d05fd4b82b33380a31 (diff)
An @-sign in a box, in haskell
Initial commit of a Haskell version of Xanthous, written using Brick and
built with Nix.

This is so much nicer and so much easier
Diffstat (limited to 'src/Xanthous/App.hs')
-rw-r--r--src/Xanthous/App.hs21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/Xanthous/App.hs b/src/Xanthous/App.hs
new file mode 100644
index 000000000000..5c0383c38e19
--- /dev/null
+++ b/src/Xanthous/App.hs
@@ -0,0 +1,21 @@
+module Xanthous.App (makeApp) where
+
+import Xanthous.Prelude
+import Brick hiding (App)
+import qualified Brick
+import Graphics.Vty.Attributes (defAttr)
+
+import Xanthous.Game
+import Xanthous.Game.Draw (drawGame)
+import Xanthous.Resource (Name)
+
+type App = Brick.App GameState () Name
+
+makeApp :: IO App
+makeApp = pure $ Brick.App
+  { appDraw = drawGame
+  , appChooseCursor = const headMay
+  , appHandleEvent = resizeOrQuit
+  , appStartEvent = pure
+  , appAttrMap = const $ attrMap defAttr []
+  }