1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
{-# LANGUAGE DeriveGeneric #-}
-- | UI client options specified in the config file.
module Game.LambdaHack.Client.UI.UIOptions
( UIOptions(..)
) where
import Prelude ()
import Game.LambdaHack.Core.Prelude
import Control.DeepSeq
import Data.Binary
import GHC.Generics (Generic)
import Game.LambdaHack.Client.UI.HumanCmd
import qualified Game.LambdaHack.Client.UI.Key as K
import Game.LambdaHack.Common.ClientOptions (FullscreenMode)
import Game.LambdaHack.Common.Misc
import qualified Game.LambdaHack.Definition.Color as Color
import Game.LambdaHack.Definition.Defs
-- | Options that affect the UI of the client, specified in the config file.
-- More documentation is in the default config file.
data UIOptions = UIOptions
{ uCommands :: [(K.KM, CmdTriple)]
, uHeroNames :: [(Int, (Text, Text))]
, uVi :: Bool
, uLeftHand :: Bool
, uChosenFontset :: Text
, uAllFontsScale :: Double
, uFullscreenMode :: FullscreenMode
, uhpWarningPercent :: Int
, uMsgWrapColumn :: X
, uHistoryMax :: Int
, uMaxFps :: Double
, uNoAnim :: Bool
, uOverrideCmdline :: [String]
, uFonts :: [(Text, FontDefinition)]
, uFontsets :: [(Text, FontSet)]
, uMessageColors :: [(String, Color.Color)]
}
deriving (Show, Generic)
instance NFData UIOptions
instance Binary UIOptions
|