LambdaHack-0.11.0.1: A game engine library for tactical squad ASCII roguelike dungeon crawlers

Safe Haskell | None
Language | Haskell2010

Game.LambdaHack.Client.UI.KeyBindings

Description

Verifying, aggregating and displaying binding of keys to commands.

Synopsis

- keyHelp :: CCUI -> FontSetup -> [(Text, OKX)]
- okxsN :: InputContent -> DisplayFont -> DisplayFont -> Int -> (HumanCmd -> Bool) -> Bool -> CmdCategory -> ([Text], [Text], [Text]) -> ([Text], [Text]) -> OKX

# Documentation

keyHelp :: CCUI -> FontSetup -> [(Text, OKX)] Source #

Produce a set of help/menu screens from the key bindings.

When the intro screen mentions KP_5, this really is KP_Begin, but since that is harder to understand we assume a different, non-default state of NumLock in the help text than in the code that handles keys.

okxsN :: InputContent -> DisplayFont -> DisplayFont -> Int -> (HumanCmd -> Bool) -> Bool -> CmdCategory -> ([Text], [Text], [Text]) -> ([Text], [Text]) -> OKX Source #

Turn the specified portion of bindings into a menu.

The length of the button may be wrong if the two supplied fonts have very different widths.