packages feed

alto-0: src/Alto/Example.hs

{-# Language OverloadedStrings #-}
module Alto.Example where

import Alto.Compile
import Alto.Menu

exampleMenu :: IO MenuSystem
exampleMenu = compileRoot "Example Menu" $ do
  de <- menu $ ent "Dead end!"
  menu $ do
    ent "This is like a header"
    ent $ "Sub Menu" |-> de
--    ent "A directly defined submenu" $ do
--      ent "This is an entry in a directly defined submenu."
    -- A sometimes hidden menu that
    hideIt <- uniqueTag "Hide it" -- Makes sure the tag isn't used by something else
    ent $ "Hide me!" &- hideIt |-+ hideIt
    ent $ "Unhide it" &+ hideIt |-- hideIt
    ent "Final entry"