module Xmobar.Config.Types
(
Config (..)
, XPosition (..), Align (..), Border(..)
) where
import Xmobar.Run.Runnable (Runnable(..))
data Config =
Config { Config -> String
font :: String
, Config -> [String]
additionalFonts :: [String]
, Config -> String
wmClass :: String
, Config -> String
wmName :: String
, Config -> String
bgColor :: String
, Config -> String
fgColor :: String
, Config -> XPosition
position :: XPosition
, Config -> Int
textOffset :: Int
, Config -> [Int]
textOffsets :: [Int]
, Config -> Int
iconOffset :: Int
, Config -> Border
border :: Border
, Config -> String
borderColor :: String
, Config -> Int
borderWidth :: Int
, Config -> Int
alpha :: Int
, Config -> Bool
hideOnStart :: Bool
, Config -> Bool
allDesktops :: Bool
, Config -> Bool
overrideRedirect :: Bool
, Config -> Bool
pickBroadest :: Bool
, Config -> Bool
lowerOnStart :: Bool
, Config -> Bool
persistent :: Bool
, Config -> String
iconRoot :: FilePath
, Config -> [Runnable]
commands :: [Runnable]
, Config -> String
sepChar :: String
, Config -> String
alignSep :: String
, Config -> String
template :: String
, Config -> Bool
verbose :: Bool
} deriving (ReadPrec [Config]
ReadPrec Config
Int -> ReadS Config
ReadS [Config]
(Int -> ReadS Config)
-> ReadS [Config]
-> ReadPrec Config
-> ReadPrec [Config]
-> Read Config
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [Config]
$creadListPrec :: ReadPrec [Config]
readPrec :: ReadPrec Config
$creadPrec :: ReadPrec Config
readList :: ReadS [Config]
$creadList :: ReadS [Config]
readsPrec :: Int -> ReadS Config
$creadsPrec :: Int -> ReadS Config
Read, Int -> Config -> ShowS
[Config] -> ShowS
Config -> String
(Int -> Config -> ShowS)
-> (Config -> String) -> ([Config] -> ShowS) -> Show Config
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Config] -> ShowS
$cshowList :: [Config] -> ShowS
show :: Config -> String
$cshow :: Config -> String
showsPrec :: Int -> Config -> ShowS
$cshowsPrec :: Int -> Config -> ShowS
Show)
data XPosition = Top
| TopH Int
| TopW Align Int
| TopSize Align Int Int
| TopP Int Int
| Bottom
| BottomH Int
| BottomP Int Int
| BottomW Align Int
| BottomSize Align Int Int
| Static {XPosition -> Int
xpos, XPosition -> Int
ypos, XPosition -> Int
width, XPosition -> Int
height :: Int}
| OnScreen Int XPosition
deriving ( ReadPrec [XPosition]
ReadPrec XPosition
Int -> ReadS XPosition
ReadS [XPosition]
(Int -> ReadS XPosition)
-> ReadS [XPosition]
-> ReadPrec XPosition
-> ReadPrec [XPosition]
-> Read XPosition
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [XPosition]
$creadListPrec :: ReadPrec [XPosition]
readPrec :: ReadPrec XPosition
$creadPrec :: ReadPrec XPosition
readList :: ReadS [XPosition]
$creadList :: ReadS [XPosition]
readsPrec :: Int -> ReadS XPosition
$creadsPrec :: Int -> ReadS XPosition
Read, Int -> XPosition -> ShowS
[XPosition] -> ShowS
XPosition -> String
(Int -> XPosition -> ShowS)
-> (XPosition -> String)
-> ([XPosition] -> ShowS)
-> Show XPosition
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [XPosition] -> ShowS
$cshowList :: [XPosition] -> ShowS
show :: XPosition -> String
$cshow :: XPosition -> String
showsPrec :: Int -> XPosition -> ShowS
$cshowsPrec :: Int -> XPosition -> ShowS
Show, XPosition -> XPosition -> Bool
(XPosition -> XPosition -> Bool)
-> (XPosition -> XPosition -> Bool) -> Eq XPosition
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: XPosition -> XPosition -> Bool
$c/= :: XPosition -> XPosition -> Bool
== :: XPosition -> XPosition -> Bool
$c== :: XPosition -> XPosition -> Bool
Eq )
data Align = L | R | C deriving ( ReadPrec [Align]
ReadPrec Align
Int -> ReadS Align
ReadS [Align]
(Int -> ReadS Align)
-> ReadS [Align]
-> ReadPrec Align
-> ReadPrec [Align]
-> Read Align
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [Align]
$creadListPrec :: ReadPrec [Align]
readPrec :: ReadPrec Align
$creadPrec :: ReadPrec Align
readList :: ReadS [Align]
$creadList :: ReadS [Align]
readsPrec :: Int -> ReadS Align
$creadsPrec :: Int -> ReadS Align
Read, Int -> Align -> ShowS
[Align] -> ShowS
Align -> String
(Int -> Align -> ShowS)
-> (Align -> String) -> ([Align] -> ShowS) -> Show Align
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Align] -> ShowS
$cshowList :: [Align] -> ShowS
show :: Align -> String
$cshow :: Align -> String
showsPrec :: Int -> Align -> ShowS
$cshowsPrec :: Int -> Align -> ShowS
Show, Align -> Align -> Bool
(Align -> Align -> Bool) -> (Align -> Align -> Bool) -> Eq Align
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Align -> Align -> Bool
$c/= :: Align -> Align -> Bool
== :: Align -> Align -> Bool
$c== :: Align -> Align -> Bool
Eq )
data Border = NoBorder
| TopB
| BottomB
| FullB
| TopBM Int
| BottomBM Int
| FullBM Int
deriving ( ReadPrec [Border]
ReadPrec Border
Int -> ReadS Border
ReadS [Border]
(Int -> ReadS Border)
-> ReadS [Border]
-> ReadPrec Border
-> ReadPrec [Border]
-> Read Border
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [Border]
$creadListPrec :: ReadPrec [Border]
readPrec :: ReadPrec Border
$creadPrec :: ReadPrec Border
readList :: ReadS [Border]
$creadList :: ReadS [Border]
readsPrec :: Int -> ReadS Border
$creadsPrec :: Int -> ReadS Border
Read, Int -> Border -> ShowS
[Border] -> ShowS
Border -> String
(Int -> Border -> ShowS)
-> (Border -> String) -> ([Border] -> ShowS) -> Show Border
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Border] -> ShowS
$cshowList :: [Border] -> ShowS
show :: Border -> String
$cshow :: Border -> String
showsPrec :: Int -> Border -> ShowS
$cshowsPrec :: Int -> Border -> ShowS
Show, Border -> Border -> Bool
(Border -> Border -> Bool)
-> (Border -> Border -> Bool) -> Eq Border
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Border -> Border -> Bool
$c/= :: Border -> Border -> Bool
== :: Border -> Border -> Bool
$c== :: Border -> Border -> Bool
Eq )