ribosome-0.3.0.0: lib/Ribosome/Menu/Data/MenuEvent.hs
module Ribosome.Menu.Data.MenuEvent where
import qualified Text.Show
import Ribosome.Menu.Data.MenuItem (MenuItem)
import Ribosome.Menu.Prompt.Data.Prompt (Prompt)
data QuitReason m a =
Aborted
|
PromptError Text
|
NoOutput
|
Return a
|
Execute (m a)
instance Show (QuitReason m a) where
show Aborted =
"Aborted"
show (PromptError err) =
"PromptError(" <> toString err <> ")"
show NoOutput =
"NoOutput"
show (Return _) =
"Return"
show (Execute _) =
"Execute"
data MenuEvent m a =
Init Prompt
|
PromptChange Text Prompt
|
Mapping Text Prompt
|
NewItems MenuItem
|
Quit (QuitReason m a)
deriving Show