diff options
| author | Akshay Nair <phenax5@gmail.com> | 2024-12-20 20:45:11 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2024-12-20 20:45:11 +0530 |
| commit | 69f9c8ac053de7793c31c87572c9e044ae8369ee (patch) | |
| tree | e4d017be238d1064c274a33a55550fccc968d21b /src/Chelleport/AppShell.hs | |
| parent | 496c7d048df6a9a3650c0a0b996888decb4ea9d1 (diff) | |
| download | chelleport-69f9c8ac053de7793c31c87572c9e044ae8369ee.tar.gz chelleport-69f9c8ac053de7793c31c87572c9e044ae8369ee.zip | |
Minor refactor
Diffstat (limited to 'src/Chelleport/AppShell.hs')
| -rw-r--r-- | src/Chelleport/AppShell.hs | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/Chelleport/AppShell.hs b/src/Chelleport/AppShell.hs index e8cd3ab..28007f7 100644 --- a/src/Chelleport/AppShell.hs +++ b/src/Chelleport/AppShell.hs @@ -1,4 +1,4 @@ -module Chelleport.AppShell where +module Chelleport.AppShell (setupAppShell, MonadAppShell (..)) where import Chelleport.Draw (colorBackground) import Chelleport.Types @@ -26,6 +26,14 @@ instance (MonadIO m) => MonadAppShell (AppM m) where X11.closeDisplay $ ctxX11Display ctx exitSuccess +type Update state appAction = state -> appAction -> IO (state, Maybe appAction) + +type EventHandler state appAction = state -> SDL.Event -> Maybe appAction + +type View state = state -> IO () + +type Initializer state = IO state + setupAppShell :: DrawContext -> Initializer state -> |
